On Thu, 16 Jan 2025, Tamar Christina wrote:

> Hi All,
> 
> When this test was added initially it didn't add the early break effective
> target tests.
> 
> This means that the test was "passing" (as in, it was failing to vectorize)
> because many targets don't support early break.
> 
> But the test should not have been run for these targets.  When the vectorizer
> learned PFA the test started passing for 32-bit targets. I had adjusted the
> testcase but fail to notice the requirements were wrong.
> 
> Thus this adds the extra guards, and on targets that don't support early break
> this test will move to UNRESOLVED, which is what it should have been all
> along...
> 
> Regtested on aarch64-none-linux-gnu and no issues.
> 
> Ok for master?

OK.

> Thanks,
> Tamar
> 
> gcc/testsuite/ChangeLog:
> 
>       PR testsuite/118451
>       * gcc.dg/vect/vect-switch-search-line-fast.c: Add early_break guards.
> 
> ---
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-switch-search-line-fast.c 
> b/gcc/testsuite/gcc.dg/vect/vect-switch-search-line-fast.c
> index 
> 02ad7a451ca2218cf827d3b6cca4b36950fba555..21c77f49ebd7d99e9cec9a542da2335e588b45ba
>  100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-switch-search-line-fast.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-switch-search-line-fast.c
> @@ -1,6 +1,8 @@
>  /* PR116126 -- once this works use this version in libcpp/lex.c.
>     This also requires working value range propagation for s/end.  */
>  /* { dg-do compile } */
> +/* { dg-add-options vect_early_break } */
> +/* { dg-require-effective-target vect_early_break } */
>  /* { dg-require-effective-target vect_int } */
>  
>  const unsigned char *search_line_fast2 (const unsigned char *s,
> 
> 
> 
> 
> 

-- 
Richard Biener <rguent...@suse.de>
SUSE Software Solutions Germany GmbH,
Frankenstrasse 146, 90461 Nuernberg, Germany;
GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)

Reply via email to