diff options
author | Chenghui Pan <panchenghui@loongson.cn> | 2023-09-26 14:42:57 +0800 |
---|---|---|
committer | Lulu Cheng <chenglulu@loongson.cn> | 2023-10-12 15:27:29 +0800 |
commit | 3948844679a306613b66574b28dbf0c8d40ccbfd (patch) | |
tree | 60e49e1ab8d24c2a9ed3c3cec62b5d064c8c531d /gcc | |
parent | a2a51b6982c895ff3e37bda622303e92b3ac1d16 (diff) | |
download | gcc-3948844679a306613b66574b28dbf0c8d40ccbfd.zip gcc-3948844679a306613b66574b28dbf0c8d40ccbfd.tar.gz gcc-3948844679a306613b66574b28dbf0c8d40ccbfd.tar.bz2 |
LoongArch: Modify check_effective_target_vect_int_mod according to SX/ASX capabilities.
gcc/testsuite/ChangeLog:
* lib/target-supports.exp: Add LoongArch in
check_effective_target_vect_int_mod according to SX/ASX capabilities.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/lib/target-supports.exp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 4451386..f0b692a 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -8816,6 +8816,8 @@ proc check_effective_target_vect_int_mod { } { expr { ([istarget powerpc*-*-*] && [check_effective_target_has_arch_pwr10]) || [istarget amdgcn-*-*] + || ([istarget loongarch*-*-*] + && [check_effective_target_loongarch_sx]) || ([istarget riscv*-*-*] && [check_effective_target_riscv_v]) }}] } @@ -12948,6 +12950,14 @@ proc check_effective_target_cv_alu { } { } "-march=rv32i_xcvalu" ] } +proc check_effective_target_loongarch_sx { } { + return [check_no_compiler_messages loongarch_lsx assembly { + #if !defined(__loongarch_sx) + #error "LSX not defined" + #endif + }] +} + proc check_effective_target_loongarch_sx_hw { } { return [check_runtime loongarch_sx_hw { #include <lsxintrin.h> @@ -12960,6 +12970,14 @@ proc check_effective_target_loongarch_sx_hw { } { } "-mlsx"] } +proc check_effective_target_loongarch_asx { } { + return [check_no_compiler_messages loongarch_asx assembly { + #if !defined(__loongarch_asx) + #error "LASX not defined" + #endif + }] +} + proc check_effective_target_loongarch_asx_hw { } { return [check_runtime loongarch_asx_hw { #include <lasxintrin.h> |