2017-12-05 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / c-c++-common / dfp / pr31385.c
blobfc024a3e6b829eb319ed287b85c3d79a978cc722
1 /* { dg-do compile } */
2 /* { dg-options "-O2" } */
4 typedef float fp_t __attribute__((mode(SD)));
6 extern fp_t g(fp_t);
8 fp_t
9 bug(fp_t x)
11 fp_t result;
12 int n;
13 fp_t f, f3, y, z;
15 n = 0;
16 y = 1.DF;
17 f = g(x);
19 if (f < 0.DF)
20 f = -f;
22 f3 = 2.DF;
24 z = (y + y + f / (y * y));
25 y = (z + z) / (9.DF) + f3 / (z * z);
27 result = y;
29 return (result);