diff --git a/target-arm/translate-a64.c b/target-arm/translate-a64.c index 2e21948df0..21a997fe23 100644 --- a/target-arm/translate-a64.c +++ b/target-arm/translate-a64.c @@ -234,9 +234,10 @@ static inline void gen_goto_tb(DisasContext *s, int n, uint64_t dest) gen_a64_set_pc_im(dest); if (s->singlestep_enabled) { gen_exception_internal(EXCP_DEBUG); + } else { + tcg_gen_exit_tb(0); + s->is_jmp = DISAS_TB_JUMP; } - tcg_gen_exit_tb(0); - s->is_jmp = DISAS_JUMP; } }