diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/pr35456.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/pr35456.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/pr35456.c b/gcc/testsuite/gcc.c-torture/execute/pr35456.c new file mode 100644 index 000000000..175a0b2ab --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr35456.c @@ -0,0 +1,21 @@ +extern void abort (void); + +double +__attribute__ ((noinline)) +not_fabs (double x) +{ + return x >= 0.0 ? x : -x; +} + +int main() +{ + double x = -0.0; + double y; + + y = not_fabs (x); + + if (!__builtin_signbit (y)) + abort(); + + return 0; +} |