diff options
Diffstat (limited to 'target-cris/translate.c')
-rw-r--r-- | target-cris/translate.c | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/target-cris/translate.c b/target-cris/translate.c index 26c3f0b..d3dbac2 100644 --- a/target-cris/translate.c +++ b/target-cris/translate.c @@ -3515,7 +3515,7 @@ CPUCRISState *cpu_cris_init (const char *cpu_model) env->pregs[PR_VR] = vr_by_name(cpu_model); cpu_exec_init(env); - cpu_state_reset(env); + cpu_reset(CPU(cpu)); qemu_init_vcpu(env); if (tcg_initialized) @@ -3577,25 +3577,7 @@ CPUCRISState *cpu_cris_init (const char *cpu_model) void cpu_state_reset(CPUCRISState *env) { - uint32_t vr; - - if (qemu_loglevel_mask(CPU_LOG_RESET)) { - qemu_log("CPU Reset (CPU %d)\n", env->cpu_index); - log_cpu_state(env, 0); - } - - vr = env->pregs[PR_VR]; - memset(env, 0, offsetof(CPUCRISState, breakpoints)); - env->pregs[PR_VR] = vr; - tlb_flush(env, 1); - -#if defined(CONFIG_USER_ONLY) - /* start in user mode with interrupts enabled. */ - env->pregs[PR_CCS] |= U_FLAG | I_FLAG | P_FLAG; -#else - cris_mmu_init(env); - env->pregs[PR_CCS] = 0; -#endif + cpu_reset(ENV_GET_CPU(env)); } void restore_state_to_opc(CPUCRISState *env, TranslationBlock *tb, int pc_pos) |