blob: 6d32ecbffceb1647ecc6ae38dcd6e6e25222ed16 [file] [log] [blame]
Chris Lattner3b245592002-12-25 05:14:29 +00001
Chris Lattner48664e72002-12-28 20:00:47 +00002double %test(double* %DP, double %Arg) {
Chris Lattner3b245592002-12-25 05:14:29 +00003 %D = load double* %DP
4 %V = add double %D, 1.0
5 %W = sub double %V, %V
6 %X = mul double %W, %W
7 %Y = div double %X, %X
8 %Z = rem double %Y, %Y
Chris Lattner6442a3e2003-01-13 00:56:54 +00009 %Z = div double %Z, %W
Chris Lattner48664e72002-12-28 20:00:47 +000010 %Q = add double %Z, %Arg
Chris Lattner6442a3e2003-01-13 00:56:54 +000011 %R = cast double %Q to double
12 store double %R, double* %DP
Chris Lattner3b245592002-12-25 05:14:29 +000013 ret double %Z
14}
15
16int %main() {
17 %X = alloca double
Chris Lattner6442a3e2003-01-13 00:56:54 +000018 call double %test(double* %X, double 2.0)
Chris Lattner3b245592002-12-25 05:14:29 +000019 ret int 0
20}