on FreeBSD/i386.
* gcc.c-torture/execute/ieee/rbug.x: Remove all XFAIL markers for
FreeBSD.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48548
138bc75d-0d04-0410-961f-
82ee72b054a4
* 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.
+#if defined(__i386__) && defined(__FreeBSD__)
+#include <ieeefp.h>
+#endif
+
double d (unsigned long long k)
{
double x;
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;
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