/* { dg-do compile } */ | |
/* { dg-options "-O2" } */ | |
typedef float fp_t __attribute__((mode(SD))); | |
extern fp_t g(fp_t); | |
fp_t | |
bug(fp_t x) | |
{ | |
fp_t result; | |
int n; | |
fp_t f, f3, y, z; | |
n = 0; | |
y = 1.DF; | |
f = g(x); | |
if (f < 0.DF) | |
f = -f; | |
f3 = 2.DF; | |
z = (y + y + f / (y * y)); | |
y = (z + z) / (9.DF) + f3 / (z * z); | |
result = y; | |
return (result); | |
} |