diff --git a/qemu/target-arm/translate.c b/qemu/target-arm/translate.c index 2f21e7a3..08e8827d 100644 --- a/qemu/target-arm/translate.c +++ b/qemu/target-arm/translate.c @@ -11568,6 +11568,8 @@ void gen_intermediate_code(CPUARMState *env, TranslationBlock *tb) QTAILQ_FOREACH(bp, &cs->breakpoints, entry) { if (bp->pc == dc->pc) { if (bp->flags & BP_CPU) { + gen_set_condexec(dc); + gen_set_pc_im(dc, dc->pc); gen_helper_check_breakpoints(tcg_ctx, tcg_ctx->cpu_env); /* End the TB early; it's likely not going to be executed */ dc->is_jmp = DISAS_UPDATE;