From d84a12e2de3b034e416eba9f808be56e309bc30d Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Tue, 17 Feb 1998 14:50:10 -0700 Subject: [PATCH] New testcase for x86 XFmode problems. From-SVN: r18051 --- gcc/testsuite/gcc.dg/980211-1.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/980211-1.c diff --git a/gcc/testsuite/gcc.dg/980211-1.c b/gcc/testsuite/gcc.dg/980211-1.c new file mode 100644 index 00000000000..6332b7e7e3f --- /dev/null +++ b/gcc/testsuite/gcc.dg/980211-1.c @@ -0,0 +1,27 @@ +/* Test long double on x86. */ + +/* { dg-do run { target i?86-*-* } } */ +/* { dg-options -O2 } */ + +__inline int +__signbitl (long double __x) +{ + union { long double __l; int __i[3]; } __u = { __l: __x }; + + return (__u.__i[2] & 0x8000) != 0; +} + +void +foo (long double x, long double y) +{ + long double z = x / y; + if (__signbitl (x) && __signbitl (z)) + abort (); +} + +int main() +{ + if (sizeof (long double) > sizeof (double)) + foo (-0.0, -1.0); + return 0; +} -- 2.30.2