https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99157
--- Comment #3 from Hau Hsu <hsuhau617 at gmail dot com> --- Here are some more info. This check determines whether macro __ARM_FEATURE_CMSE is set to 3, and affects CMSE support for function cmse_check_address_range(): void * __attribute__ ((warn_unused_result)) cmse_check_address_range (void *p, size_t size, int flags) { ... #if __ARM_FEATURE_CMSE & 2 case CMSE_MPU_NONSECURE: permb = cmse_TTA (pb); perme = singleCheck ? permb : cmse_TTA (pe); break; case CMSE_MPU_UNPRIV | CMSE_MPU_NONSECURE: permb = cmse_TTAT (pb); perme = singleCheck ? permb : cmse_TTAT (pe); break; #endif ... } Since the check always fail, CMSE support for all multilibs are disabled. The objdump results of v8-m.main libgcc for gcc-arm-none-eabi-7-2018-q2-update and gcc-arm-none-eabi-10-2020-q4-major are attached.