Land the long talked about "type system rewrite" patch. This
[llvm/stm8.git] / test / ExecutionEngine / test-fp.ll
blobf653660fb83257b3eafa5171bfd0194dce84619c
1 ; RUN: lli %s > /dev/null
3 define double @test(double* %DP, double %Arg) {
4         %D = load double* %DP           ; <double> [#uses=1]
5         %V = fadd double %D, 1.000000e+00               ; <double> [#uses=2]
6         %W = fsub double %V, %V         ; <double> [#uses=3]
7         %X = fmul double %W, %W         ; <double> [#uses=2]
8         %Y = fdiv double %X, %X         ; <double> [#uses=2]
9         %Z = frem double %Y, %Y         ; <double> [#uses=3]
10         %Z1 = fdiv double %Z, %W                ; <double> [#uses=0]
11         %Q = fadd double %Z, %Arg               ; <double> [#uses=1]
12         %R = bitcast double %Q to double                ; <double> [#uses=1]
13         store double %R, double* %DP
14         ret double %Z
17 define i32 @main() {
18         %X = alloca double              ; <double*> [#uses=2]
19         store double 0.000000e+00, double* %X
20         call double @test( double* %X, double 2.000000e+00 )            ; <double>:1 [#uses=0]
21         ret i32 0