mirror of https://github.com/xemu-project/xemu.git
target/m68k: Fix stack frame for EXCP_ILLEGAL
According to the M68040 Users Manual, section 8.4.1, Four word stack frame (format 0), includes Illegal Instruction. Use the correct frame format, which does not use the ADDR argument. Reviewed-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20220602013401.303699-10-richard.henderson@linaro.org> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
8115fc9368
commit
a1aedd6cbd
|
@ -391,11 +391,14 @@ static void m68k_interrupt_all(CPUM68KState *env, int is_hw)
|
|||
}
|
||||
break;
|
||||
|
||||
case EXCP_ILLEGAL:
|
||||
do_stack_frame(env, &sp, 0, oldsr, 0, env->pc);
|
||||
break;
|
||||
|
||||
case EXCP_ADDRESS:
|
||||
do_stack_frame(env, &sp, 2, oldsr, 0, env->pc);
|
||||
break;
|
||||
|
||||
case EXCP_ILLEGAL:
|
||||
case EXCP_TRAPCC:
|
||||
/* FIXME: addr is not only env->pc */
|
||||
do_stack_frame(env, &sp, 2, oldsr, env->pc, env->pc);
|
||||
|
|
Loading…
Reference in New Issue