On Sun, Nov 10, 2024 at 1:56 PM H.J. Lu <hjl.to...@gmail.com> wrote:
>
> Since the C frontend no longer promotes char and short arguments, expect
> in-branch clones for x86.

This is OK once the prerequisites are approved.

Richard.

>         PR middle-end/14907
>         * gcc.dg/vect/vect-simd-clone-16c.c: Expect in-branch clones for
>         x86.
>         * gcc.dg/vect/vect-simd-clone-16d.c: Likewise.
>         * gcc.dg/vect/vect-simd-clone-17c.c: Likewise.
>         * gcc.dg/vect/vect-simd-clone-17d.c: Likewise.
>         * gcc.dg/vect/vect-simd-clone-18c.c: Likewise.
>         * gcc.dg/vect/vect-simd-clone-18d.c: Likewise.
>
> Signed-off-by: H.J. Lu <hjl.to...@gmail.com>
> ---
>  gcc/testsuite/gcc.dg/vect/vect-simd-clone-16c.c | 5 +----
>  gcc/testsuite/gcc.dg/vect/vect-simd-clone-16d.c | 4 +---
>  gcc/testsuite/gcc.dg/vect/vect-simd-clone-17c.c | 5 +----
>  gcc/testsuite/gcc.dg/vect/vect-simd-clone-17d.c | 5 +----
>  gcc/testsuite/gcc.dg/vect/vect-simd-clone-18c.c | 5 +----
>  gcc/testsuite/gcc.dg/vect/vect-simd-clone-18d.c | 5 +----
>  6 files changed, 6 insertions(+), 23 deletions(-)
>
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16c.c 
> b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16c.c
> index 4fdf25d06c6..628d4575673 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16c.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16c.c
> @@ -7,11 +7,8 @@
>
>  /* Ensure the the in-branch simd clones are used on targets that support 
> them.
>     Some targets use another call for the epilogue loops.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { ! { x86_64-*-* || { i?86-*-* || aarch64*-*-* } } } } } } */
> +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { !aarch64*-*-* } } } } */
>  /* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 
> "vect" { target { aarch64*-*-* } } } } */
>
> -/* x86_64 fails to use in-branch clones for TYPE=short.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 0 
> "vect" { target x86_64-*-* i?86-*-* } } } */
> -
>  /* The LTO test produces two dump files and we scan the wrong one.  */
>  /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16d.c 
> b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16d.c
> index 55d3c0afae5..d1f85b0703e 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16d.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16d.c
> @@ -7,11 +7,9 @@
>
>  /* Ensure the the in-branch simd clones are used on targets that support 
> them.
>     Some targets use another call for the epilogue loops.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { ! { x86_64-*-* || { i?86-*-* || aarch64*-*-* } } } } } } */
> +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { !aarch64*-*-* } } } } */
>  /* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 
> "vect" { target { aarch64*-*-* } } } } */
>
> -/* x86_64 fails to use in-branch clones for TYPE=char.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 0 
> "vect" { target x86_64-*-* i?86-*-* } } } */
>
>  /* The LTO test produces two dump files and we scan the wrong one.  */
>  /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17c.c 
> b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17c.c
> index 6afa2fd595e..6148abee806 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17c.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17c.c
> @@ -7,11 +7,8 @@
>
>  /* Ensure the the in-branch simd clones are used on targets that support 
> them.
>     Some targets use another call for the epilogue loops.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { ! { x86_64-*-* || { i?86-*-* || aarch64*-*-* } } } } } } */
> +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { !aarch64*-*-* } } } } */
>  /* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 
> "vect" { target { aarch64*-*-* } } } } */
>
> -/* x86_64 fails to use in-branch clones for TYPE=short.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 0 
> "vect" { target x86_64-*-* i?86-*-* } } } */
> -
>  /* The LTO test produces two dump files and we scan the wrong one.  */
>  /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17d.c 
> b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17d.c
> index 56177880b6b..63687984598 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17d.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17d.c
> @@ -7,11 +7,8 @@
>
>  /* Ensure the the in-branch simd clones are used on targets that support 
> them.
>     Some targets use another call for the epilogue loops.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { ! { x86_64-*-* || { i?86-*-* || aarch64*-*-* } } } } } } */
> +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { !aarch64*-*-* } } } } */
>  /* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 
> "vect" { target { aarch64*-*-* } } } } */
>
> -/* x86_64 fails to use in-branch clones for TYPE=char.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 0 
> "vect" { target x86_64-*-* i?86-*-* } } } */
> -
>  /* The LTO test produces two dump files and we scan the wrong one.  */
>  /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18c.c 
> b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18c.c
> index e56e6bca4a0..ee049e7d003 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18c.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18c.c
> @@ -7,11 +7,8 @@
>
>  /* Ensure the the in-branch simd clones are used on targets that support 
> them.
>     Some targets use another call for the epilogue loops.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { ! { x86_64-*-* || { i?86-*-* || aarch64*-*-* } } } } } } */
> +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { !aarch64*-*-* } } } } */
>  /* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 
> "vect" { target { aarch64*-*-* } } } } */
>
> -/* x86_64 fails to use in-branch clones for TYPE=short.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 0 
> "vect" { target x86_64-*-* i?86-*-* } } } */
> -
>  /* The LTO test produces two dump files and we scan the wrong one.  */
>  /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */
> diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18d.c 
> b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18d.c
> index 87e7379733e..bad9bcb731f 100644
> --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18d.c
> +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18d.c
> @@ -7,11 +7,8 @@
>
>  /* Ensure the the in-branch simd clones are used on targets that support 
> them.
>     Some targets use another call for the epilogue loops.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { ! { x86_64-*-* || { i?86-*-* || aarch64*-*-* } } } } } } */
> +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 
> "vect" { target { !aarch64*-*-* } } } } */
>  /* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 
> "vect" { target { aarch64*-*-* } } } } */
>
> -/* x86_64 fails to use in-branch clones for TYPE=char.  */
> -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 0 
> "vect" { target x86_64-*-* i?86-*-* } } } */
> -
>  /* The LTO test produces two dump files and we scan the wrong one.  */
>  /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */
> --
> 2.47.0
>

Reply via email to