From f50e6cfa11514161caf74717f2b4b5751c580736 Mon Sep 17 00:00:00 2001 From: "Emilio G. Cota" Date: Sat, 3 Mar 2018 17:08:15 -0500 Subject: [PATCH] translate-all: consolidate tb init in tb_gen_code We are partially initializing tb in tb_alloc. Instead, fully initialize it in tb_gen_code, which is tb_alloc's only caller. This saves an unnecessary write to tb->cflags. Backports commit 2b48e10f888059a98043b4816769fa2a326a1d2c from qemu --- qemu/translate-all.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/qemu/translate-all.c b/qemu/translate-all.c index 0f4e64f3..da2e0569 100644 --- a/qemu/translate-all.c +++ b/qemu/translate-all.c @@ -879,9 +879,6 @@ static TranslationBlock *tb_alloc(struct uc_struct *uc, target_ulong pc) ctx->tbs = g_renew(TranslationBlock *, ctx->tbs, ctx->tbs_size); } ctx->tbs[ctx->nb_tbs++] = tb; - tb->pc = pc; - tb->cflags = 0; - tb->invalid = false; return tb; } @@ -1342,9 +1339,11 @@ TranslationBlock *tb_gen_code(CPUState *cpu, } gen_code_buf = tcg_ctx->code_gen_ptr; tb->tc_ptr = gen_code_buf; + tb->pc = pc; tb->cs_base = cs_base; tb->flags = flags; tb->cflags = cflags; + tb->invalid = false; #ifdef CONFIG_PROFILER tcg_ctx->tb_count1++; /* includes aborted translations because of