re PR testsuite/29056 (gcc.target/powerpc/ppc-negeq0-1.c fails on powerpc64)
authorJoseph Myers <joseph@codesourcery.com>
Thu, 10 Jul 2008 22:00:53 +0000 (23:00 +0100)
committerJoseph Myers <jsm28@gcc.gnu.org>
Thu, 10 Jul 2008 22:00:53 +0000 (23:00 +0100)
PR middle-end/29056
* gcc.target/powerpc/ppc-negeq0-1.c: Use long instead of int.
Adjust shift and scan-assembler-not pattern to allow for 64-bit
case.

From-SVN: r137704

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/ppc-negeq0-1.c

index e4ac8e7026a6e0c00e51c1deeaf4ce2db08ddfd9..0b83fa5c37fecf2a416f91f930fcab83491d7019 100644 (file)
@@ -1,3 +1,10 @@
+2008-07-10  Joseph Myers  <joseph@codesourcery.com>
+
+       PR middle-end/29056
+       * gcc.target/powerpc/ppc-negeq0-1.c: Use long instead of int.
+       Adjust shift and scan-assembler-not pattern to allow for 64-bit
+       case.
+
 2008-07-10  Jakub Jelinek  <jakub@redhat.com>
 
        PR middle-end/36790
index 37d10bc5b682f94a14f374e3bb2b4e93ab97711e..0386ecba7ca9d930c0998fc3607d8c8420e0b554 100644 (file)
@@ -1,15 +1,15 @@
 /* { dg-do compile } */
 /* { dg-options "-O2" } */
 
-int foo(int x)
+long foo(long x)
 {
   return -(x == 0);
 }
 
-int bar(int x)
+long bar(long x)
 {
-  int t = __builtin_clz(x);
-  return -(t>>5);
+  long t = __builtin_clzl(x);
+  return -(t>>(sizeof(long) == 8 ? 6 : 5));
 }
 
-/* { dg-final { scan-assembler-not "cntlzw" } } */
+/* { dg-final { scan-assembler-not "cntlz" } } */