فهرست منبع

target-ppc: Use cpu_exec_enter qom hook

Cc: qemu-ppc@nongnu.org
Signed-off-by: Richard Henderson <rth@twiddle.net>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Message-id: 1410626734-3804-6-git-send-email-rth@twiddle.net
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Richard Henderson 11 سال پیش
والد
کامیت
774f0abeae
2فایلهای تغییر یافته به همراه9 افزوده شده و 3 حذف شده
  1. 0 3
      cpu-exec.c
  2. 9 0
      target-ppc/translate_init.c

+ 0 - 3
cpu-exec.c

@@ -352,9 +352,6 @@ int cpu_exec(CPUArchState *env)
         cpu->exit_request = 1;
     }
 
-#if defined(TARGET_PPC)
-    env->reserve_addr = -1;
-#endif
     cc->cpu_exec_enter(cpu);
     cpu->exception_index = -1;
 

+ 9 - 0
target-ppc/translate_init.c

@@ -9456,6 +9456,14 @@ static bool ppc_cpu_has_work(CPUState *cs)
     return msr_ee && (cs->interrupt_request & CPU_INTERRUPT_HARD);
 }
 
+static void ppc_cpu_exec_enter(CPUState *cs)
+{
+    PowerPCCPU *cpu = POWERPC_CPU(cs);
+    CPUPPCState *env = &cpu->env;
+
+    env->reserve_addr = -1;
+}
+
 /* CPUClass::reset() */
 static void ppc_cpu_reset(CPUState *s)
 {
@@ -9638,6 +9646,7 @@ static void ppc_cpu_class_init(ObjectClass *oc, void *data)
     cc->write_elf64_qemunote = ppc64_cpu_write_elf64_qemunote;
 #endif
 #endif
+    cc->cpu_exec_enter = ppc_cpu_exec_enter;
 
     cc->gdb_num_core_regs = 71;