aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.c-torture/execute/20020720-1.x
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2002-07-26 02:38:42 +0000
committerRoger Sayle <roger@eyesopen.com>2002-07-26 02:38:42 +0000
commitec29f895c3aba5d7e68b34e9a7142bb4bddb0484 (patch)
treee693b54438b0f4f8e45a1cccc2758424bde39b66 /gcc/testsuite/gcc.c-torture/execute/20020720-1.x
parent0e5a44dac3a7e8b1baa4f6c2beb5b397c9949f34 (diff)
* gcc.c-torture/execute/20020720-1.x: Skip this test on
several targets known to fail. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@55769 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/20020720-1.x')
-rw-r--r--gcc/testsuite/gcc.c-torture/execute/20020720-1.x16
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/20020720-1.x b/gcc/testsuite/gcc.c-torture/execute/20020720-1.x
new file mode 100644
index 00000000000..6534217d7c8
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/20020720-1.x
@@ -0,0 +1,16 @@
+# The following targets fail 20020720-1.c for several reasons:
+# (1) They implement floating point instructions via software, or
+# (2) Their machine descriptions obfuscate the "abs(x) < 0.0" comparison.
+# For example, 1 insn performs abs, 1 insn loads 0.0, 1 insn sets
+# CCmode flags based upon the FP comparison, and a 4th insn makes
+# a conditional branch based upon the appropriate bits in the flags.
+# If the intermediate comparison can't be recognized, the combiner
+# is unable to optimize all four RTL instructions simultaneously.
+
+if { [istarget "powerpc-*-*"] || [istarget "rs6000-*-*"] \
+ || [istarget "mips*-*-*"] || [istarget "xtensa-*-*"] \
+ || [istarget "sh-*-*"] } {
+ return 1
+}
+
+return 0