summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/execute/990127-2.x
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/990127-2.x')
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/990127-2.x15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/990127-2.x b/gcc/testsuite/gcc.c-torture/execute/990127-2.x
new file mode 100644
index 000000000..56455ab88
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/990127-2.x
@@ -0,0 +1,15 @@
+# On x86 targets, two floating-point double values can't be reliably compared
+# for inequality due to excess precision of 80387 floating-point coprocessor.
+# Use -mpc64 to force 80387 floating-point precision to 64 bits. This option
+# has no effect on SSE, but it is needed in case of -m32 on x86_64 targets.
+
+if { [istarget i?86-*-linux*]
+ || [istarget i?86-*-kfreebsd*-gnu]
+ || [istarget i?86-*-knetbsd*-gnu]
+ || [istarget x86_64-*-linux*]
+ || [istarget x86_64-*-kfreebsd*-gnu]
+ || [istarget x86_64-*-knetbsd*-gnu] } {
+ set additional_flags "-mpc64"
+}
+
+return 0