accel/tcg: Remove restore_state_to_opc function
All targets have been updated. Use the tcg_ops target hook exclusively, which allows the compat code to be removed. Reviewed-by: Claudio Fontana <cfontana@suse.de> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
044dcfc5aa
commit
04f105758b
@ -254,7 +254,7 @@ static int encode_search(TranslationBlock *tb, uint8_t *block)
|
||||
int cpu_restore_state_from_tb(CPUState *cpu, TranslationBlock *tb,
|
||||
uintptr_t searched_pc, bool reset_icount)
|
||||
{
|
||||
target_ulong data[TARGET_INSN_START_WORDS];
|
||||
uint64_t data[TARGET_INSN_START_WORDS];
|
||||
uintptr_t host_pc = (uintptr_t)tb->tc.ptr;
|
||||
const uint8_t *p = tb->tc.ptr + tb->tc.size;
|
||||
int i, j, num_insns = tb->icount;
|
||||
@ -295,19 +295,7 @@ int cpu_restore_state_from_tb(CPUState *cpu, TranslationBlock *tb,
|
||||
cpu_neg(cpu)->icount_decr.u16.low += num_insns - i;
|
||||
}
|
||||
|
||||
{
|
||||
const struct TCGCPUOps *ops = cpu->cc->tcg_ops;
|
||||
__typeof(ops->restore_state_to_opc) restore = ops->restore_state_to_opc;
|
||||
if (restore) {
|
||||
uint64_t d64[TARGET_INSN_START_WORDS];
|
||||
for (i = 0; i < TARGET_INSN_START_WORDS; ++i) {
|
||||
d64[i] = data[i];
|
||||
}
|
||||
restore(cpu, tb, d64);
|
||||
} else {
|
||||
restore_state_to_opc(cpu->env_ptr, tb, data);
|
||||
}
|
||||
}
|
||||
cpu->cc->tcg_ops->restore_state_to_opc(cpu, tb, data);
|
||||
|
||||
#ifdef CONFIG_PROFILER
|
||||
qatomic_set(&prof->restore_time,
|
||||
|
@ -39,9 +39,6 @@ typedef ram_addr_t tb_page_addr_t;
|
||||
#define TB_PAGE_ADDR_FMT RAM_ADDR_FMT
|
||||
#endif
|
||||
|
||||
void restore_state_to_opc(CPUArchState *env, TranslationBlock *tb,
|
||||
target_ulong *data) __attribute__((weak));
|
||||
|
||||
/**
|
||||
* cpu_restore_state:
|
||||
* @cpu: the vCPU state is to be restore to
|
||||
|
Loading…
Reference in New Issue
Block a user