From ab19b0ecfddf94ae2053b973cea5a58c8dac0363 Mon Sep 17 00:00:00 2001 From: pbrook Date: Wed, 2 Jul 2008 16:44:09 +0000 Subject: ARMv7-M interrupt stack alignment fix. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4823 c046a42c-6fe2-441c-8c8c-71466251a162 --- target-arm/helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target-arm/helper.c b/target-arm/helper.c index 8e8543525..32c2c2e28 100644 --- a/target-arm/helper.c +++ b/target-arm/helper.c @@ -674,7 +674,7 @@ void do_interrupt_v7m(CPUARMState *env) /* ??? Should only do this if Configuration Control Register STACKALIGN bit is set. */ if (env->regs[13] & 4) { - env->regs[13] += 4; + env->regs[13] -= 4; xpsr |= 0x200; } /* Switch to the handler mode. */ -- cgit v1.2.3