diff mbox series

s390: Enable vect_bswap test cases

Message ID 20230803064806.951680-2-stefansf@linux.ibm.com
State New
Headers show
Series s390: Enable vect_bswap test cases | expand

Commit Message

Stefan Schulze Frielinghaus Aug. 3, 2023, 6:48 a.m. UTC
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(-)

Comments

Andreas Krebbel Aug. 3, 2023, 7:16 a.m. UTC | #1
On 8/3/23 08:48, Stefan Schulze Frielinghaus wrote:
> 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?

Ok. Thanks!

Andreas

> 
> 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
diff mbox series

Patch

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