ARMv7-M interrupt stack alignment fix.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4823 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
pbrook 2008-07-02 16:44:09 +00:00
parent 9277bc72cf
commit ab19b0ecfd

View File

@ -674,7 +674,7 @@ void do_interrupt_v7m(CPUARMState *env)
/* ??? Should only do this if Configuration Control Register /* ??? Should only do this if Configuration Control Register
STACKALIGN bit is set. */ STACKALIGN bit is set. */
if (env->regs[13] & 4) { if (env->regs[13] & 4) {
env->regs[13] += 4; env->regs[13] -= 4;
xpsr |= 0x200; xpsr |= 0x200;
} }
/* Switch to the handler mode. */ /* Switch to the handler mode. */