S/390: Improve result verification in test case vec-genmask-1.c.

THe attached patch improves checking of teh results of the subtests
"a" and "f".  As they share the same "vone" instruction, the duplicate
scan-assembler-times was bogus.  Moved "f" to a separate function to
fix this.  Also double check that no extra "vgmf" instructions are
used.

gcc/testsuite/ChangeLog:

2016-08-23  Dominik Vogt  <vogt@linux.vnet.ibm.com>

	* gcc.target/s390/zvector/vec-genmask-1.c: Improve result
	verification.

From-SVN: r239686
This commit is contained in:
Dominik Vogt 2016-08-23 09:09:45 +00:00 committed by Andreas Krebbel
parent deb9351faf
commit 7ab4f35457
2 changed files with 19 additions and 6 deletions

View File

@ -1,3 +1,8 @@
2016-08-23 Dominik Vogt <vogt@linux.vnet.ibm.com>
* gcc.target/s390/zvector/vec-genmask-1.c: Improve result
verification.
2016-08-23 Dominik Vogt <vogt@linux.vnet.ibm.com>
* gcc.target/s390/md/andc-splitter-1.c: New test case.

View File

@ -14,11 +14,19 @@ foo ()
c = vec_genmasks_32 (31, 31);
d = vec_genmasks_32 (5, 5);
e = vec_genmasks_32 (31, 0);
}
int
bar ()
{
/* Needs to be in a separate function so that the vone from "a" is not reused
for "f". */
f = vec_genmasks_32 (6, 5);
}
/* { dg-final { scan-assembler-times "vone" 1 } } */
/* { dg-final { scan-assembler-times "vgmf\t%v.*,0,0" 1 } } */
/* { dg-final { scan-assembler-times "vgmf\t%v.*,31,31" 1 } } */
/* { dg-final { scan-assembler-times "vgmf\t%v.*,5,5" 1 } } */
/* { dg-final { scan-assembler-times "vgmf\t%v.*,31,0" 1 } } */
/* { dg-final { scan-assembler-times "vone" 1 } } */
/* a + f: { dg-final { scan-assembler-times "vone" 2 } } */
/* b: { dg-final { scan-assembler-times "vgmf\t%v.*,0,0" 1 } } */
/* c: { dg-final { scan-assembler-times "vgmf\t%v.*,31,31" 1 } } */
/* d: { dg-final { scan-assembler-times "vgmf\t%v.*,5,5" 1 } } */
/* e: { dg-final { scan-assembler-times "vgmf\t%v.*,31,0" 1 } } */
/* b - e: { dg-final { scan-assembler-times "vgmf" 4 } } */