aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2015-11-11 15:21:25 +0100
committerSegher Boessenkool <segher@gcc.gnu.org>2015-11-11 15:21:25 +0100
commit0bf5130af0d1c19855f244ae874180ed28f1cb3e (patch)
tree049d643d2124057b5c8aa34ce86a84653235bbe4 /gcc
parent69f293c908216d76996fe18eaf78c01f7fd782ce (diff)
downloadgcc-0bf5130af0d1c19855f244ae874180ed28f1cb3e.zip
gcc-0bf5130af0d1c19855f244ae874180ed28f1cb3e.tar.gz
gcc-0bf5130af0d1c19855f244ae874180ed28f1cb3e.tar.bz2
rs6000: Extend 20050603-3.c testcase to 64-bit
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
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.target/powerpc/20050603-3.c12
2 files changed, 13 insertions, 4 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 4637d5f..42ab86d 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -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.
diff --git a/gcc/testsuite/gcc.target/powerpc/20050603-3.c b/gcc/testsuite/gcc.target/powerpc/20050603-3.c
index 0f328e1..4017d34 100644
--- a/gcc/testsuite/gcc.target/powerpc/20050603-3.c
+++ b/gcc/testsuite/gcc.target/powerpc/20050603-3.c
@@ -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 } } */