[rtems commit] arm: Fix compile error for ARMv6-M multilib

Sebastian Huber sebh at rtems.org
Fri Jan 9 13:09:38 UTC 2015


Module:    rtems
Branch:    master
Commit:    5759510c9645bb0dd41e97da8ec3ac95595ebf66
Changeset: http://git.rtems.org/rtems/commit/?id=5759510c9645bb0dd41e97da8ec3ac95595ebf66

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Fri Jan  9 13:25:09 2015 +0100

arm: Fix compile error for ARMv6-M multilib

ARMv6-M is not supported since we cannot directly use the ARMv7-M code
due to some inline assembler statements.

Close #2231.

---

 cpukit/score/cpu/arm/rtems/score/arm.h | 3 +++
 cpukit/score/cpu/arm/rtems/score/cpu.h | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/cpukit/score/cpu/arm/rtems/score/arm.h b/cpukit/score/cpu/arm/rtems/score/arm.h
index 586a8cb..6d1f850 100644
--- a/cpukit/score/cpu/arm/rtems/score/arm.h
+++ b/cpukit/score/cpu/arm/rtems/score/arm.h
@@ -32,6 +32,9 @@ extern "C" {
 #if defined(__ARM_ARCH_7M__)
   #define CPU_MODEL_NAME "ARMv7M"
   #define ARM_MULTILIB_ARCH_V7M
+#elif defined(__ARM_ARCH_6M__)
+  #define CPU_MODEL_NAME "ARMv6M"
+  #define ARM_MULTILIB_ARCH_V6M
 #else
   #define CPU_MODEL_NAME "ARMv4"
   #define ARM_MULTILIB_ARCH_V4
diff --git a/cpukit/score/cpu/arm/rtems/score/cpu.h b/cpukit/score/cpu/arm/rtems/score/cpu.h
index 900486b..869ab1c 100644
--- a/cpukit/score/cpu/arm/rtems/score/cpu.h
+++ b/cpukit/score/cpu/arm/rtems/score/cpu.h
@@ -260,7 +260,7 @@ typedef struct {
   uint32_t register_fp;
   uint32_t register_sp;
   uint32_t register_lr;
-#elif defined(ARM_MULTILIB_ARCH_V7M)
+#elif defined(ARM_MULTILIB_ARCH_V6M) || defined(ARM_MULTILIB_ARCH_V7M)
   uint32_t register_r4;
   uint32_t register_r5;
   uint32_t register_r6;
@@ -682,7 +682,7 @@ typedef struct {
 #if defined(ARM_MULTILIB_ARCH_V4)
   uint32_t register_cpsr;
   Arm_symbolic_exception_name vector;
-#elif defined(ARM_MULTILIB_ARCH_V7M)
+#elif defined(ARM_MULTILIB_ARCH_V6M) || defined(ARM_MULTILIB_ARCH_V7M)
   uint32_t register_xpsr;
   uint32_t vector;
 #endif




More information about the vc mailing list