]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
s390: Enable vect_bswap test cases
authorStefan Schulze Frielinghaus <stefansf@linux.ibm.com>
Thu, 3 Aug 2023 08:29:51 +0000 (10:29 +0200)
committerStefan Schulze Frielinghaus <stefansf@linux.ibm.com>
Thu, 3 Aug 2023 08:29:51 +0000 (10:29 +0200)
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 } } } } */

gcc/testsuite/ChangeLog:

* lib/target-supports.exp (check_effective_target_vect_bswap):
Add s390.

gcc/testsuite/lib/target-supports.exp

index 42024474091cf12bfe49ead0b7c714e6d3207f0e..7004711b3848d4ceb2319526928156b82f525d32 100644 (file)
@@ -7117,9 +7117,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