From 3948844679a306613b66574b28dbf0c8d40ccbfd Mon Sep 17 00:00:00 2001 From: Chenghui Pan Date: Tue, 26 Sep 2023 14:42:57 +0800 Subject: [PATCH] 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. --- gcc/testsuite/lib/target-supports.exp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 4451386d7808..f0b692a2e19b 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 @@ -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 -- 2.43.5