testsuite: Fix gen-vect-34.c with vect_masked_load [PR106806]

Message ID 3fac9b35-b170-1af7-f4d2-796f9be816bf@linux.ibm.com
State New
Headers
Series testsuite: Fix gen-vect-34.c with vect_masked_load [PR106806] |

Commit Message

Kewen.Lin Nov. 2, 2022, 8:01 a.m. UTC
  Hi,

This is to fix the failure on powerpc as reported in PR106806,
the test case requires tree ifcvt pass to perform on that loop,
and it relies on masked_load support.  The fix is to guard the
expected scan with vect_masked_load effective target.

As tested on powerpc64{,le}-linux-gnu and aarch64-linux-gnu
(cfarm machine), the failures were gone.  But on
x86_64-redhat-linux (cfarm machine) the result becomes from
PASS to N/A.  I think it's expected since that machine doesn't
support AVX by default so both check_avx_available and
vect_masked_load fail, it should work fine on machines with
default AVX support, or if we adjust the current
check_avx_available with current_compiler_flags.

Is it ok for trunk?

BR,
Kewen
-----
	PR testsuite/106806

gcc/testsuite/ChangeLog:

	* gcc.dg/tree-ssa/gen-vect-34.c: Adjust with vect_masked_load
	effective target.
---
 gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--
2.27.0
  

Comments

Richard Biener Nov. 2, 2022, 8:29 a.m. UTC | #1
On Wed, Nov 2, 2022 at 9:03 AM Kewen.Lin <linkw@linux.ibm.com> wrote:
>
> Hi,
>
> This is to fix the failure on powerpc as reported in PR106806,
> the test case requires tree ifcvt pass to perform on that loop,
> and it relies on masked_load support.  The fix is to guard the
> expected scan with vect_masked_load effective target.
>
> As tested on powerpc64{,le}-linux-gnu and aarch64-linux-gnu
> (cfarm machine), the failures were gone.  But on
> x86_64-redhat-linux (cfarm machine) the result becomes from
> PASS to N/A.  I think it's expected since that machine doesn't
> support AVX by default so both check_avx_available and
> vect_masked_load fail, it should work fine on machines with
> default AVX support, or if we adjust the current
> check_avx_available with current_compiler_flags.
>
> Is it ok for trunk?

OK

> BR,
> Kewen
> -----
>         PR testsuite/106806
>
> gcc/testsuite/ChangeLog:
>
>         * gcc.dg/tree-ssa/gen-vect-34.c: Adjust with vect_masked_load
>         effective target.
> ---
>  gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c
> index 41877e05efd..c2e5dfea35f 100644
> --- a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c
> +++ b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c
> @@ -13,4 +13,4 @@ float summul(int n, float *arg1, float *arg2)
>      return res1;
>  }
>
> -/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { ! { avr-*-* pru-*-* riscv*-*-* } } } } } */
> +/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_masked_load } } } */
> --
> 2.27.0
  

Patch

diff --git a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c
index 41877e05efd..c2e5dfea35f 100644
--- a/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c
+++ b/gcc/testsuite/gcc.dg/tree-ssa/gen-vect-34.c
@@ -13,4 +13,4 @@  float summul(int n, float *arg1, float *arg2)
     return res1;
 }

-/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { ! { avr-*-* pru-*-* riscv*-*-* } } } } } */
+/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target vect_masked_load } } } */