S/390: Improve result verification in test case vec-genmask-1.c.
authorDominik Vogt <vogt@linux.vnet.ibm.com>
Tue, 23 Aug 2016 09:09:45 +0000 (09:09 +0000)
committerAndreas Krebbel <krebbel@gcc.gnu.org>
Tue, 23 Aug 2016 09:09:45 +0000 (09:09 +0000)
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

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/s390/zvector/vec-genmask-1.c

index c02a4b821e3de54c255e7d83aed4d4130c62aceb..f4ab810ae8dfcfcb61ffeaf16a6b78ba72ea33a8 100644 (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.
index 745c1ed6eb454679e028a7f11597be171bf20b33..0e57b8dbc0533bea7f61c43758a44a1a6a712086 100644 (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 } } */