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]) }}]
}
} "-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>
} "-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>