rs6000: Extend 20050603-3.c testcase to 64-bit
authorSegher Boessenkool <segher@kernel.crashing.org>
Wed, 11 Nov 2015 14:21:25 +0000 (15:21 +0100)
committerSegher Boessenkool <segher@gcc.gnu.org>
Wed, 11 Nov 2015 14:21:25 +0000 (15:21 +0100)
The testcase used to fail on 64-bit, but it was disabled there.
This patch makes it run there, and beefs up the checking of the
generated code a bit.

gcc/testsuite/
* gcc.target/powerpc/20050603-3.c: Don't restrict to ilp32.  Do more
tests for the expected generated code.

From-SVN: r230167

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/20050603-3.c

index 4637d5fc6a8082600b7558f01719b6092e1c3f3d..42ab86d223bf8958005ef25f8d8a372e035fe0e3 100644 (file)
@@ -1,3 +1,8 @@
+2015-11-11  Segher Boessenkool  <segher@kernel.crashing.org>
+
+       * gcc.target/powerpc/20050603-3.c: Don't restrict to ilp32.  Do more
+       tests for the expected generated code.
+
 2015-11-11  Simon Dardis  <simon.dardis@imgtec.com>
 
        * gcc.target/mips/split-ds-sequence.c: New test.
index 0f328e1711faa0c674eb9d97072c876252a928d1..4017d34f429ab61bc6cbfee6330118aee3b8fa13 100644 (file)
@@ -1,15 +1,19 @@
-/* { dg-do compile { target { ilp32 } } } */
+/* { dg-do compile } */
 /* { dg-options "-O2" } */
-struct Q 
+struct Q
 {
   long x:20;
   long y:4;
   long z:8;
 }b;
-/* This should generate a single rl[w]imi. */
+/* This should generate a single rl[wd]imi. */
 void rotins (unsigned int x)
 {
   b.y = (x<<12) | (x>>20);
 }
 
-/* { dg-final { scan-assembler-not "inm" } } */
+/* { dg-final { scan-assembler-not {\mrlwinm} } } */
+/* { dg-final { scan-assembler-not {\mrldic} } } */
+/* { dg-final { scan-assembler-not {\mrot[lr]} } } */
+/* { dg-final { scan-assembler-not {\ms[lr][wd]} } } */
+/* { dg-final { scan-assembler-times {\mrl[wd]imi} 1 } } */