[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