Fix typo: intepreter->interpreter.
[oota-llvm.git] / test / ExecutionEngine / test-fp.ll
index 7e607717cfb33ebf25826e675e9450d7884982ba..2e8ecd5a740f8e99910d5b2aad8df15de9cd70a2 100644 (file)
@@ -1,17 +1,24 @@
+; RUN: llvm-as %s -f -o %t.bc
+; RUN: lli %t.bc > /dev/null
 
-double %test(double* %DP) {
-       %D = load double* %DP
-       %V = add double %D, 1.0
-       %W = sub double %V, %V
-       %X = mul double %W, %W
-       %Y = div double %X, %X
-       %Z = rem double %Y, %Y
-       store double %Z, double* %DP
+define double @test(double* %DP, double %Arg) {
+       %D = load double* %DP           ; <double> [#uses=1]
+       %V = fadd double %D, 1.000000e+00               ; <double> [#uses=2]
+       %W = fsub double %V, %V         ; <double> [#uses=3]
+       %X = fmul double %W, %W         ; <double> [#uses=2]
+       %Y = fdiv double %X, %X         ; <double> [#uses=2]
+       %Z = frem double %Y, %Y         ; <double> [#uses=3]
+       %Z1 = fdiv double %Z, %W                ; <double> [#uses=0]
+       %Q = fadd double %Z, %Arg               ; <double> [#uses=1]
+       %R = bitcast double %Q to double                ; <double> [#uses=1]
+       store double %R, double* %DP
        ret double %Z
 }
 
-int %main() { 
-  %X = alloca double
-  call double %test(double* %X)
-  ret int 0 
+define i32 @main() {
+       %X = alloca double              ; <double*> [#uses=2]
+       store double 0.000000e+00, double* %X
+       call double @test( double* %X, double 2.000000e+00 )            ; <double>:1 [#uses=0]
+       ret i32 0
 }
+