LLVM assembler compatibility for ARM_CRx_MPU (#1303)
GNU as makes unrecognized sections loadable and writable by default, but
LLVM's assembler requires specifying flags explicitly. Without them, the
linker generates "has non-ABS relocation" errors when trying to link the
resulting object files.
diff --git a/portable/GCC/ARM_CRx_MPU/mpu_wrappers_v2_asm.S b/portable/GCC/ARM_CRx_MPU/mpu_wrappers_v2_asm.S
index 142486a..caf31ff 100644
--- a/portable/GCC/ARM_CRx_MPU/mpu_wrappers_v2_asm.S
+++ b/portable/GCC/ARM_CRx_MPU/mpu_wrappers_v2_asm.S
@@ -30,7 +30,7 @@
.arm
.syntax unified
- .section freertos_system_calls
+ .section freertos_system_calls, "ax"
#define FREERTOS_ASSEMBLY
#include "FreeRTOSConfig.h"
diff --git a/portable/GCC/ARM_CRx_MPU/portASM.S b/portable/GCC/ARM_CRx_MPU/portASM.S
index bc0345a..2b6f22e 100644
--- a/portable/GCC/ARM_CRx_MPU/portASM.S
+++ b/portable/GCC/ARM_CRx_MPU/portASM.S
@@ -28,7 +28,7 @@
.arm
.syntax unified
- .section privileged_functions
+ .section privileged_functions, "ax"
#define FREERTOS_ASSEMBLY
#include "portmacro_asm.h"