summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu/powerpc/cpu.c
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/score/cpu/powerpc/cpu.c')
-rw-r--r--cpukit/score/cpu/powerpc/cpu.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/cpukit/score/cpu/powerpc/cpu.c b/cpukit/score/cpu/powerpc/cpu.c
index 53b4eaa247..5383a8ee24 100644
--- a/cpukit/score/cpu/powerpc/cpu.c
+++ b/cpukit/score/cpu/powerpc/cpu.c
@@ -57,6 +57,47 @@ PPC_ASSERT_OFFSET(gpr2, GPR2);
PPC_ASSERT_OFFSET(is_executing, IS_EXECUTING);
#endif
+#ifdef PPC_MULTILIB_ALTIVEC
+ RTEMS_STATIC_ASSERT(
+ PPC_CONTEXT_OFFSET_V20 % 16 == 0,
+ ppc_context_altivec
+ );
+ PPC_ASSERT_OFFSET(v20, V20);
+ PPC_ASSERT_OFFSET(v21, V21);
+ PPC_ASSERT_OFFSET(v22, V22);
+ PPC_ASSERT_OFFSET(v23, V23);
+ PPC_ASSERT_OFFSET(v24, V24);
+ PPC_ASSERT_OFFSET(v25, V25);
+ PPC_ASSERT_OFFSET(v26, V26);
+ PPC_ASSERT_OFFSET(v27, V27);
+ PPC_ASSERT_OFFSET(v28, V28);
+ PPC_ASSERT_OFFSET(v29, V29);
+ PPC_ASSERT_OFFSET(v30, V30);
+ PPC_ASSERT_OFFSET(v31, V31);
+ PPC_ASSERT_OFFSET(vrsave, VRSAVE);
+#endif
+
+#ifdef PPC_MULTILIB_FPU
+ PPC_ASSERT_OFFSET(f14, F14);
+ PPC_ASSERT_OFFSET(f15, F15);
+ PPC_ASSERT_OFFSET(f16, F16);
+ PPC_ASSERT_OFFSET(f17, F17);
+ PPC_ASSERT_OFFSET(f18, F18);
+ PPC_ASSERT_OFFSET(f19, F19);
+ PPC_ASSERT_OFFSET(f20, F20);
+ PPC_ASSERT_OFFSET(f21, F21);
+ PPC_ASSERT_OFFSET(f22, F22);
+ PPC_ASSERT_OFFSET(f23, F23);
+ PPC_ASSERT_OFFSET(f24, F24);
+ PPC_ASSERT_OFFSET(f25, F25);
+ PPC_ASSERT_OFFSET(f26, F26);
+ PPC_ASSERT_OFFSET(f27, F27);
+ PPC_ASSERT_OFFSET(f28, F28);
+ PPC_ASSERT_OFFSET(f29, F29);
+ PPC_ASSERT_OFFSET(f30, F30);
+ PPC_ASSERT_OFFSET(f31, F31);
+#endif
+
RTEMS_STATIC_ASSERT(
sizeof(Context_Control) % PPC_DEFAULT_CACHE_LINE_SIZE == 0,
ppc_context_size