testsuite: fix gcc.target/powerpc ilp32 failures
authorDavid Edelsohn <dje.gcc@gmail.com>
Sat, 23 Jan 2021 00:54:24 +0000 (19:54 -0500)
committerDavid Edelsohn <dje.gcc@gmail.com>
Sat, 23 Jan 2021 00:56:14 +0000 (19:56 -0500)
The recent vec insert code generation changes were not reflected in the
expected output for ilp32 targets.  This patch updates the expected
instructions and counts.

gcc/testsuite/ChangeLog:

* gcc.target/powerpc/fold-vec-insert-char-p9.c: Adjust ilp32.
* gcc.target/powerpc/fold-vec-insert-float-p9.c: Same.
* gcc.target/powerpc/fold-vec-insert-int-p9.c: Same.
* gcc.target/powerpc/fold-vec-insert-longlong.c: Same.
* gcc.target/powerpc/fold-vec-insert-short-p9.c: Same.
* gcc.target/powerpc/pr79251.p9.c: Same.

gcc/testsuite/gcc.target/powerpc/fold-vec-insert-char-p9.c
gcc/testsuite/gcc.target/powerpc/fold-vec-insert-float-p9.c
gcc/testsuite/gcc.target/powerpc/fold-vec-insert-int-p9.c
gcc/testsuite/gcc.target/powerpc/fold-vec-insert-longlong.c
gcc/testsuite/gcc.target/powerpc/fold-vec-insert-short-p9.c
gcc/testsuite/gcc.target/powerpc/pr79251.p9.c

index 35ae420dba07263238250944b380173abb2d8afe..e8f8ba39731647b4a467c2ee8e75d350c34823ac 100644 (file)
@@ -54,9 +54,8 @@ vector unsigned char testuu_cst (unsigned char x, vector unsigned char v)
 
 /* -m32 codegen. */
 /* { dg-final { scan-assembler-times {\mrlwinm\M} 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\madd\M} 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\mstxv\M} 4 { target ilp32 } } } */
 /* { dg-final { scan-assembler-times {\mstb\M} 8 { target ilp32 } } } */
 /* { dg-final { scan-assembler-times {\mlxv\M} 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\mlvebx\M} 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\mvperm\M} 4 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mlvebx\M} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mvperm\M} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mxxperm\M} 8 { target ilp32 } } } */
index ba41330d8351037d8083d86520ee337238740719..dfca9fd04efb498659f4113c23d73867546da2c9 100644 (file)
@@ -30,5 +30,6 @@ testf_cst (float f, vector float vf)
 
 /* { dg-final { scan-assembler-times {\mstfs\M} 2 { target ilp32 } } } */
 /* { dg-final { scan-assembler-times {\mlxv\M} 2 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\mlvewx\M} 1 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\mvperm\M} 1 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mlvewx\M} 2 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mvperm\M} 2 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mxxperm\M} 2 { target ilp32 } } } */
index 01d4eee81fb37ca2fd6b5acf1f35b40980b13b9a..21f0d9a0272b9e88f3b5a056d81b70025127fc85 100644 (file)
@@ -59,5 +59,6 @@ testui2_cst(unsigned int x, vector unsigned int v)
 
 /* { dg-final { scan-assembler-times {\mstw\M} 8 { target ilp32 } } } */
 /* { dg-final { scan-assembler-times {\mlxv\M} 8 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\mlvewx\M} 4 { target ilp32 } } } */
-/* { dg-final { scan-assembler-times {\mvperm\M} 4 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mlvewx\M} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mvperm\M} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mxxperm\M} 8 { target ilp32 } } } */
index aa52efe13a6bd354e064cbe299ffcf44e7696f01..b8d5528a4e046616c68a5b35b44702225be70deb 100644 (file)
@@ -62,7 +62,7 @@ testul2_cst(unsigned long long x, vector unsigned long long v)
 
 /* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstvx\M|\mstxv\M} 0 } } */
 /* { dg-final { scan-assembler-times {\mstdx\M} 0 { target lp64 } } } */
-/* { dg-final { scan-assembler-times {\mstw\M} 8 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mvperm\M} 8 { target ilp32 } } } */
 
 /* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxv\M|\mlvx\M} 0 } } */
 
index 55778bda3a518b5666363e6a346af32f67006865..dbb43a7929a8e6f7c07cb9c70c7d922313d03d48 100644 (file)
@@ -56,6 +56,8 @@ testus2_cst(unsigned short x, vector unsigned short v)
 
 /* -m32 uses sth/lvehx as part of the sequence. */
 /* { dg-final { scan-assembler-times {\msth\M} 8 { target ilp32 }} } */
-/* { dg-final { scan-assembler-times {\mlvehx\M} 4 { target ilp32 }} } */
+/* { dg-final { scan-assembler-times {\mlvehx\M} 8 { target ilp32 }} } */
+/* { dg-final { scan-assembler-times {\mvperm\M} 8 { target ilp32 }} } */
+/* { dg-final { scan-assembler-times {\mxxperm\M} 8 { target ilp32 }} } */
 /* { dg-final { scan-assembler-times {\mlxv\M|\mlvx\M} 8 { target ilp32 }} } */
 
index ec1cb2558887b07afc34d36b9a49fcd1f48690f9..8ebeab425ffa564dfc40430c07db5bf26c720005 100644 (file)
@@ -12,7 +12,13 @@ TEST_VEC_INSERT_ALL (test)
 /* { dg-final { scan-assembler-times {\mlvsl\M} 10 } } */
 /* { dg-final { scan-assembler-times {\mlvsr\M} 10 } } */
 /* { dg-final { scan-assembler-times {\mxxperm\M} 20 } } */
-/* { dg-final { scan-assembler-times {\mxxinsertw\M} 3 } } */
-/* { dg-final { scan-assembler-times {\mvinserth\M} 2 } } */
-/* { dg-final { scan-assembler-times {\mvinsertb\M} 2 } } */
+/* { dg-final { scan-assembler-times {\mxxinsertw\M} 3 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mvinserth\M} 2 { target lp64 } } } */
+/* { dg-final { scan-assembler-times {\mvinsertb\M} 2 { target lp64 } } } */
 /* { dg-final { scan-assembler-times {\mxxpermdi\M} 3 } } */
+
+/* { dg-final { scan-assembler-times {\mrlwinm\M} 10 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mvperm\M} 7 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mlvebx\M} 2 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mlvehx\M} 2 { target ilp32 } } } */
+/* { dg-final { scan-assembler-times {\mlvewx\M} 3 { target ilp32 } } } */