Re: [PATCH] Fix typo in fold-vec-load-builtin_vec_xl-* tests.

2021-08-12 Thread Michael Meissner via Gcc-patches
On Sun, Aug 08, 2021 at 03:21:02PM -0500, Segher Boessenkool wrote:
> On Thu, Aug 05, 2021 at 10:44:36PM -0400, Michael Meissner wrote:
> > * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c: Fix
> > typo in regular expression.
> > * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c:
> > Likewise.
> > * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c:
> > Likewise.
> > * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c:
> > Likewise.
> > * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c:
> > Likewise.
> > * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c:
> > Likewise.
> 
> Please don't break changelog lines unnecessarily.

Unfortunately with the length of the filenames, and the 79 character limit per
line, there isn't much option.

> 
> This fixes typos, so the tests failed before, and now pass?
> 
> > --- 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|\mp?lvx\M} 6 } } */
> > +/* { dg-final { scan-assembler-times 
> > {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\M} 6 } } */
> 
> You can write
>   {\mlxvw4x\M|\mlxvd2x\M|\mp?lxvx?\M}
> instead, or even
>   {\mp?lxv}
> This would be a useful future cleanup: it makes these tests both more
> readable and lower maintenance.  What you test here is how many vector
> loads there are, and the specific kind of vector load is immaterial in
> this test.
> 
> This also make it clear you are now disallowing "lvx" here.  Is that on
> purpose?  Is there any reason we would not allow it here?  We do not
> *expect* it of course, but depending on that means we will have more
> patches to this testcase later.  So maybe something like
>   {\mp?lxv|\mlvx\M}

Ok, though the pattern probably should be:

{\mp?lxvx?|\mlvx\M}

> Okay for trunk, thanks!  Please think about making these tests more
> robust :-)
> 
> 
> Segher

-- 
Michael Meissner, IBM
IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA
email: meiss...@linux.ibm.com, phone: +1 (978) 899-4797


Re: [PATCH] Fix typo in fold-vec-load-builtin_vec_xl-* tests.

2021-08-08 Thread Segher Boessenkool
On Thu, Aug 05, 2021 at 10:44:36PM -0400, Michael Meissner wrote:
>   * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c: Fix
>   typo in regular expression.
>   * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c:
>   Likewise.
>   * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c:
>   Likewise.
>   * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c:
>   Likewise.
>   * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c:
>   Likewise.
>   * gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c:
>   Likewise.

Please don't break changelog lines unnecessarily.

This fixes typos, so the tests failed before, and now pass?

> --- 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|\mp?lvx\M} 6 } } */
> +/* { dg-final { scan-assembler-times 
> {\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\M} 6 } } */

You can write
  {\mlxvw4x\M|\mlxvd2x\M|\mp?lxvx?\M}
instead, or even
  {\mp?lxv}
This would be a useful future cleanup: it makes these tests both more
readable and lower maintenance.  What you test here is how many vector
loads there are, and the specific kind of vector load is immaterial in
this test.

This also make it clear you are now disallowing "lvx" here.  Is that on
purpose?  Is there any reason we would not allow it here?  We do not
*expect* it of course, but depending on that means we will have more
patches to this testcase later.  So maybe something like
  {\mp?lxv|\mlvx\M}

Okay for trunk, thanks!  Please think about making these tests more
robust :-)


Segher


Re: [PATCH] Fix typo in fold-vec-load-builtin_vec_xl-* tests.

2021-08-08 Thread Bill Schmidt via Gcc-patches

Hi Mike,

FWIW, looks fine to me, if tests are all passing now.

Bill

On 8/5/21 9:44 PM, Michael Meissner wrote:

[PATCH] Fix typo in fold-vec-load-builtin_vec_xl-* tests.

When I checked in the fix for running tests on power10 systems with
power10 code generation, I had a typo in the
fold-vec-load-builtin_vec_xl-* tests, swapping 'x' and 'v' in the p?lxv
pattern.

I checked this patch on a little endian power10 building GCC with
--with-cpu=power10 and I also ran it on a little endian power9 configured with
--with-cpu=power9 to verify that I didn't cause a regression  Can I check this
into the master branch?

gcc/testsuite/
2021-08-05  Michael Meissner  

* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c: Fix
typo in regular expression.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c:
Likewise.
---
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c  | 2 +-
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c| 2 +-
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c | 2 +-
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c   | 2 +-
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c  | 2 +-
  .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c | 2 +-
  6 files changed, 6 insertions(+), 6 deletions(-)

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 f6eb88fbe39..ea6adc4f112 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|\mp?lvx\M} 12 } } */

+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 66d544530f6..71236472ea4 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|\mp?lvx\M} 6 } } */

+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 7d84c2091df..cc124af253f 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|\mp?lvx\M} 6 } } */

+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 c6a8226d012..c57adadb6fc 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|\mp?lvx\M} 12 } } */

+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 6f0cd734475..9105bf14d36 100644
--- a/gcc/testsuite/gcc.tar

[PATCH] Fix typo in fold-vec-load-builtin_vec_xl-* tests.

2021-08-05 Thread Michael Meissner via Gcc-patches
[PATCH] Fix typo in fold-vec-load-builtin_vec_xl-* tests.

When I checked in the fix for running tests on power10 systems with
power10 code generation, I had a typo in the
fold-vec-load-builtin_vec_xl-* tests, swapping 'x' and 'v' in the p?lxv
pattern.

I checked this patch on a little endian power10 building GCC with
--with-cpu=power10 and I also ran it on a little endian power9 configured with
--with-cpu=power9 to verify that I didn't cause a regression  Can I check this
into the master branch?

gcc/testsuite/
2021-08-05  Michael Meissner  

* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c: Fix
typo in regular expression.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c:
Likewise.
* gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c:
Likewise.
---
 .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-char.c  | 2 +-
 .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-double.c| 2 +-
 .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-float.c | 2 +-
 .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-int.c   | 2 +-
 .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-longlong.c  | 2 +-
 .../gcc.target/powerpc/fold-vec-load-builtin_vec_xl-short.c | 2 +-
 6 files changed, 6 insertions(+), 6 deletions(-)

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 f6eb88fbe39..ea6adc4f112 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|\mp?lvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 66d544530f6..71236472ea4 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|\mp?lvx\M} 6 } } */
+/* { dg-final { scan-assembler-times {\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 7d84c2091df..cc124af253f 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|\mp?lvx\M} 6 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 c6a8226d012..c57adadb6fc 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|\mp?lvx\M} 12 } } */
+/* { dg-final { scan-assembler-times 
{\mlxvw4x\M|\mlxvd2x\M|\mlxvx\M|\mp?lxv\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 6f0cd734475..9105bf14d36 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,