aboutsummaryrefslogtreecommitdiff
path: root/target-lm32/cpu.c
diff options
context:
space:
mode:
authorAndreas Färber <afaerber@suse.de>2012-04-11 01:37:45 +0200
committerAndreas Färber <afaerber@suse.de>2012-04-12 01:08:04 +0200
commit3eab1690851fa68698612d9dd9d5231759f549c2 (patch)
treea2513359fc4aa030d5d489346fe7ffa91f44e6c2 /target-lm32/cpu.c
parent8d7d505adda444220c93ee5ad09df4176b366bd7 (diff)
downloadqemu-3eab1690851fa68698612d9dd9d5231759f549c2.zip
qemu-3eab1690851fa68698612d9dd9d5231759f549c2.tar.gz
qemu-3eab1690851fa68698612d9dd9d5231759f549c2.tar.bz2
target-lm32: QOM'ify CPU reset
Move code from cpu_state_reset() into QOM lm32_cpu_reset(). Signed-off-by: Andreas Färber <afaerber@suse.de> Acked-by: Michael Walle <michael@walle.cc>
Diffstat (limited to 'target-lm32/cpu.c')
-rw-r--r--target-lm32/cpu.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/target-lm32/cpu.c b/target-lm32/cpu.c
index 70251d0..48a5fe3 100644
--- a/target-lm32/cpu.c
+++ b/target-lm32/cpu.c
@@ -29,9 +29,17 @@ static void lm32_cpu_reset(CPUState *s)
LM32CPUClass *lcc = LM32_CPU_GET_CLASS(cpu);
CPULM32State *env = &cpu->env;
+ if (qemu_loglevel_mask(CPU_LOG_RESET)) {
+ qemu_log("CPU Reset (CPU %d)\n", env->cpu_index);
+ log_cpu_state(env, 0);
+ }
+
lcc->parent_reset(s);
- cpu_state_reset(env);
+ tlb_flush(env, 1);
+
+ /* reset cpu state */
+ memset(env, 0, offsetof(CPULM32State, breakpoints));
}
static void lm32_cpu_initfn(Object *obj)