diff options
author | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-06-02 17:59:59 +0000 |
---|---|---|
committer | pbrook <pbrook@c046a42c-6fe2-441c-8c8c-71466251a162> | 2007-06-02 17:59:59 +0000 |
commit | caf8fe8c32596480b2e2809f29061f4a386de7ae (patch) | |
tree | 795b76c4adda0c20a0ff3884b8e7690182a02af8 /target-m68k | |
parent | 3a95e3a7d9a6fd7610fe483778ff7016d23be5ec (diff) |
Clear SR_M on a hardware interrupt.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2922 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-m68k')
-rw-r--r-- | target-m68k/op_helper.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/target-m68k/op_helper.c b/target-m68k/op_helper.c index f5593eca0c..8086238db4 100644 --- a/target-m68k/op_helper.c +++ b/target-m68k/op_helper.c @@ -148,6 +148,7 @@ void do_interrupt(int is_hw) env->sr |= SR_S; if (is_hw) { env->sr = (env->sr & ~SR_I) | (env->pending_level << SR_I_SHIFT); + env->sr &= ~SR_M; } /* Jump to vector. */ env->pc = ldl_kernel(env->vbr + vector); |