Index: kernel/arch/arm32/include/istate.h
===================================================================
--- kernel/arch/arm32/include/istate.h	(revision 7aa6b99d7bd8a569a8bc3394901a26702aa2a5a9)
+++ kernel/arch/arm32/include/istate.h	(revision ecd991ac970696b0657f7cc7cfc72c6119259b56)
@@ -49,4 +49,5 @@
 /** Struct representing CPU state saved when an exception occurs. */
 typedef struct istate {
+	uint32_t dummy;
 	uint32_t spsr;
 	uint32_t sp;
Index: kernel/arch/arm32/src/exc_handler.S
===================================================================
--- kernel/arch/arm32/src/exc_handler.S	(revision 7aa6b99d7bd8a569a8bc3394901a26702aa2a5a9)
+++ kernel/arch/arm32/src/exc_handler.S	(revision ecd991ac970696b0657f7cc7cfc72c6119259b56)
@@ -130,7 +130,9 @@
 	stmfd r13!, {r2}
 2:
+	sub sp, sp, #4
 .endm
 
 .macro LOAD_REGS_FROM_STACK
+	add sp, sp, #4
 	ldmfd r13!, {r0}
 	msr spsr, r0
