target/ppc: prepare to split interrupt masking and delivery by excp_model
Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br> Reviewed-by: Fabiano Rosas <farosas@linux.ibm.com> Message-Id: <20221011204829.1641124-5-matheus.ferst@eldorado.org.br> Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
This commit is contained in:
parent
de76b85c96
commit
ba2898f79f
@ -1684,7 +1684,7 @@ void ppc_cpu_do_interrupt(CPUState *cs)
|
||||
powerpc_excp(cpu, cs->exception_index);
|
||||
}
|
||||
|
||||
static int ppc_next_unmasked_interrupt(CPUPPCState *env)
|
||||
static int ppc_next_unmasked_interrupt_generic(CPUPPCState *env)
|
||||
{
|
||||
bool async_deliver;
|
||||
|
||||
@ -1796,7 +1796,15 @@ static int ppc_next_unmasked_interrupt(CPUPPCState *env)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ppc_deliver_interrupt(CPUPPCState *env, int interrupt)
|
||||
static int ppc_next_unmasked_interrupt(CPUPPCState *env)
|
||||
{
|
||||
switch (env->excp_model) {
|
||||
default:
|
||||
return ppc_next_unmasked_interrupt_generic(env);
|
||||
}
|
||||
}
|
||||
|
||||
static void ppc_deliver_interrupt_generic(CPUPPCState *env, int interrupt)
|
||||
{
|
||||
PowerPCCPU *cpu = env_archcpu(env);
|
||||
CPUState *cs = env_cpu(env);
|
||||
@ -1900,6 +1908,14 @@ static void ppc_deliver_interrupt(CPUPPCState *env, int interrupt)
|
||||
}
|
||||
}
|
||||
|
||||
static void ppc_deliver_interrupt(CPUPPCState *env, int interrupt)
|
||||
{
|
||||
switch (env->excp_model) {
|
||||
default:
|
||||
ppc_deliver_interrupt_generic(env, interrupt);
|
||||
}
|
||||
}
|
||||
|
||||
void ppc_cpu_do_system_reset(CPUState *cs)
|
||||
{
|
||||
PowerPCCPU *cpu = POWERPC_CPU(cs);
|
||||
|
Loading…
Reference in New Issue
Block a user