From 0ef3d7045b565861496a6cb8460acc5d3bc80744 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Sat, 28 Jan 2023 13:05:14 -1000 Subject: [PATCH] tcg: Adjust TCGContext.temps_in_use check MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Change the temps_in_use check to use assert not fprintf. Move the assert for double-free before the check for count, since that is the more immediate problem. Reviewed-by: Philippe Mathieu-Daudé Signed-off-by: Richard Henderson --- tcg/tcg.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/tcg/tcg.c b/tcg/tcg.c index 9822c65ea8..855e4cc537 100644 --- a/tcg/tcg.c +++ b/tcg/tcg.c @@ -1374,16 +1374,14 @@ void tcg_temp_free_internal(TCGTemp *ts) g_assert_not_reached(); } + tcg_debug_assert(ts->temp_allocated != 0); + ts->temp_allocated = 0; + #if defined(CONFIG_DEBUG_TCG) + assert(s->temps_in_use > 0); s->temps_in_use--; - if (s->temps_in_use < 0) { - fprintf(stderr, "More temporaries freed than allocated!\n"); - } #endif - tcg_debug_assert(ts->temp_allocated != 0); - ts->temp_allocated = 0; - idx = temp_idx(ts); k = ts->base_type + (ts->kind == TEMP_NORMAL ? 0 : TCG_TYPE_COUNT); set_bit(idx, s->free_temps[k].l); -- 2.11.0