https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124236
Bug ID: 124236
Summary: [15/16] Target check arm_v8_3a_complex_neon_hw is
broken
Product: gcc
Version: 15.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: testsuite
Assignee: unassigned at gcc dot gnu.org
Reporter: siddhesh at gcc dot gnu.org
Target Milestone: ---
The test gcc/testsuite/gfortran.target/aarch64/pr122408_2.f90 adds
-march=armv8.3-a conditional on `target arm_v8_3a_complex_neon_hw`, however it
appears to pass the `-march=armv8.3-a` even on armv8.2 cores. The gating check
appears to incorrectly succeed when
check_effective_target_arm_v8_3a_complex_neon_ok fails:
proc check_effective_target_arm_v8_3a_complex_neon_hw { } {
if { ![check_effective_target_arm_v8_3a_complex_neon_ok] } {
return 1;
}
Perhaps that return should be flipped?
--- a/gcc/testsuite/lib/target-supports.exp
+++ b/gcc/testsuite/lib/target-supports.exp
@@ -13827,7 +13827,7 @@ proc add_options_for_arm_v8_3a_fp16_complex_neon {
flags } {
proc check_effective_target_arm_v8_3a_complex_neon_hw { } {
if { ![check_effective_target_arm_v8_3a_complex_neon_ok] } {
- return 1;
+ return 0;
}
return [check_runtime arm_v8_3a_complex_neon_hw_available {
#include "arm_neon.h"
The fix and test was backported to gcc15, so this fix would need to be
backported as well.