On Wed May 22, 2024 at 3:34 AM AEST, Richard Henderson wrote:
> On 5/20/24 18:30, Nicholas Piggin wrote:
> > diff --git a/target/ppc/cpu.h b/target/ppc/cpu.h
> > index c358927211..2532408be0 100644
> > --- a/target/ppc/cpu.h
> > +++ b/target/ppc/cpu.h
> > @@ -3025,6 +3031,12 @@ static inline int check_pow_nocheck(CPUPPCState *env)
> >       return 1;
> >   }
> >   
> > +/* attn enable check                                                       
> >   */
> > +static inline int check_attn_none(CPUPPCState *env)
> > +{
> > +    return 0;
> > +}
>
> No point in putting this here, as a static inline...
>
> > @@ -2138,6 +2158,7 @@ POWERPC_FAMILY(405)(ObjectClass *oc, void *data)
> >       dc->desc = "PowerPC 405";
> >       pcc->init_proc = init_proc_405;
> >       pcc->check_pow = check_pow_nocheck;
> > +    pcc->check_attn = check_attn_none;
>
> ... when the only uses force an out-of-line instance.

Yeah... I was following existing convention (although apparently not
naming convention :/).

>
> Alternately,
>
> > +#if defined(TARGET_PPC64) && !defined(CONFIG_USER_ONLY)
> > +void helper_attn(CPUPPCState *env)
> > +{
> > +    /* POWER attn is unprivileged when enabled by HID, otherwise illegal */
> > +    if ((*env->check_attn)(env)) {
> > +        powerpc_checkstop(env, "host executed attn");
>
> ... allow the hook to be null to indicate no attn.

I'll add a todo list to change this and check_pow to follow this
suggestion.

>
> Otherwise,
> Reviewed-by: Richard Henderson <richard.hender...@linaro.org>

Thanks,
Nick

Reply via email to