On 3/1/21 7:16 PM, Richard Henderson wrote:
> On 3/1/21 8:49 AM, Claudio Fontana wrote:
>> diff --git a/target/arm/internals.h b/target/arm/internals.h
>> index 05cebc8597..e18d475572 100644
>> --- a/target/arm/internals.h
>> +++ b/target/arm/internals.h
>> @@ -292,21 +292,15 @@ vaddr arm_adjust_watchpoint_address(CPUState *cs,
>> vaddr addr, int len);
>> /* Callback function for when a watchpoint or breakpoint triggers. */
>> void arm_debug_excp_handler(CPUState *cs);
>>
>> -#if defined(CONFIG_USER_ONLY) || !defined(CONFIG_TCG)
>> -static inline bool arm_is_psci_call(ARMCPU *cpu, int excp_type)
>> -{
>> - return false;
>> -}
>> -static inline void arm_handle_psci_call(ARMCPU *cpu)
>> -{
>> - g_assert_not_reached();
>> -}
>> -#else
>
> I don't see that removing this ifdef...
>
>> @@ -10040,11 +10040,13 @@ void arm_cpu_do_interrupt(CPUState *cs)
>> env->exception.syndrome);
>> }
>>
>> +#ifndef CONFIG_USER_ONLY
>> if (arm_is_psci_call(cpu, cs->exception_index)) {
>> arm_handle_psci_call(cpu);
>> qemu_log_mask(CPU_LOG_INT, "...handled as PSCI call\n");
>> return;
>> }
>> +#endif /* CONFIG_USER_ONLY */
>
> ... is an improvement on adding this one. Just leave the static inline stub
> alone. At some point you move the do_interrupt pieces, and the stubs can be
> removed completely, perhaps?
>
>
> r~
>
Yes, agreed.
Thanks, C