diff options
Diffstat (limited to 'target-m68k/op_helper.c')
-rw-r--r-- | target-m68k/op_helper.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/target-m68k/op_helper.c b/target-m68k/op_helper.c index 4c423ca984..39cd5d7038 100644 --- a/target-m68k/op_helper.c +++ b/target-m68k/op_helper.c @@ -131,6 +131,8 @@ void do_interrupt(int is_hw) vector = env->exception_index << 2; + sp = env->aregs[7]; + fmt |= 0x40000000; fmt |= (sp & 3) << 28; fmt |= vector << 16; @@ -143,8 +145,6 @@ void do_interrupt(int is_hw) } m68k_switch_sp(env); - sp = env->aregs[7]; - /* ??? This could cause MMU faults. */ sp &= ~3; sp -= 4; |