diff options
| author | Frédéric Desbiens <[email protected]> | 2026-08-13 15:57:18 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-08-13 15:57:18 -0400 |
| commit | c991c9e6aebc32a99667ca2941d5b839f5b2b1cd (patch) | |
| tree | ce13b75d03f70905c8ab556bfe84c634fc1a17be /scripts | |
| parent | acdc02b2fcd5883faed61a619d38f8e5f89fc69e (diff) | |
Added TX_ENABLE_FIQ_SUPPORT to the feature-macro assembly stage (#610)
#608 assembled the code behind TX_ENABLE_VFP_SUPPORT, TX_LOW_POWER and
TX_ENABLE_EXECUTION_CHANGE_NOTIFY, and missed TX_ENABLE_FIQ_SUPPORT, which guards
assembly in 145 files across the A and R profile ports. All 145 assemble today, so
this adds no fix, only the regression protection the other three already have.
Also recorded why TX_ENABLE_IRQ_NESTING and TX_ENABLE_FIQ_NESTING are not in the
list, since their absence otherwise looks like the same oversight. They guard no
assembly in the trees this script walks: the nesting start and end routines are
separate files compiled unconditionally, and the macros only feed the
TX_PORT_SPECIFIC_BUILD_OPTIONS bitfield in tx_port.h. Adding them would assemble
nothing new while implying coverage that does not exist.
Verified with Arm Toolchain for Embedded 22.1.0: 711 of 711 assembly sources, then
37 of 37 VFP, 145 of 145 FIQ, 8 of 8 TX_LOW_POWER and 218 of 218
TX_ENABLE_EXECUTION_CHANGE_NOTIFY.
Assisted-by: Claude Code (Opus 5) <[email protected]>
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/check_clang.sh | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/scripts/check_clang.sh b/scripts/check_clang.sh index c7ebed79..446782df 100755 --- a/scripts/check_clang.sh +++ b/scripts/check_clang.sh @@ -149,7 +149,14 @@ declare -A PORT_TARGET=( # and Cortex-M23 execution-profile paths: invalid on Armv6-M and Armv8-M # Baseline, where the 16-bit POP takes r0-r7 and pc only, and rejected by GNU as # well as by LLVM. Turning the feature on had never once been tried. -FEATURE_MACROS="TX_ENABLE_VFP_SUPPORT TX_LOW_POWER TX_ENABLE_EXECUTION_CHANGE_NOTIFY" +FEATURE_MACROS="TX_ENABLE_VFP_SUPPORT TX_ENABLE_FIQ_SUPPORT TX_LOW_POWER + TX_ENABLE_EXECUTION_CHANGE_NOTIFY" + +# TX_ENABLE_IRQ_NESTING and TX_ENABLE_FIQ_NESTING are deliberately not here. +# They guard no assembly in the trees this script walks: the nesting start and end +# routines are separate files compiled unconditionally, and the macros only feed +# the TX_PORT_SPECIFIC_BUILD_OPTIONS bitfield in tx_port.h. Adding them would +# assemble nothing new and imply coverage that does not exist. # Extra flags for the VFP paths, per core, needed only where -mcpu alone cannot # assemble them. Cortex-R4's FPU is an option rather than part of the core, so |
