Remove the outdated hack to zero all code gen buffer

This shall also improve performance

Fix #2001
This commit is contained in:
mio
2025-01-04 17:05:34 +08:00
parent c4567ff69e
commit 2c688bae73
3 changed files with 18 additions and 3 deletions

View File

@@ -407,7 +407,7 @@ static void tcg_region_assign(TCGContext *s, size_t curr_region)
s->code_gen_ptr = start;
s->code_gen_buffer_size = (char *)end - (char *)start;
memset(s->code_gen_buffer, 0x00, s->code_gen_buffer_size);
// memset(s->code_gen_buffer, 0x00, s->code_gen_buffer_size); // Outdated Unicorn hacks
s->code_gen_highwater = (char *)end - TCG_HIGHWATER;
}
@@ -812,6 +812,7 @@ TranslationBlock *tcg_tb_alloc(TCGContext *s)
}
s->code_gen_ptr = next;
s->data_gen_ptr = NULL;
// memset((void*)tb, 0x00, sizeof(TranslationBlock)); // not necessary as both tb and tb->tc.ptr is reused here
return tb;
}

View File

@@ -40,6 +40,10 @@ static void release_common(void *t)
int i;
#endif
// Clear bps
cpu_watchpoint_remove_all(CPU(s->uc->cpu), BP_CPU);
cpu_breakpoint_remove_all(CPU(s->uc->cpu), BP_CPU);
// Clean TCG.
TCGOpDef* def = s->tcg_op_defs;
g_free(def->args_ct);
@@ -72,8 +76,6 @@ static void release_common(void *t)
/* qemu/util/qht.c:264: map = qht_map_create(n_buckets); */
qht_destroy(&s->tb_ctx.htable);
cpu_watchpoint_remove_all(CPU(s->uc->cpu), BP_CPU);
cpu_breakpoint_remove_all(CPU(s->uc->cpu), BP_CPU);
#if TCG_TARGET_REG_BITS == 32
for(i = 0; i < s->nb_globals; i++) {