diff options
author | Dominik Vogt <vogt@linux.vnet.ibm.com> | 2016-08-23 09:09:45 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2016-08-23 09:09:45 +0000 |
commit | 7ab4f354570d0961c6be259ebe704f6f4563bb67 (patch) | |
tree | d403943a19fb4255c9be1a564e7726fa27f8314a /gcc | |
parent | deb9351fafe1032ced16f9608068f65930e06841 (diff) | |
download | gcc-7ab4f354570d0961c6be259ebe704f6f4563bb67.zip gcc-7ab4f354570d0961c6be259ebe704f6f4563bb67.tar.gz gcc-7ab4f354570d0961c6be259ebe704f6f4563bb67.tar.bz2 |
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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/s390/zvector/vec-genmask-1.c | 20 |
2 files changed, 19 insertions, 6 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index c02a4b8..f4ab810 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 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. * gcc.target/s390/md/andc-splitter-2.c: Likewise. diff --git a/gcc/testsuite/gcc.target/s390/zvector/vec-genmask-1.c b/gcc/testsuite/gcc.target/s390/zvector/vec-genmask-1.c index 745c1ed..0e57b8d 100644 --- a/gcc/testsuite/gcc.target/s390/zvector/vec-genmask-1.c +++ b/gcc/testsuite/gcc.target/s390/zvector/vec-genmask-1.c @@ -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 } } */ |