@@ -19,11 +19,11 @@
struct TCGCPUOps {
/**
- * @initialize: Initialize TCG state
+ * @initialize_once: Initialize TCG state
*
- * Called when the first CPU is realized.
+ * Called once when the first CPU is realized.
*/
- void (*initialize)(void);
+ void (*initialize_once)(void);
/**
* @synchronize_from_tb: Synchronize state from a TCG #TranslationBlock
*
@@ -1078,7 +1078,7 @@ bool tcg_exec_realizefn(CPUState *cpu, Error **errp)
assert(tcg_ops->cpu_exec_halt);
assert(tcg_ops->cpu_exec_interrupt);
#endif /* !CONFIG_USER_ONLY */
- tcg_ops->initialize();
+ tcg_ops->initialize_once();
tcg_target_initialized = true;
}
@@ -220,7 +220,7 @@ static const struct SysemuCPUOps alpha_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps alpha_tcg_ops = {
- .initialize = alpha_translate_init,
+ .initialize_once = alpha_translate_init,
.synchronize_from_tb = alpha_cpu_synchronize_from_tb,
.restore_state_to_opc = alpha_restore_state_to_opc,
@@ -2671,7 +2671,7 @@ static const struct SysemuCPUOps arm_sysemu_ops = {
#ifdef CONFIG_TCG
static const TCGCPUOps arm_tcg_ops = {
- .initialize = arm_translate_init,
+ .initialize_once = arm_translate_init,
.synchronize_from_tb = arm_cpu_synchronize_from_tb,
.debug_excp_handler = arm_debug_excp_handler,
.restore_state_to_opc = arm_restore_state_to_opc,
@@ -233,7 +233,7 @@ static void cortex_m55_initfn(Object *obj)
}
static const TCGCPUOps arm_v7m_tcg_ops = {
- .initialize = arm_translate_init,
+ .initialize_once = arm_translate_init,
.synchronize_from_tb = arm_cpu_synchronize_from_tb,
.debug_excp_handler = arm_debug_excp_handler,
.restore_state_to_opc = arm_restore_state_to_opc,
@@ -206,7 +206,7 @@ static const struct SysemuCPUOps avr_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps avr_tcg_ops = {
- .initialize = avr_cpu_tcg_init,
+ .initialize_once = avr_cpu_tcg_init,
.synchronize_from_tb = avr_cpu_synchronize_from_tb,
.restore_state_to_opc = avr_restore_state_to_opc,
.cpu_exec_interrupt = avr_cpu_exec_interrupt,
@@ -322,7 +322,7 @@ static void hexagon_cpu_init(Object *obj)
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps hexagon_tcg_ops = {
- .initialize = hexagon_translate_init,
+ .initialize_once = hexagon_translate_init,
.synchronize_from_tb = hexagon_cpu_synchronize_from_tb,
.restore_state_to_opc = hexagon_restore_state_to_opc,
};
@@ -221,7 +221,7 @@ static const struct SysemuCPUOps hppa_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps hppa_tcg_ops = {
- .initialize = hppa_translate_init,
+ .initialize_once = hppa_translate_init,
.synchronize_from_tb = hppa_cpu_synchronize_from_tb,
.restore_state_to_opc = hppa_restore_state_to_opc,
@@ -107,7 +107,7 @@ static bool x86_debug_check_breakpoint(CPUState *cs)
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps x86_tcg_ops = {
- .initialize = tcg_x86_init,
+ .initialize_once = tcg_x86_init,
.synchronize_from_tb = x86_cpu_synchronize_from_tb,
.restore_state_to_opc = x86_restore_state_to_opc,
.cpu_exec_enter = x86_cpu_exec_enter,
@@ -793,7 +793,7 @@ void loongarch_cpu_dump_state(CPUState *cs, FILE *f, int flags)
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps loongarch_tcg_ops = {
- .initialize = loongarch_translate_init,
+ .initialize_once = loongarch_translate_init,
.synchronize_from_tb = loongarch_cpu_synchronize_from_tb,
.restore_state_to_opc = loongarch_restore_state_to_opc,
@@ -546,7 +546,7 @@ static const struct SysemuCPUOps m68k_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps m68k_tcg_ops = {
- .initialize = m68k_tcg_init,
+ .initialize_once = m68k_tcg_init,
.restore_state_to_opc = m68k_restore_state_to_opc,
#ifndef CONFIG_USER_ONLY
@@ -420,7 +420,7 @@ static const struct SysemuCPUOps mb_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps mb_tcg_ops = {
- .initialize = mb_tcg_init,
+ .initialize_once = mb_tcg_init,
.synchronize_from_tb = mb_cpu_synchronize_from_tb,
.restore_state_to_opc = mb_restore_state_to_opc,
@@ -551,7 +551,7 @@ static Property mips_cpu_properties[] = {
* mips hardware (see hw/mips/jazz.c).
*/
static const TCGCPUOps mips_tcg_ops = {
- .initialize = mips_tcg_init,
+ .initialize_once = mips_tcg_init,
.synchronize_from_tb = mips_cpu_synchronize_from_tb,
.restore_state_to_opc = mips_restore_state_to_opc,
@@ -232,7 +232,7 @@ static const struct SysemuCPUOps openrisc_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps openrisc_tcg_ops = {
- .initialize = openrisc_translate_init,
+ .initialize_once = openrisc_translate_init,
.synchronize_from_tb = openrisc_cpu_synchronize_from_tb,
.restore_state_to_opc = openrisc_restore_state_to_opc,
@@ -7416,7 +7416,7 @@ static const struct SysemuCPUOps ppc_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps ppc_tcg_ops = {
- .initialize = ppc_translate_init,
+ .initialize_once = ppc_translate_init,
.restore_state_to_opc = ppc_restore_state_to_opc,
#ifdef CONFIG_USER_ONLY
.record_sigsegv = ppc_cpu_record_sigsegv,
@@ -133,7 +133,7 @@ static void riscv_restore_state_to_opc(CPUState *cs,
}
static const TCGCPUOps riscv_tcg_ops = {
- .initialize = riscv_translate_init,
+ .initialize_once = riscv_translate_init,
.synchronize_from_tb = riscv_cpu_synchronize_from_tb,
.restore_state_to_opc = riscv_restore_state_to_opc,
@@ -192,7 +192,7 @@ static const struct SysemuCPUOps rx_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps rx_tcg_ops = {
- .initialize = rx_translate_init,
+ .initialize_once = rx_translate_init,
.synchronize_from_tb = rx_cpu_synchronize_from_tb,
.restore_state_to_opc = rx_restore_state_to_opc,
.tlb_fill = rx_cpu_tlb_fill,
@@ -357,7 +357,7 @@ void cpu_get_tb_cpu_state(CPUS390XState *env, vaddr *pc,
}
static const TCGCPUOps s390_tcg_ops = {
- .initialize = s390x_translate_init,
+ .initialize_once = s390x_translate_init,
.restore_state_to_opc = s390x_restore_state_to_opc,
#ifdef CONFIG_USER_ONLY
@@ -247,7 +247,7 @@ static const struct SysemuCPUOps sh4_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps superh_tcg_ops = {
- .initialize = sh4_translate_init,
+ .initialize_once = sh4_translate_init,
.synchronize_from_tb = superh_cpu_synchronize_from_tb,
.restore_state_to_opc = superh_restore_state_to_opc,
@@ -927,7 +927,7 @@ static const struct SysemuCPUOps sparc_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps sparc_tcg_ops = {
- .initialize = sparc_tcg_init,
+ .initialize_once = sparc_tcg_init,
.synchronize_from_tb = sparc_cpu_synchronize_from_tb,
.restore_state_to_opc = sparc_restore_state_to_opc,
@@ -170,7 +170,7 @@ static const struct SysemuCPUOps tricore_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps tricore_tcg_ops = {
- .initialize = tricore_tcg_init,
+ .initialize_once = tricore_tcg_init,
.synchronize_from_tb = tricore_cpu_synchronize_from_tb,
.restore_state_to_opc = tricore_restore_state_to_opc,
.tlb_fill = tricore_cpu_tlb_fill,
@@ -227,7 +227,7 @@ static const struct SysemuCPUOps xtensa_sysemu_ops = {
#include "hw/core/tcg-cpu-ops.h"
static const TCGCPUOps xtensa_tcg_ops = {
- .initialize = xtensa_translate_init,
+ .initialize_once = xtensa_translate_init,
.debug_excp_handler = xtensa_breakpoint_handler,
.restore_state_to_opc = xtensa_restore_state_to_opc,
While this handler can be called multiple times, it will only be run once. Clarify by renaming the handler name. Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org> --- We could "optimize" TGC frontends memory use by passing a CPUClass argument, and each initialize() call would initialize TCG registers required for a particular CPUClass which are not yet initialized by previous calls. Not a priority / worth it. --- include/hw/core/tcg-cpu-ops.h | 6 +++--- accel/tcg/cpu-exec.c | 2 +- target/alpha/cpu.c | 2 +- target/arm/cpu.c | 2 +- target/arm/tcg/cpu-v7m.c | 2 +- target/avr/cpu.c | 2 +- target/hexagon/cpu.c | 2 +- target/hppa/cpu.c | 2 +- target/i386/tcg/tcg-cpu.c | 2 +- target/loongarch/cpu.c | 2 +- target/m68k/cpu.c | 2 +- target/microblaze/cpu.c | 2 +- target/mips/cpu.c | 2 +- target/openrisc/cpu.c | 2 +- target/ppc/cpu_init.c | 2 +- target/riscv/tcg/tcg-cpu.c | 2 +- target/rx/cpu.c | 2 +- target/s390x/cpu.c | 2 +- target/sh4/cpu.c | 2 +- target/sparc/cpu.c | 2 +- target/tricore/cpu.c | 2 +- target/xtensa/cpu.c | 2 +- 22 files changed, 24 insertions(+), 24 deletions(-)