]> xenbits.xensource.com Git - qemu-upstream-4.5-testing.git/commitdiff
target-sh4: Move TCG initialization to SuperHCPU initfn
authorAndreas Färber <afaerber@suse.de>
Sun, 20 Jan 2013 00:30:32 +0000 (01:30 +0100)
committerAndreas Färber <afaerber@suse.de>
Sat, 16 Feb 2013 13:50:58 +0000 (14:50 +0100)
Add a tcg_enabled() check to suppress it for qtest.

Signed-off-by: Andreas Färber <afaerber@suse.de>
target-sh4/cpu.c
target-sh4/cpu.h
target-sh4/translate.c

index c66442f445e87c817e3da487b231fbddeb64ed01..dc5d7568ea818bceea431f696b628c9ca14d03eb 100644 (file)
@@ -73,6 +73,10 @@ static void superh_cpu_initfn(Object *obj)
     cpu_exec_init(env);
 
     env->movcal_backup_tail = &(env->movcal_backup);
+
+    if (tcg_enabled()) {
+        sh4_translate_init();
+    }
 }
 
 static const VMStateDescription vmstate_sh_cpu = {
index 34e9b0acf7bcf7509f49ae49df964583a61cf311..49dcd9e7f3daac3b2c6b8258cda21219623d9d28 100644 (file)
@@ -191,6 +191,7 @@ typedef struct CPUSH4State {
 
 #include "cpu-qom.h"
 
+void sh4_translate_init(void);
 SuperHCPU *cpu_sh4_init(const char *cpu_model);
 int cpu_sh4_exec(CPUSH4State * s);
 int cpu_sh4_signal_handler(int host_signum, void *pinfo,
index 2409a103b25a59b7f7db9e3348dd11eede8df49f..c58d79a5cde0c91615325a4978d111fe5097b24d 100644 (file)
@@ -71,7 +71,7 @@ static uint32_t gen_opc_hflags[OPC_BUF_SIZE];
 
 #include "exec/gen-icount.h"
 
-static void sh4_translate_init(void)
+void sh4_translate_init(void)
 {
     int i;
     static int done_init = 0;
@@ -251,7 +251,6 @@ SuperHCPU *cpu_sh4_init(const char *cpu_model)
     cpu = SUPERH_CPU(object_new(TYPE_SUPERH_CPU));
     env = &cpu->env;
     env->features = def->features;
-    sh4_translate_init();
     env->cpu_model_str = cpu_model;
     cpu_register(env, def);