diff --git a/Documentation/Doxygen/src/event_recorder.md b/Documentation/Doxygen/src/event_recorder.md index 098ee12..f0f6f4e 100644 --- a/Documentation/Doxygen/src/event_recorder.md +++ b/Documentation/Doxygen/src/event_recorder.md @@ -260,8 +260,8 @@ For the **Arm Compiler** toolchain add the following code snippet to the linker ``` RW_NOINIT UNINIT 0x800 { - *(.noinit) - *(.noinit.*) + *(.bss.noinit) + *(.bss.noinit.*) } ``` diff --git a/Documentation/Doxygen/src/fault.md b/Documentation/Doxygen/src/fault.md index f452948..75441b8 100644 --- a/Documentation/Doxygen/src/fault.md +++ b/Documentation/Doxygen/src/fault.md @@ -133,8 +133,8 @@ For the Arm Compiler toolchain add the following code snippet to the linker scri ``` RW_NOINIT UNINIT 0x800 { - *(.noinit) - *(.noinit.*) + *(.bss.noinit) + *(.bss.noinit.*) } ``` diff --git a/EventRecorder/Source/EventRecorder.c b/EventRecorder/Source/EventRecorder.c index b3444db..c94cb4a 100644 --- a/EventRecorder/Source/EventRecorder.c +++ b/EventRecorder/Source/EventRecorder.c @@ -41,8 +41,12 @@ #endif #if !defined(__NO_INIT) -//lint -esym(9071, __NO_INIT) "defined macro is reserved to the compiler" -#define __NO_INIT __attribute__ ((section (".noinit"))) + //lint -esym(9071, __NO_INIT) "Suppress: defined macro is reserved to the compiler" + #if defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /* ARM Compiler 6 */ + #define __NO_INIT __attribute__ ((section (".bss.noinit"))) + #else /* all other compilers */ + #define __NO_INIT __attribute__ ((section (".noinit"))) + #endif #endif //lint -e(9026) "Function-like macro" diff --git a/Examples/EventStatistic/RTE/Device/SSE-300-MPS3/fvp_sse300_mps3_s.sct b/Examples/EventStatistic/RTE/Device/SSE-300-MPS3/fvp_sse300_mps3_s.sct index 70a9e6a..786cb26 100644 --- a/Examples/EventStatistic/RTE/Device/SSE-300-MPS3/fvp_sse300_mps3_s.sct +++ b/Examples/EventStatistic/RTE/Device/SSE-300-MPS3/fvp_sse300_mps3_s.sct @@ -59,8 +59,8 @@ LR_CODE S_CODE_START { } ER_DATA_NOINIT +0 ALIGN 64 UNINIT 0x00002000 { - *(.noinit) - *(.noinit.*) + *(.bss.noinit) + *(.bss.noinit.*) } #if HEAP_SIZE > 0 diff --git a/Examples/Fault/B-U585I-IOT02A/NonSecure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_ns.sct b/Examples/Fault/B-U585I-IOT02A/NonSecure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_ns.sct index b4c4b4a..036802a 100644 --- a/Examples/Fault/B-U585I-IOT02A/NonSecure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_ns.sct +++ b/Examples/Fault/B-U585I-IOT02A/NonSecure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_ns.sct @@ -99,12 +99,12 @@ LR_APP __LR_BASE __LR_SIZE { /* load reg } RW_NOINIT_FAULT 0x200B0000 UNINIT 0x100 { /* Uninitialized memory for Fault information (ARM_FaultInfo) */ - *(.noinit.fault) + *(.bss.noinit.fault) } #if __NOINIT_SIZE > 0 RW_NOINIT __RW_NOINIT_BASE UNINIT __NOINIT_SIZE { /* no init data */ - *(.noinit) + *(.bss.noinit) } #endif diff --git a/Examples/Fault/B-U585I-IOT02A/Secure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_s.sct b/Examples/Fault/B-U585I-IOT02A/Secure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_s.sct index cc097c3..50a0f83 100644 --- a/Examples/Fault/B-U585I-IOT02A/Secure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_s.sct +++ b/Examples/Fault/B-U585I-IOT02A/Secure/RTE/Device/STM32U585AIIx/stm32u585xx_flash_s.sct @@ -109,7 +109,7 @@ LR_APP __LR_BASE __LR_SIZE { /* load reg #if __NOINIT_SIZE > 0 RW_NOINIT __RW_NOINIT_BASE UNINIT __NOINIT_SIZE { /* no init data */ - *(.noinit) + *(.bss.noinit) } #endif @@ -125,7 +125,7 @@ LR_APP __LR_BASE __LR_SIZE { /* load reg } RW_NS_NOINIT_FAULT 0x200B0000 UNINIT 0x100 { /* Uninitialized memory for Fault information (ARM_FaultInfo) */ - *(.noinit.fault) + *(.bss.noinit.fault) } } diff --git a/Examples/Fault/VHT_MPS2_Cortex-M7/RTE/Device/CMSDK_CM7_SP_VHT/ac6_arm.sct b/Examples/Fault/VHT_MPS2_Cortex-M7/RTE/Device/CMSDK_CM7_SP_VHT/ac6_arm.sct index 46f52be..842dc31 100644 --- a/Examples/Fault/VHT_MPS2_Cortex-M7/RTE/Device/CMSDK_CM7_SP_VHT/ac6_arm.sct +++ b/Examples/Fault/VHT_MPS2_Cortex-M7/RTE/Device/CMSDK_CM7_SP_VHT/ac6_arm.sct @@ -79,8 +79,8 @@ LR_ROM __RO_BASE __RO_SIZE { ; load region size_region #if __NOINIT_SIZE > 0 RW_NOINIT __RW_NOINIT_BASE UNINIT __NOINIT_SIZE { ; no init data - *(.noinit) - *(.noinit.*) + *(.bss.noinit) + *(.bss.noinit.*) } #endif diff --git a/Fault/Source/ARM_FaultStorage.c b/Fault/Source/ARM_FaultStorage.c index ebf3b2f..9eeb3b7 100644 --- a/Fault/Source/ARM_FaultStorage.c +++ b/Fault/Source/ARM_FaultStorage.c @@ -28,12 +28,16 @@ // Compiler-specific defines #if !defined(__NAKED) -//lint -esym(9071, __NAKED) "Suppress: defined macro is reserved to the compiler" -#define __NAKED __attribute__((naked)) + //lint -esym(9071, __NAKED) "Suppress: defined macro is reserved to the compiler" + #define __NAKED __attribute__((naked)) #endif #if !defined(__NO_INIT_FAULT) -//lint -esym(9071, __NO_INIT_FAULT) "Suppress: defined macro is reserved to the compiler" -#define __NO_INIT_FAULT __attribute__ ((section (".noinit.fault"))) + //lint -esym(9071, __NO_INIT_FAULT) "Suppress: defined macro is reserved to the compiler" + #if defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) /* ARM Compiler 6 */ + #define __NO_INIT_FAULT __attribute__ ((section (".bss.noinit.fault"))) + #else /* all other compilers */ + #define __NO_INIT_FAULT __attribute__ ((section (".noinit.fault"))) + #endif #endif #if (ARM_FAULT_FAULT_REGS_EXIST != 0)