Skip to content

Commit

Permalink
target/m68k: Raise the TRAPn exception with the correct pc
Browse files Browse the repository at this point in the history
Rather than adjust the PC in all of the consumers, raise
the exception with the correct PC in the first place.

Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220602013401.303699-2-richard.henderson@linaro.org>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>
  • Loading branch information
rth7680 authored and taylorsimpson committed Jun 6, 2022
1 parent 7a54af1 commit 79a3de0
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 11 deletions.
1 change: 0 additions & 1 deletion linux-user/m68k/cpu_loop.c
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,6 @@ void cpu_loop(CPUM68KState *env)
{
abi_long ret;
n = env->dregs[0];
env->pc += 2;
ret = do_syscall(env,
n,
env->dregs[1],
Expand Down
9 changes: 0 additions & 9 deletions target/m68k/op_helper.c
Original file line number Diff line number Diff line change
Expand Up @@ -217,11 +217,6 @@ static void cf_interrupt_all(CPUM68KState *env, int is_hw)
cpu_loop_exit(cs);
return;
}
if (cs->exception_index >= EXCP_TRAP0
&& cs->exception_index <= EXCP_TRAP15) {
/* Move the PC after the trap instruction. */
retaddr += 2;
}
}

vector = cs->exception_index << 2;
Expand Down Expand Up @@ -304,10 +299,6 @@ static void m68k_interrupt_all(CPUM68KState *env, int is_hw)
/* Return from an exception. */
m68k_rte(env);
return;
case EXCP_TRAP0 ... EXCP_TRAP15:
/* Move the PC after the trap instruction. */
retaddr += 2;
break;
}
}

Expand Down
2 changes: 1 addition & 1 deletion target/m68k/translate.c
Original file line number Diff line number Diff line change
Expand Up @@ -4860,7 +4860,7 @@ DISAS_INSN(wdebug)

DISAS_INSN(trap)
{
gen_exception(s, s->base.pc_next, EXCP_TRAP0 + (insn & 0xf));
gen_exception(s, s->pc, EXCP_TRAP0 + (insn & 0xf));
}

static void gen_load_fcr(DisasContext *s, TCGv res, int reg)
Expand Down

0 comments on commit 79a3de0

Please sign in to comment.