diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 4398345..80ff52d 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -4892,9 +4892,8 @@ proc check_effective_target_bswap { } { verbose "check_effective_target_bswap: using cached result" 2 } else { set et_bswap_saved 0 - if { [istarget aarch64-*-*] + if { [istarget aarch64*-*-*] || [istarget alpha*-*-*] - || [istarget arm*-*-*] || [istarget i?86-*-*] || [istarget m68k-*-*] || [istarget powerpc*-*-*] @@ -4902,6 +4901,16 @@ proc check_effective_target_bswap { } { || [istarget s390*-*-*] || [istarget x86_64-*-*] } { set et_bswap_saved 1 + } else { + if { [istarget arm*-*-*] + && [check_no_compiler_messages_nocache arm_v6_or_later object { + #if __ARM_ARCH < 6 + #error not armv6 or later + #endif + int i; + } ""] } { + set et_bswap_saved 1 + } } }