Hi Mike,

On 7/7/21 3:03 PM, Michael Meissner wrote:
[PATCH] Deal with prefixed loads/stores in tests, PR testsuite/100166

This patch updates the various tests in the testsuite to treat plxv
and pstxv as being vector loads/stores.  This shows up if you run the
testsuite with a compiler configured with the option: --with-cpu=power10.

I have verified that these tests now all pass when I build and test a compiler
on a power10 system using --with-cpu=power10.  I have verified that they
continue to run on power9 little endian and power8 big endian systems.

Can I check this into the master branch?

2021-07-07  Michael Meissner  <meiss...@linux.ibm.com>

gcc/testsuite/
        PR testsuite/100166
        * gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c:
Please drop the gcc/testsuite/ part from this line.
        * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c:
        * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c:
        * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c:
        * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c:
        * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c:
        * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c:
        * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-char.c:
        * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-double.c:
        * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-float.c:
        * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-int.c:
        * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-longlong.c:
        * gcc.target/powerpc/fold-vec-load-vec_vsx_ld-short.c:
        * gcc.target/powerpc/fold-vec-load-vec_xl-char.c:
        * gcc.target/powerpc/fold-vec-load-vec_xl-double.c:
        * gcc.target/powerpc/fold-vec-load-vec_xl-float.c:
        * gcc.target/powerpc/fold-vec-load-vec_xl-int.c:
        * gcc.target/powerpc/fold-vec-load-vec_xl-longlong.c:
        * gcc.target/powerpc/fold-vec-load-vec_xl-short.c:
        * gcc.target/powerpc/fold-vec-splat-floatdouble.c:
        * gcc.target/powerpc/fold-vec-splat-longlong.c:
        * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-char.c:
        * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-double.c:
        * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-float.c:
        * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-int.c:
        * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-longlong.c:
        * gcc.target/powerpc/fold-vec-store-builtin_vec_xst-short.c:
        * gcc.target/powerpc/fold-vec-store-vec_vsx_st-char.c:
        * gcc.target/powerpc/fold-vec-store-vec_vsx_st-double.c:
        * gcc.target/powerpc/fold-vec-store-vec_vsx_st-float.c:
        * gcc.target/powerpc/fold-vec-store-vec_vsx_st-int.c:
        * gcc.target/powerpc/fold-vec-store-vec_vsx_st-longlong.c:
        * gcc.target/powerpc/fold-vec-store-vec_vsx_st-short.c:
        * gcc.target/powerpc/fold-vec-store-vec_xst-char.c:
        * gcc.target/powerpc/fold-vec-store-vec_xst-double.c:
        * gcc.target/powerpc/fold-vec-store-vec_xst-float.c:
        * gcc.target/powerpc/fold-vec-store-vec_xst-int.c:
        * gcc.target/powerpc/fold-vec-store-vec_xst-longlong.c:
        * gcc.target/powerpc/fold-vec-store-vec_xst-short.c:
        * gcc.target/powerpc/lvsl-lvsr.c:
        * gcc/testsuite/gcc.target/powerpc/pr86731-fwrapv-longlong.c:
        Update insn counts to account for power10 prefixed loads and
        stores.
Also here.
---
  .../vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c       | 2 +-
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c | 2 +-
  .../powerpc/fold-vec-load-builtin_vec_xl-double.c          | 2 +-
  .../powerpc/fold-vec-load-builtin_vec_xl-float.c           | 2 +-
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c  | 2 +-
  .../powerpc/fold-vec-load-builtin_vec_xl-longlong.c        | 2 +-
  .../powerpc/fold-vec-load-builtin_vec_xl-short.c           | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_vsx_ld-char.c     | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_vsx_ld-double.c   | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_vsx_ld-float.c    | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_vsx_ld-int.c      | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_vsx_ld-longlong.c | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_vsx_ld-short.c    | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_xl-char.c         | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_xl-double.c       | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_xl-float.c        | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_xl-int.c          | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_xl-longlong.c     | 2 +-
  .../gcc.target/powerpc/fold-vec-load-vec_xl-short.c        | 2 +-
  .../gcc.target/powerpc/fold-vec-splat-floatdouble.c        | 7 ++++---
  gcc/testsuite/gcc.target/powerpc/fold-vec-splat-longlong.c | 2 +-
  .../powerpc/fold-vec-store-builtin_vec_xst-char.c          | 2 +-
  .../powerpc/fold-vec-store-builtin_vec_xst-double.c        | 2 +-
  .../powerpc/fold-vec-store-builtin_vec_xst-float.c         | 2 +-
  .../powerpc/fold-vec-store-builtin_vec_xst-int.c           | 2 +-
  .../powerpc/fold-vec-store-builtin_vec_xst-longlong.c      | 2 +-
  .../powerpc/fold-vec-store-builtin_vec_xst-short.c         | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_vsx_st-char.c    | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_vsx_st-double.c  | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_vsx_st-float.c   | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_vsx_st-int.c     | 2 +-
  .../powerpc/fold-vec-store-vec_vsx_st-longlong.c           | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_vsx_st-short.c   | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_xst-char.c       | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_xst-double.c     | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_xst-float.c      | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_xst-int.c        | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_xst-longlong.c   | 2 +-
  .../gcc.target/powerpc/fold-vec-store-vec_xst-short.c      | 2 +-
  gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c               | 2 +-
  gcc/testsuite/gcc.target/powerpc/pr86731-fwrapv-longlong.c | 2 +-
  41 files changed, 44 insertions(+), 43 deletions(-)

diff --git 
a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c 
b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c
index 246f38fa6d1..d9f173b521e 100644
--- a/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c
+++ b/gcc/testsuite/gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c
@@ -25,6 +25,6 @@ main1 (void)
     with no word loads (lw, lwu, lwz, lwzu, or their indexed forms)
     or word stores (stw, stwu, stwx, stwux, or their indexed forms).  */
-/* { dg-final { scan-assembler "\t(lvx|lxv|lvsr|stxv)" } } */
+/* { dg-final { scan-assembler "\t(lvx|lxv|lvsr|stxv|plxv|pstxv)" } } */
  /* { dg-final { scan-assembler-not "\tlwz?u?x? " { xfail { powerpc-ibm-aix* } 
} } } */
  /* { dg-final { scan-assembler-not "\tstwu?x? " } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c
index 9b199c219bf..104710700c8 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned 
char);
  BUILD_CST_TEST( test12, vector unsigned char, 8, vector unsigned char);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c
index c49dfe8d95b..bfb3cfbc081 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c
@@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4, vector double, signed long long, 
vector double);
  BUILD_VAR_TEST( test5, vector double, signed int, vector double);
  BUILD_CST_TEST( test6, vector double, 12, vector double);
-/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 
} } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c
index cdded361b12..373bead2e60 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c
@@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4, vector float, signed long long, vector 
float);
  BUILD_VAR_TEST( test5, vector float, signed int, vector float);
  BUILD_CST_TEST( test6, vector float, 12, vector float);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c
index bc18bebb1d6..744b96780f1 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long 
long, vector unsigned i
  BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int);
  BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c
index 66e953a2fbc..249b3eb8cff 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10,  vector unsigned long long, signed 
long long, vector uns
  BUILD_VAR_TEST( test11,  vector unsigned long long, signed int, vector 
unsigned long long);
  BUILD_CST_TEST( test12,  vector unsigned long long, 12, vector unsigned long 
long);
-/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 
} } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c
index 0ef1c590d94..997f6f89a9d 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10,  vector unsigned short, signed long 
long, vector unsigne
  BUILD_VAR_TEST( test11,  vector unsigned short, signed int, vector unsigned 
short);
  BUILD_CST_TEST( test12,  vector unsigned short, 12, vector unsigned short);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-char.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-char.c
index 0b76341b1de..6aae43583f6 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-char.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-char.c
@@ -35,5 +35,5 @@ BUILD_VAR_TEST( test10,  vector unsigned char, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11,  vector unsigned char, signed int, vector unsigned 
char);
  BUILD_CST_TEST( test12,  vector unsigned char, 12, vector unsigned char);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-double.c b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-double.c
index beb6d037a6b..b3f3b7fcd07 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-double.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-double.c
@@ -27,4 +27,4 @@ BUILD_VAR_TEST( test4, vector  double, int, vector double);
  BUILD_VAR_TEST( test5, vector  double, long long, vector double);
  BUILD_CST_TEST( test6, vector  double, 12, vector double);
-/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 
} } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-float.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-float.c
index 5f9b6d35830..56cbe9ad102 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-float.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-float.c
@@ -27,4 +27,4 @@ BUILD_VAR_TEST( test5,  vector float, signed long long, 
vector float);
  BUILD_VAR_TEST( test7,  vector float, signed int, vector float);
  BUILD_CST_TEST( test8,  vector float, 12, vector float);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-int.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-int.c
index a59f52fbb1e..2cde9f5b6dd 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-int.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-int.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10,  vector unsigned int, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11,  vector unsigned int, signed int, vector unsigned 
int);
  BUILD_CST_TEST( test12,  vector unsigned int, 12, vector unsigned int);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-longlong.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-longlong.c
index 5c121fa26bd..cf2b7f9b5bc 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-longlong.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10,  vector unsigned long long, signed 
long long, vector uns
  BUILD_VAR_TEST( test11,  vector unsigned long long, signed int, vector 
unsigned long long);
  BUILD_CST_TEST( test12,  vector unsigned long long, 12, vector unsigned long 
long);
-/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 
} } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-short.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-short.c
index 07154d811a1..cfc0e307d80 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-short.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_vsx_ld-short.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10,  vector unsigned short, signed long 
long, vector unsigne
  BUILD_VAR_TEST( test11,  vector unsigned short, signed int, vector unsigned 
short);
  BUILD_CST_TEST( test12,  vector unsigned short, 12, vector unsigned short);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-char.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-char.c
index 04c4f31deef..7281b3cca7a 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-char.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-char.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10,  vector unsigned char, signed long 
long, unsigned char);
  BUILD_VAR_TEST( test11,  vector unsigned char, signed int, unsigned char);
  BUILD_CST_TEST( test12,  vector unsigned char, 12, unsigned char);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-double.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-double.c
index 1958d65be89..3f3d985c45b 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-double.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-double.c
@@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4,  vector double, signed long long, 
double);
  BUILD_VAR_TEST( test5,  vector double, signed int, double);
  BUILD_CST_TEST( test6,  vector double, 12, double);
-/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 
} } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-float.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-float.c
index 5578138d2f1..eafe3053771 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-float.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-float.c
@@ -27,4 +27,4 @@ BUILD_VAR_TEST( test4,  vector float, signed long long, 
vector float);
  BUILD_VAR_TEST( test5,  vector float, signed int, vector float);
  BUILD_CST_TEST( test6,  vector float, 12, vector float);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 6 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-int.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-int.c
index 8ba880ea61f..a2267218af9 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-int.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-int.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10,  vector unsigned int, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11,  vector unsigned int, signed int, vector unsigned 
int);
  BUILD_CST_TEST( test12,  vector unsigned int, 12, vector unsigned int);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-longlong.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-longlong.c
index 6df3c79fd1b..f2e5469ab74 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-longlong.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10,  vector unsigned long long, signed 
long long, vector uns
  BUILD_VAR_TEST( test11,  vector unsigned long long, signed int, vector 
unsigned long long);
  BUILD_CST_TEST( test12,  vector unsigned long long, 12, vector unsigned long 
long);
-/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 
} } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-short.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-short.c
index c5088ab177e..2d64b4f11d2 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-short.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-load-vec_xl-short.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10,  vector unsigned short, signed long 
long, vector unsigne
  BUILD_VAR_TEST( test11,  vector unsigned short, signed int, vector unsigned 
short);
  BUILD_CST_TEST( test12,  vector unsigned short, 12, vector unsigned short);
-/* { dg-final { scan-assembler-times {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mlvx\M|\mplxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-floatdouble.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-floatdouble.c
index ab396967c3d..76619177388 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-floatdouble.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-floatdouble.c
@@ -20,11 +20,12 @@ vector double testd_01 (vector double x) { return vec_splat 
(x, 0b00001); }
  vector double test_dc ()
  { const vector double y = { 3.0, 5.0 }; return vec_splat (y, 0b00010); }
-/* If the source vector is a known constant, we will generate a load. */
-/* { dg-final { scan-assembler-times {\mlvx\M|\mlxvd2x\M|\mlxv\M} 2 } } */
+/* If the source vector is a known constant, we will generate a load or 
possibly
+   XXSPLTIW.  */
+/* { dg-final { scan-assembler-times 
{\mlvx\M|\mlxvd2x\M|\mlxv\M|\mplxv\M|\mxxspltiw\M} 2 } } */
/* For float types, we generate a splat. */
-/* { dg-final { scan-assembler-times "vspltw|xxspltw" 3 } } */
+/* { dg-final { scan-assembler-times {\mvspltw\M|\mxxspltw\M} 3 } } */
/* For double types, we will generate xxpermdi instructions. */
  /* { dg-final { scan-assembler-times "xxpermdi" 3 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-longlong.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-longlong.c
index 4fa06c85ecc..b95b987abce 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-splat-longlong.c
@@ -25,7 +25,7 @@ vector signed long long test_sll () { const vector signed 
long long y = {34, 45}
  vector unsigned long long test_ull () { const vector unsigned long long y = 
{56, 67}; return vec_splat (y, 0b00010); }
/* Assorted load instructions for the initialization with known constants. */
-/* { dg-final { scan-assembler-times {\mlvx\M|\mlxvd2x\M|\mlxv\M} 3 } } */
+/* { dg-final { scan-assembler-times {\mlvx\M|\mlxvd2x\M|\mlxv\M|\mplxv\M} 3 } 
} */
/* xxpermdi for vec_splat of long long vectors.
   At the time of this writing, the number of xxpermdi instructions
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-char.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-char.c
index d1100d01a83..162563caed4 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-char.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-char.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10,  vector unsigned char, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11,  vector unsigned char, signed int, vector unsigned 
char );
  BUILD_CST_TEST( test12,  vector unsigned char, 12, vector unsigned char );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-double.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-double.c
index 74e34c307fd..c42a720d361 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-double.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-double.c
@@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4,  vector double, signed long long, 
double );
  BUILD_VAR_TEST( test5,  vector double, signed int, double );
  BUILD_CST_TEST( test6,  vector double, 12, double );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-float.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-float.c
index db6bd331829..b200c47fd2f 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-float.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-float.c
@@ -28,4 +28,4 @@ BUILD_VAR_TEST( test4,  vector float, signed long long, 
vector float );
  BUILD_VAR_TEST( test5,  vector float, signed int, vector float );
  BUILD_CST_TEST( test6,  vector float, 12, vector float );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-int.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-int.c
index 2a328897cbb..d9848820b3a 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-int.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-int.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long 
long, vector unsigned i
  BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int 
);
  BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-longlong.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-longlong.c
index a62ca516f95..bb72d9b2a99 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-longlong.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10,  vector unsigned long long, signed 
long long, vector uns
  BUILD_VAR_TEST( test11,  vector unsigned long long, signed int, vector 
unsigned long long );
  BUILD_CST_TEST( test12,  vector unsigned long long, 12, vector unsigned long 
long );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-short.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-short.c
index 2b1e1c0b90e..f4dbb702583 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-short.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-builtin_vec_xst-short.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned 
short );
  BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-char.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-char.c
index 82bb891a9c9..ae5cf8ef0b4 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-char.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-char.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned 
char );
  BUILD_CST_TEST( test12, vector unsigned char, 12, vector unsigned char );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-double.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-double.c
index 34772cfe135..1360f4d4ce9 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-double.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-double.c
@@ -28,4 +28,4 @@ BUILD_VAR_TEST( test7,  vector double, signed long long, 
vector double );
  BUILD_VAR_TEST( test8,  vector double, signed int, vector double );
  BUILD_CST_TEST( test9,  vector double, 12, vector double );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-float.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-float.c
index cf13f2a7ec1..1b70f2a80f7 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-float.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-float.c
@@ -28,4 +28,4 @@ BUILD_VAR_TEST( test7,  vector float, signed long long, 
vector float );
  BUILD_VAR_TEST( test8,  vector float, signed int, vector float );
  BUILD_CST_TEST( test9,  vector float, 12, vector float );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-int.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-int.c
index a9e189ddadd..4e4a499eaad 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-int.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-int.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long 
long, vector unsigned i
  BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int 
);
  BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git 
a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-longlong.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-longlong.c
index f50e2b93da1..b57c126b9ab 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-longlong.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed 
long long, vector unsi
  BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector 
unsigned long long );
  BUILD_CST_TEST( test12, vector unsigned long long, 12, vector unsigned long 
long );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-short.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-short.c
index 0f8a93ad371..7593f425258 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-short.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_vsx_st-short.c
@@ -36,4 +36,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned 
short );
  BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-char.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-char.c
index 4f5930aa909..fdd2ed5648d 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-char.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-char.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned char, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11, vector unsigned char, signed int, vector unsigned 
char );
  BUILD_CST_TEST( test12, vector unsigned char, 12, vector unsigned char );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-double.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-double.c
index 511d5fe7299..62f8552fdde 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-double.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-double.c
@@ -27,4 +27,4 @@ BUILD_VAR_TEST( test7,  vector double, signed long long, 
vector double );
  BUILD_VAR_TEST( test8,  vector double, signed int, vector double );
  BUILD_CST_TEST( test9,  vector double, 12, vector double );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-float.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-float.c
index 13e6cb6e7af..ad15a5a2b51 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-float.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-float.c
@@ -27,4 +27,4 @@ BUILD_VAR_TEST( test7,  vector float, signed long long, 
vector float );
  BUILD_VAR_TEST( test8,  vector float, signed int, vector float );
  BUILD_CST_TEST( test9,  vector float, 12, vector float );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 6 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-int.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-int.c
index fd6ff78509b..abe93dfb235 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-int.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-int.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned int, signed long 
long, vector unsigned i
  BUILD_VAR_TEST( test11, vector unsigned int, signed int, vector unsigned int 
);
  BUILD_CST_TEST( test12, vector unsigned int, 12, vector unsigned int );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-longlong.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-longlong.c
index a669481b0d8..6859593bf0a 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-longlong.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned long long, signed 
long long, vector unsi
  BUILD_VAR_TEST( test11, vector unsigned long long, signed int, vector 
unsigned long long );
  BUILD_CST_TEST( test12,  vector unsigned long long, 12, vector unsigned long 
long );
-/* { dg-final { scan-assembler-times {\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-short.c 
b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-short.c
index 78eae57fb23..6c54873db20 100644
--- a/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-short.c
+++ b/gcc/testsuite/gcc.target/powerpc/fold-vec-store-vec_xst-short.c
@@ -35,4 +35,4 @@ BUILD_VAR_TEST( test10, vector unsigned short, signed long 
long, vector unsigned
  BUILD_VAR_TEST( test11, vector unsigned short, signed int, vector unsigned 
short );
  BUILD_CST_TEST( test12, vector unsigned short, 12, vector unsigned short );
-/* { dg-final { scan-assembler-times {\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mstxvw4x\M|\mstxvd2x\M|\mstxvx\M|\mstvx\M|\mpstxv\M} 12 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c 
b/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c
index 93843c09f35..26aadbcbc63 100644
--- a/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c
+++ b/gcc/testsuite/gcc.target/powerpc/lvsl-lvsr.c
@@ -6,7 +6,7 @@
  /* { dg-options "-O0 -Wno-deprecated" } */
  /* { dg-final { scan-assembler-times "lvsl" 2 } } */
  /* { dg-final { scan-assembler-times "lvsr" 2 } } */
-/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxv\M} 2 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mp?lxv\M} 2 } } */
  /* { dg-final { scan-assembler-times {\m(?:v|xx)permr?\M} 2 } } */
diff --git a/gcc/testsuite/gcc.target/powerpc/pr86731-fwrapv-longlong.c b/gcc/testsuite/gcc.target/powerpc/pr86731-fwrapv-longlong.c
index 1269fe635c6..d5ed700b9bc 100644
--- a/gcc/testsuite/gcc.target/powerpc/pr86731-fwrapv-longlong.c
+++ b/gcc/testsuite/gcc.target/powerpc/pr86731-fwrapv-longlong.c
@@ -30,5 +30,5 @@ vector signed long long splats4(void)
/* { dg-final { scan-assembler-times {\mvspltis[bhw]\M} 0 } } */
  /* { dg-final { scan-assembler-times {\mvsl[bhwd]\M} 0 } } */
-/* { dg-final { scan-assembler-times {\mlvx\M|\mlxv\M|\mlxvd2x\M} 2 } } */
+/* { dg-final { scan-assembler-times {\mlvx\M|\mlxv\M|\mlxvd2x\M|\mplvx\M} 2 } 
} */

Oopsie.  I think you mean "plxv" for this one.

Otherwise LGTM.  I can't approve, but recommend approval with those changes.

Thanks,
Bill

Reply via email to