Lines Matching full:pow
1 ; Test that the pow library call simplifier works correctly.
13 ; NOTE: The readonly attribute on the pow call should be preserved
14 ; in the cases below where pow is transformed into another function call.
17 declare double @pow(double, double) nounwind readonly
19 ; Check pow(1.0, x) -> 1.0.
30 %retval = call double @pow(double 1.0, double %x)
35 ; Check pow(2.0, x) -> exp2(x).
47 %retval = call double @pow(double 2.0, double %x)
53 ; Check pow(x, 0.0) -> 1.0.
64 %retval = call double @pow(double %x, double 0.0)
69 ; Check pow(x, 0.5) -> fabs(sqrt(x)), where x != -infinity.
84 %retval = call double @pow(double %x, double 0.5)
93 ; Check pow(-infinity, 0.5) -> +infinity.
104 %retval = call double @pow(double 0xFFF0000000000000, double 0.5)
109 ; Check pow(x, 1.0) -> x.
120 %retval = call double @pow(double %x, double 1.0)
125 ; Check pow(x, 2.0) -> x*x.
137 %retval = call double @pow(double %x, double 2.0)
143 ; Check pow(x, -1.0) -> 1.0/x.
155 %retval = call double @pow(double %x, double -1.0)
161 declare double @llvm.pow.f64(double %Val, double %Power)
164 %retval = call double @llvm.pow.f64(double %x, double 0.5)
173 ; Check pow(10.0, x) -> __exp10(x) on OS X 10.9+ and iOS 7.0+.
186 %retval = call double @pow(double 10.0, double %x)
190 ; CHECK-NO-EXP10: call double @pow