re PR target/21761 (mainline gcc causing internal compiler error.)
authorGeoffrey Keating <geoffk@apple.com>
Mon, 30 May 2005 06:10:05 +0000 (06:10 +0000)
committerGeoffrey Keating <geoffk@gcc.gnu.org>
Mon, 30 May 2005 06:10:05 +0000 (06:10 +0000)
2005-05-29  Geoffrey Keating  <geoffk@apple.com>

PR target/21761
* config/rs6000/rs6000.md: Remove stray TARGET_32BIT from
pattern involving `:P'.

Index: testsuite/ChangeLog
2005-05-29  Geoffrey Keating  <geoffk@apple.com>

PR target/21761
* gcc.c-torture/compile/pr21761.c: New.

From-SVN: r100352

gcc/ChangeLog
gcc/config/rs6000/rs6000.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/pr21761.c [new file with mode: 0644]

index 780a75f9015ab7be8d1306d18e799cbe94582d71..8a1f571f87ff8d3f3856d1e053b5c511604ec44a 100644 (file)
@@ -1,5 +1,9 @@
 2005-05-29  Geoffrey Keating  <geoffk@apple.com>
 
+       PR target/21761
+       * config/rs6000/rs6000.md: Remove stray TARGET_32BIT from
+       pattern involving `:P'.
+
        * Makefile.in (install-cpp): Depend on installdirs.
 
 2005-05-30  Kazu Hirata  <kazu@cs.umass.edu>
index 2c0b0491abeb4ddfb4186226f8340ac3fa8a0b6b..d46f97db89951314b036787c02c0b6720dd7fbec 100644 (file)
                    (const_int 0)))
    (set (match_operand:P 0 "gpc_reg_operand" "")
        (neg:P (match_dup 1)))]
-  "TARGET_32BIT && reload_completed"
+  "reload_completed"
   [(set (match_dup 0)
        (neg:P (match_dup 1)))
    (set (match_dup 2)
index 8f1d9a5f1847248eb3747e63a2c02322a9134dc0..9a431572699725e74e75f4cc6c281abf7da2abc4 100644 (file)
@@ -1,5 +1,8 @@
 2005-05-29  Geoffrey Keating  <geoffk@apple.com>
 
+       PR target/21761
+       * gcc.c-torture/compile/pr21761.c: New.
+
        * g++.old-deja/g++.eh/badalloc1.C: Make XFAIL only on darwin
        before darwin8.
 
diff --git a/gcc/testsuite/gcc.c-torture/compile/pr21761.c b/gcc/testsuite/gcc.c-torture/compile/pr21761.c
new file mode 100644 (file)
index 0000000..b9ca5c9
--- /dev/null
@@ -0,0 +1,9 @@
+void f1()
+{
+  long bit=0, exponent;
+  exponent = -exponent;
+  for (bit = 1; exponent; bit <<= 1)
+      if (exponent & bit)
+              exponent ^= bit;
+}
+