diff options
author | Loren J. Rittle <ljrittle@acm.org> | 2002-01-04 23:13:54 +0000 |
---|---|---|
committer | Loren J. Rittle <ljrittle@gcc.gnu.org> | 2002-01-04 23:13:54 +0000 |
commit | 284343370e58109b83b5218278b33054a6ece706 (patch) | |
tree | 6568c333f4e5fce0be46e8fd99bbc7cae8e746c8 /gcc | |
parent | 3693730eedde509215749415727cd3a7d68b1743 (diff) | |
download | gcc-284343370e58109b83b5218278b33054a6ece706.zip gcc-284343370e58109b83b5218278b33054a6ece706.tar.gz gcc-284343370e58109b83b5218278b33054a6ece706.tar.bz2 |
rbug.c: Force FP to extended-precision on FreeBSD/i386.
* gcc.c-torture/execute/ieee/rbug.c: Force FP to extended-precision
on FreeBSD/i386.
* gcc.c-torture/execute/ieee/rbug.x: Remove all XFAIL markers for
FreeBSD.
From-SVN: r48548
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c | 10 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/ieee/rbug.x | 6 |
3 files changed, 15 insertions, 6 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index e5b5bfa..a29db1f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -4,6 +4,11 @@ * g++.old-deja/g++.abi/align.C: Likewise. * g++.old-deja/g++.abi/bitfields.C: Likewise. + * gcc.c-torture/execute/ieee/rbug.c: Force FP to extended-precision + on FreeBSD/i386. + * gcc.c-torture/execute/ieee/rbug.x: Remove all XFAIL markers for + FreeBSD. + 2002-01-04 Jakub Jelinek <jakub@redhat.com> * gcc.dg/20020104-1.c: New test. diff --git a/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c b/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c index 68cc8f0..ce13d7e 100644 --- a/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c +++ b/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.c @@ -1,3 +1,7 @@ +#if defined(__i386__) && defined(__FreeBSD__) +#include <ieeefp.h> +#endif + double d (unsigned long long k) { double x; @@ -19,6 +23,12 @@ main () unsigned long long int k; double x; +#if defined(__i386__) && defined(__FreeBSD__) + /* This test case assumes extended-precision, but FreeBSD defaults to + double-precision. Make it so. */ + fpsetprec (FP_PE); +#endif + if (sizeof (double) >= 8) { k = 0x8693ba6d7d220401ULL; diff --git a/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.x b/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.x index ee879ae..c230c30 100644 --- a/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.x +++ b/gcc/testsuite/gcc.c-torture/execute/ieee/rbug.x @@ -3,10 +3,4 @@ if { [istarget "d10v-*-*"] && ! [string-match "*-mdouble64*" $CFLAGS] } { set torture_execute_xfail "d10v-*-*" } - -# freebsd sets up the fpu with a different precision control which causes -# this test to "fail". -if { [istarget "i?86-*-freebsd*\[12345\]\.*"] } { - set torture_execute_xfail "i?86-*-freebsd*" -} return 0 |