This enables the following tests which rely on instruction vperm which is available since z13 with the initial vector support.
testsuite/gcc.dg/vect/vect-bswap16.c 42:/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { vect_bswap || sse4_runtime } } } } */ testsuite/gcc.dg/vect/vect-bswap32.c 42:/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { vect_bswap || sse4_runtime } } } } */ testsuite/gcc.dg/vect/vect-bswap64.c 42:/* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" { target { vect_bswap || sse4_runtime } } } } */ Ok for mainline? gcc/testsuite/ChangeLog: * lib/target-supports.exp (check_effective_target_vect_bswap): Add s390. --- gcc/testsuite/lib/target-supports.exp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 4d04df2a709..2ccc0291442 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -7087,9 +7087,11 @@ proc check_effective_target_whole_vector_shift { } { proc check_effective_target_vect_bswap { } { return [check_cached_effective_target_indexed vect_bswap { - expr { [istarget aarch64*-*-*] - || [is-effective-target arm_neon] - || [istarget amdgcn-*-*] }}] + expr { ([istarget aarch64*-*-*] + || [is-effective-target arm_neon] + || [istarget amdgcn-*-*]) + || ([istarget s390*-*-*] + && [check_effective_target_s390_vx]) }}] } # Return 1 if the target supports comparison of bool vectors for at -- 2.41.0