diff options
-rw-r--r-- | target/alpha/translate.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/target/alpha/translate.c b/target/alpha/translate.c index aaaf28fb18..90e6d5285f 100644 --- a/target/alpha/translate.c +++ b/target/alpha/translate.c @@ -3013,6 +3013,8 @@ void gen_intermediate_code(CPUAlphaState *env, struct TranslationBlock *tb) } gen_tb_start(tb); + tcg_clear_temp_count(); + do { tcg_gen_insn_start(ctx.pc); num_insns++; @@ -3035,6 +3037,10 @@ void gen_intermediate_code(CPUAlphaState *env, struct TranslationBlock *tb) ret = translate_one(ctxp, insn); free_context_temps(ctxp); + if (tcg_check_temp_count()) { + qemu_log("TCG temporary leak before "TARGET_FMT_lx"\n", ctx.pc); + } + /* If we reach a page boundary, are single stepping, or exhaust instruction count, stop generation. */ if (ret == NO_EXIT |