From 78ce64f492498050083e46cdd7e6cbae6435843c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20F=C3=A4rber?= Date: Sun, 20 Jan 2013 01:22:25 +0100 Subject: [PATCH] target-mips: Move TCG initialization to MIPSCPU initfn MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Make mips_tcg_init() non-static and add tcg_enabled() check to suppress it for qtest. Signed-off-by: Andreas Färber --- target-mips/cpu.c | 4 ++++ target-mips/cpu.h | 1 + target-mips/translate.c | 3 +-- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/target-mips/cpu.c b/target-mips/cpu.c index 18895da80e..09d61723c5 100644 --- a/target-mips/cpu.c +++ b/target-mips/cpu.c @@ -59,6 +59,10 @@ static void mips_cpu_initfn(Object *obj) CPUMIPSState *env = &cpu->env; cpu_exec_init(env); + + if (tcg_enabled()) { + mips_tcg_init(); + } } static void mips_cpu_class_init(ObjectClass *c, void *data) diff --git a/target-mips/cpu.h b/target-mips/cpu.h index 5963d62973..0e198b12db 100644 --- a/target-mips/cpu.h +++ b/target-mips/cpu.h @@ -629,6 +629,7 @@ enum { #define CPU_INTERRUPT_WAKE CPU_INTERRUPT_TGT_INT_0 int cpu_mips_exec(CPUMIPSState *s); +void mips_tcg_init(void); MIPSCPU *cpu_mips_init(const char *cpu_model); int cpu_mips_signal_handler(int host_signum, void *pinfo, void *puc); diff --git a/target-mips/translate.c b/target-mips/translate.c index d7f650e0bf..4ee9615fda 100644 --- a/target-mips/translate.c +++ b/target-mips/translate.c @@ -15836,7 +15836,7 @@ void cpu_dump_state (CPUMIPSState *env, FILE *f, fprintf_function cpu_fprintf, #endif } -static void mips_tcg_init(void) +void mips_tcg_init(void) { int i; static int inited; @@ -15915,7 +15915,6 @@ MIPSCPU *cpu_mips_init(const char *cpu_model) #endif fpu_init(env, def); mvp_init(env, def); - mips_tcg_init(); object_property_set_bool(OBJECT(cpu), true, "realized", NULL);