mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-09 02:24:58 -06:00
target/arm: Prefer cached CpuClass over CPU_GET_CLASS() macro
CpuState caches its CPUClass since commit 6fbdff8706
("cpu: cache CPUClass in CPUState for hot code paths"),
use it.
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20250122093028.52416-11-philmd@linaro.org>
This commit is contained in:
parent
bd7d742834
commit
0ebdf989c3
2 changed files with 2 additions and 4 deletions
|
@ -830,7 +830,6 @@ static inline bool arm_excp_unmasked(CPUState *cs, unsigned int excp_idx,
|
||||||
|
|
||||||
static bool arm_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
static bool arm_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
||||||
{
|
{
|
||||||
CPUClass *cc = CPU_GET_CLASS(cs);
|
|
||||||
CPUARMState *env = cpu_env(cs);
|
CPUARMState *env = cpu_env(cs);
|
||||||
uint32_t cur_el = arm_current_el(env);
|
uint32_t cur_el = arm_current_el(env);
|
||||||
bool secure = arm_is_secure(env);
|
bool secure = arm_is_secure(env);
|
||||||
|
@ -930,7 +929,7 @@ static bool arm_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
||||||
found:
|
found:
|
||||||
cs->exception_index = excp_idx;
|
cs->exception_index = excp_idx;
|
||||||
env->exception.target_el = target_el;
|
env->exception.target_el = target_el;
|
||||||
cc->tcg_ops->do_interrupt(cs);
|
cs->cc->tcg_ops->do_interrupt(cs);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
|
|
||||||
static bool arm_v7m_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
static bool arm_v7m_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
||||||
{
|
{
|
||||||
CPUClass *cc = CPU_GET_CLASS(cs);
|
|
||||||
ARMCPU *cpu = ARM_CPU(cs);
|
ARMCPU *cpu = ARM_CPU(cs);
|
||||||
CPUARMState *env = &cpu->env;
|
CPUARMState *env = &cpu->env;
|
||||||
bool ret = false;
|
bool ret = false;
|
||||||
|
@ -35,7 +34,7 @@ static bool arm_v7m_cpu_exec_interrupt(CPUState *cs, int interrupt_request)
|
||||||
if (interrupt_request & CPU_INTERRUPT_HARD
|
if (interrupt_request & CPU_INTERRUPT_HARD
|
||||||
&& (armv7m_nvic_can_take_pending_exception(env->nvic))) {
|
&& (armv7m_nvic_can_take_pending_exception(env->nvic))) {
|
||||||
cs->exception_index = EXCP_IRQ;
|
cs->exception_index = EXCP_IRQ;
|
||||||
cc->tcg_ops->do_interrupt(cs);
|
cs->cc->tcg_ops->do_interrupt(cs);
|
||||||
ret = true;
|
ret = true;
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue