Message ID | 20220109114149.1275322-5-laurent@vivier.eu (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [PULL,1/4] hw: m68k: Add virt compat machine type for 7.0 | expand |
diff --git a/target/m68k/op_helper.c b/target/m68k/op_helper.c index c0f4825034ae..acbd4735154e 100644 --- a/target/m68k/op_helper.c +++ b/target/m68k/op_helper.c @@ -415,7 +415,10 @@ static void m68k_interrupt_all(CPUM68KState *env, int is_hw) oldsr = sr; env->aregs[7] = sp; cpu_m68k_set_sr(env, sr &= ~SR_M); - sp = env->aregs[7] & ~1; + sp = env->aregs[7]; + if (!m68k_feature(env, M68K_FEATURE_UNALIGNED_DATA)) { + sp &= ~1; + } do_stack_frame(env, &sp, 1, oldsr, 0, retaddr); } else { do_stack_frame(env, &sp, 0, oldsr, 0, retaddr);