1 /* { dg-do run } */
2 /* { dg-options "-O -ffast-math -fdump-tree-optimized" } */
3
4 extern double sqrt (double);
5 extern double pow (double, double);
6 extern void abort (void);
7
8 int main ()
9 {
10 double x = -1.0;
11 if (sqrt (pow (x, 2)) != 1.0)
12 abort();
13 if (sqrt (x*x) != 1.0)
14 abort();
15 return 0;
16 }
17
18 /* { dg-final { scan-tree-dump-times "sqrt" 0 "optimized" } } */
19 /* { dg-final { scan-tree-dump-times "pow" 0 "optimized" } } */