@@ -34,10 +34,12 @@ static void nios2_cpu_set_pc(CPUState *cs, vaddr value)
env->regs[R_PC] = value;
}
+#if defined(CONFIG_TCG) && !defined(CONFIG_USER_ONLY)
static bool nios2_cpu_has_work(CPUState *cs)
{
return cs->interrupt_request & (CPU_INTERRUPT_HARD | CPU_INTERRUPT_NMI);
}
+#endif /* CONFIG_TCG && !CONFIG_USER_ONLY */
static void nios2_cpu_reset(DeviceState *dev)
{
@@ -223,6 +225,7 @@ static const struct TCGCPUOps nios2_tcg_ops = {
.tlb_fill = nios2_cpu_tlb_fill,
#ifndef CONFIG_USER_ONLY
+ .has_work = nios2_cpu_has_work,
.cpu_exec_interrupt = nios2_cpu_exec_interrupt,
.do_interrupt = nios2_cpu_do_interrupt,
.do_unaligned_access = nios2_cpu_do_unaligned_access,
@@ -241,7 +244,6 @@ static void nios2_cpu_class_init(ObjectClass *oc, void *data)
device_class_set_parent_reset(dc, nios2_cpu_reset, &ncc->parent_reset);
cc->class_by_name = nios2_cpu_class_by_name;
- cc->has_work = nios2_cpu_has_work;
cc->dump_state = nios2_cpu_dump_state;
cc->set_pc = nios2_cpu_set_pc;
cc->disas_set_info = nios2_cpu_disas_set_info;
Restrict has_work() to TCG sysemu. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> --- target/nios2/cpu.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)