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
This commit is contained in:
Segher Boessenkool 2015-11-11 15:21:25 +01:00 committed by Segher Boessenkool
parent 69f293c908
commit 0bf5130af0
2 changed files with 13 additions and 4 deletions

View 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.

View 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 } } */