mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 18:44:58 -06:00
cpu: move cc->do_interrupt to tcg_ops
Signed-off-by: Claudio Fontana <cfontana@suse.de> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20210204163931.7358-10-cfontana@suse.de> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
853bfef4e6
commit
0545608056
27 changed files with 41 additions and 42 deletions
|
@ -199,7 +199,7 @@ static void crisv8_cpu_class_init(ObjectClass *oc, void *data)
|
|||
CRISCPUClass *ccc = CRIS_CPU_CLASS(oc);
|
||||
|
||||
ccc->vr = 8;
|
||||
cc->do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->tcg_ops.do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->gdb_read_register = crisv10_cpu_gdb_read_register;
|
||||
cc->tcg_ops.initialize = cris_initialize_crisv10_tcg;
|
||||
}
|
||||
|
@ -210,7 +210,7 @@ static void crisv9_cpu_class_init(ObjectClass *oc, void *data)
|
|||
CRISCPUClass *ccc = CRIS_CPU_CLASS(oc);
|
||||
|
||||
ccc->vr = 9;
|
||||
cc->do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->tcg_ops.do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->gdb_read_register = crisv10_cpu_gdb_read_register;
|
||||
cc->tcg_ops.initialize = cris_initialize_crisv10_tcg;
|
||||
}
|
||||
|
@ -221,7 +221,7 @@ static void crisv10_cpu_class_init(ObjectClass *oc, void *data)
|
|||
CRISCPUClass *ccc = CRIS_CPU_CLASS(oc);
|
||||
|
||||
ccc->vr = 10;
|
||||
cc->do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->tcg_ops.do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->gdb_read_register = crisv10_cpu_gdb_read_register;
|
||||
cc->tcg_ops.initialize = cris_initialize_crisv10_tcg;
|
||||
}
|
||||
|
@ -232,7 +232,7 @@ static void crisv11_cpu_class_init(ObjectClass *oc, void *data)
|
|||
CRISCPUClass *ccc = CRIS_CPU_CLASS(oc);
|
||||
|
||||
ccc->vr = 11;
|
||||
cc->do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->tcg_ops.do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->gdb_read_register = crisv10_cpu_gdb_read_register;
|
||||
cc->tcg_ops.initialize = cris_initialize_crisv10_tcg;
|
||||
}
|
||||
|
@ -243,7 +243,7 @@ static void crisv17_cpu_class_init(ObjectClass *oc, void *data)
|
|||
CRISCPUClass *ccc = CRIS_CPU_CLASS(oc);
|
||||
|
||||
ccc->vr = 17;
|
||||
cc->do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->tcg_ops.do_interrupt = crisv10_cpu_do_interrupt;
|
||||
cc->gdb_read_register = crisv10_cpu_gdb_read_register;
|
||||
cc->tcg_ops.initialize = cris_initialize_crisv10_tcg;
|
||||
}
|
||||
|
@ -268,7 +268,7 @@ static void cris_cpu_class_init(ObjectClass *oc, void *data)
|
|||
|
||||
cc->class_by_name = cris_cpu_class_by_name;
|
||||
cc->has_work = cris_cpu_has_work;
|
||||
cc->do_interrupt = cris_cpu_do_interrupt;
|
||||
cc->tcg_ops.do_interrupt = cris_cpu_do_interrupt;
|
||||
cc->tcg_ops.cpu_exec_interrupt = cris_cpu_exec_interrupt;
|
||||
cc->dump_state = cris_cpu_dump_state;
|
||||
cc->set_pc = cris_cpu_set_pc;
|
||||
|
|
|
@ -299,7 +299,7 @@ bool cris_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
|||
&& (env->pregs[PR_CCS] & I_FLAG)
|
||||
&& !env->locked_irq) {
|
||||
cs->exception_index = EXCP_IRQ;
|
||||
cc->do_interrupt(cs);
|
||||
cc->tcg_ops.do_interrupt(cs);
|
||||
ret = true;
|
||||
}
|
||||
if (interrupt_request & CPU_INTERRUPT_NMI) {
|
||||
|
@ -311,7 +311,7 @@ bool cris_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
|||
}
|
||||
if ((env->pregs[PR_CCS] & m_flag_archval)) {
|
||||
cs->exception_index = EXCP_NMI;
|
||||
cc->do_interrupt(cs);
|
||||
cc->tcg_ops.do_interrupt(cs);
|
||||
ret = true;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue