summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cpukit/score/cpu/arm/rtems/score/arm.h3
-rw-r--r--cpukit/score/cpu/arm/rtems/score/cpu.h4
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 586a8cb2e9..6d1f8502a3 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 900486bbe4..869ab1cb27 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