aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRobin Dapp <rdapp@linux.ibm.com>2021-05-06 15:55:47 +0200
committerRobin Dapp <rdapp@linux.ibm.com>2021-05-06 16:15:38 +0200
commit5edc7a0af6ffbaadd6acc4c8d2911d92f317e9a5 (patch)
tree69f06de5dcb5f3ab5339570b55f3d5d8cd3055c6 /gcc
parent1e27ffde96b3967a3abfb4218a20e8ce75b04003 (diff)
downloadgcc-5edc7a0af6ffbaadd6acc4c8d2911d92f317e9a5.zip
gcc-5edc7a0af6ffbaadd6acc4c8d2911d92f317e9a5.tar.gz
gcc-5edc7a0af6ffbaadd6acc4c8d2911d92f317e9a5.tar.bz2
testsuite: Add s390 to vect_*_cvt checks.
This patch adds s390 to vect_*_cvt checks in target-supports.exp. gcc/testsuite/ChangeLog: * lib/target-supports.exp: Add s390 checks for vect conversions.
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/lib/target-supports.exp29
1 files changed, 22 insertions, 7 deletions
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp
index a522da3..5700c23 100644
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -3504,7 +3504,9 @@ proc check_effective_target_vect_intfloat_cvt { } {
|| [is-effective-target arm_neon]
|| ([istarget mips*-*-*]
&& [et-is-effective-target mips_msa])
- || [istarget amdgcn-*-*] }}]
+ || [istarget amdgcn-*-*]
+ || ([istarget s390*-*-*]
+ && [check_effective_target_s390_vxe2]) }}]
}
# Return 1 if the target supports signed double->int conversion
@@ -3521,7 +3523,9 @@ proc check_effective_target_vect_doubleint_cvt { } {
|| [istarget aarch64*-*-*]
|| ([istarget powerpc*-*-*] && [check_vsx_hw_available])
|| ([istarget mips*-*-*]
- && [et-is-effective-target mips_msa]) }}]
+ && [et-is-effective-target mips_msa])
+ || ([istarget s390*-*-*]
+ && [check_effective_target_s390_vx]) }}]
}
# Return 1 if the target supports signed int->double conversion
@@ -3538,7 +3542,9 @@ proc check_effective_target_vect_intdouble_cvt { } {
|| [istarget aarch64*-*-*]
|| ([istarget powerpc*-*-*] && [check_vsx_hw_available])
|| ([istarget mips*-*-*]
- && [et-is-effective-target mips_msa]) }}]
+ && [et-is-effective-target mips_msa])
+ || ([istarget s390*-*-*]
+ && [check_effective_target_s390_vx]) }}]
}
#Return 1 if we're supporting __int128 for target, 0 otherwise.
@@ -3567,7 +3573,9 @@ proc check_effective_target_vect_uintfloat_cvt { } {
|| [is-effective-target arm_neon]
|| ([istarget mips*-*-*]
&& [et-is-effective-target mips_msa])
- || [istarget amdgcn-*-*] }}]
+ || [istarget amdgcn-*-*]
+ || ([istarget s390*-*-*]
+ && [check_effective_target_s390_vxe2]) }}]
}
@@ -3582,7 +3590,9 @@ proc check_effective_target_vect_floatint_cvt { } {
|| [is-effective-target arm_neon]
|| ([istarget mips*-*-*]
&& [et-is-effective-target mips_msa])
- || [istarget amdgcn-*-*] }}]
+ || [istarget amdgcn-*-*]
+ || ([istarget s390*-*-*]
+ && [check_effective_target_s390_vxe2]) }}]
}
# Return 1 if the target supports unsigned float->int conversion
@@ -3595,7 +3605,9 @@ proc check_effective_target_vect_floatuint_cvt { } {
|| [is-effective-target arm_neon]
|| ([istarget mips*-*-*]
&& [et-is-effective-target mips_msa])
- || [istarget amdgcn-*-*] }}]
+ || [istarget amdgcn-*-*]
+ || ([istarget s390*-*-*]
+ && [check_effective_target_s390_vxe2]) }}]
}
# Return 1 if peeling for alignment might be profitable on the target
@@ -9794,7 +9806,10 @@ proc check_vect_support_and_set_flags { } {
lappend DEFAULT_VECTCFLAGS "--param" "max-unroll-times=8"
lappend DEFAULT_VECTCFLAGS "--param" "max-completely-peeled-insns=200"
lappend DEFAULT_VECTCFLAGS "--param" "max-completely-peel-times=16"
- if [check_effective_target_s390_vxe] {
+ if [check_effective_target_s390_vxe2] {
+ lappend DEFAULT_VECTCFLAGS "-march=z15" "-mzarch"
+ set dg-do-what-default run
+ } elseif [check_effective_target_s390_vxe] {
lappend DEFAULT_VECTCFLAGS "-march=z14" "-mzarch"
set dg-do-what-default run
} elseif [check_effective_target_s390_vx] {