aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorDominik Vogt <vogt@linux.vnet.ibm.com>2016-08-23 09:09:45 +0000
committerAndreas Krebbel <krebbel@gcc.gnu.org>2016-08-23 09:09:45 +0000
commit7ab4f354570d0961c6be259ebe704f6f4563bb67 (patch)
treed403943a19fb4255c9be1a564e7726fa27f8314a /gcc
parentdeb9351fafe1032ced16f9608068f65930e06841 (diff)
downloadgcc-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/ChangeLog5
-rw-r--r--gcc/testsuite/gcc.target/s390/zvector/vec-genmask-1.c20
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 } } */