{
CPUARMState *env;
- cpu_exec_init();
-
- env = malloc(sizeof(CPUARMState));
+ env = qemu_mallocz(sizeof(CPUARMState));
if (!env)
return NULL;
- memset(env, 0, sizeof(CPUARMState));
- cpu_single_env = env;
+ cpu_exec_init(env);
return env;
}
CPUX86State *env;
static int inited;
- cpu_exec_init();
-
- env = malloc(sizeof(CPUX86State));
+ env = qemu_mallocz(sizeof(CPUX86State));
if (!env)
return NULL;
- memset(env, 0, sizeof(CPUX86State));
+ cpu_exec_init(env);
+
/* init various static tables */
if (!inited) {
inited = 1;
env->cpuid_features |= CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA;
#endif
}
- cpu_single_env = env;
cpu_reset(env);
#ifdef USE_KQEMU
kqemu_init(env);
{
CPUMIPSState *env;
- cpu_exec_init();
env = qemu_mallocz(sizeof(CPUMIPSState));
if (!env)
return NULL;
+ cpu_exec_init(env);
tlb_flush(env, 1);
/* Minimal init */
env->PC = 0xBFC00000;
env->CP0_Debug = (1 << CP0DB_CNT) | (0x1 << CP0DB_VER);
env->CP0_PRid = MIPS_CPU;
env->exception_index = EXCP_NONE;
-
- cpu_single_env = env;
-
return env;
}
{
CPUPPCState *env;
- cpu_exec_init();
-
env = qemu_mallocz(sizeof(CPUPPCState));
if (!env)
return NULL;
+ cpu_exec_init(env);
tlb_flush(env, 1);
#if defined (DO_SINGLE_STEP) && 0
/* Single step trace mode */
#endif
do_compute_hflags(env);
env->reserve = -1;
- cpu_single_env = env;
return env;
}