20020720-1.x: Skip this test on several targets known to fail.
authorRoger Sayle <roger@eyesopen.com>
Fri, 26 Jul 2002 02:38:42 +0000 (02:38 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Fri, 26 Jul 2002 02:38:42 +0000 (02:38 +0000)
* gcc.c-torture/execute/20020720-1.x: Skip this test on
several targets known to fail.

From-SVN: r55769

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/execute/20020720-1.x [new file with mode: 0644]

index 991d5e1349b7428b2caf0405082bdabdf429730b..ea6ed3934201c99a57e11acb34ad99f7e7ab6f15 100644 (file)
@@ -1,3 +1,8 @@
+2002-07-25  Roger Sayle  <roger@eyesopen.com>
+
+       * gcc.c-torture/execute/20020720-1.x: Skip this test on
+       several targets known to fail.
+
 2002-07-25  Richard Sandiford  <rsandifo@redhat.com>
 
        * gcc.dg/mips-args-[123].c: New tests.
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 (file)
index 0000000..6534217
--- /dev/null
@@ -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