https://gcc.gnu.org/g:64388b09fdcf0f40f664330f583ffde0202903a4
commit 64388b09fdcf0f40f664330f583ffde0202903a4 Author: Alexandre Oliva <ol...@adacore.com> Date: Fri May 16 07:59:19 2025 -0300 [testsuite] [x86] vect-simd-clone-1[678]e.c adjust Since r13-6296, we haven't got 4 simdclone calls for these tests on ia32 without avx_runtime. With avx_runtime, we get 3 such calls even on ia32, but we didn't test for anything on ia32 with avx_runtime. Adjust and simplify the expectations and comments. for gcc/testsuite/ChangeLog * gcc.dg/vect/vect-simd-clone-16e.c: Expect fewer calls on ia32. * gcc.dg/vect/vect-simd-clone-17e.c: Likewise. * gcc.dg/vect/vect-simd-clone-18e.c: Likewise. Diff: --- gcc/testsuite/gcc.dg/vect/vect-simd-clone-16e.c | 8 +++----- gcc/testsuite/gcc.dg/vect/vect-simd-clone-17e.c | 8 +++----- gcc/testsuite/gcc.dg/vect/vect-simd-clone-18e.c | 8 +++----- 3 files changed, 9 insertions(+), 15 deletions(-) diff --git a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16e.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16e.c index f80b0e0581e3..2f7cdfb22119 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16e.c +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-16e.c @@ -6,11 +6,9 @@ #include "vect-simd-clone-16.c" /* Ensure the the in-branch simd clones are used on targets that support them. - Some targets use another call for the epilogue loops. - Some targets use pairs of vectors and do twice the calls. */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 "vect" { target { { ! avx_runtime } && { ! { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } } */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 "vect" { target { avx_runtime && { ! { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } } */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 4 "vect" { target { { ! avx_runtime } && { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } */ + Some targets use another call for the epilogue loops. */ +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 "vect" { target { ! avx_runtime } } } } */ +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 "vect" { target avx_runtime } } } */ /* 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-17e.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17e.c index c7c510b8a6ab..8f10aff3b897 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17e.c +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-17e.c @@ -6,11 +6,9 @@ #include "vect-simd-clone-17.c" /* Ensure the the in-branch simd clones are used on targets that support them. - Some targets use another call for the epilogue loops. - Some targets use pairs of vectors and do twice the calls. */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 "vect" { target { { ! avx_runtime } && { ! { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } } */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 "vect" { target { avx_runtime && { ! { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } } */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 4 "vect" { target { { ! avx_runtime } && { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } */ + Some targets use another call for the epilogue loops. */ +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 "vect" { target { ! avx_runtime } } } } */ +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 "vect" { target avx_runtime } } } */ /* 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-18e.c b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18e.c index e00c3d78038b..142fcc8b0b55 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18e.c +++ b/gcc/testsuite/gcc.dg/vect/vect-simd-clone-18e.c @@ -6,11 +6,9 @@ #include "vect-simd-clone-18.c" /* Ensure the the in-branch simd clones are used on targets that support them. - Some targets use another call for the epilogue loops. - Some targets use pairs of vectors and do twice the calls. */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 "vect" { target { { ! avx_runtime } && { ! { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } } */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 "vect" { target { avx_runtime && { ! { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } } */ -/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 4 "vect" { target { { ! avx_runtime } && { { i?86-*-* x86_64-*-* } && { ! lp64 } } } } } } */ + Some targets use another call for the epilogue loops. */ +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 2 "vect" { target { ! avx_runtime } } } } */ +/* { dg-final { scan-tree-dump-times {[\n\r] [^\n]* = foo\.simdclone} 3 "vect" { target avx_runtime } } } */ /* The LTO test produces two dump files and we scan the wrong one. */ /* { dg-skip-if "" { *-*-* } { "-flto" } { "" } } */