Hi!

> +       /* As ELFv2 ABI shows, the allowable bytes past the global entry
> +          point are 0, 4, 8, 16, 32 and 64.  Considering there are two
> +          non-prefixed instructions for global entry (8 bytes), the count
> +          for patchable NOPs before local entry would be 2, 6 and 14.  */

The other option is to allow other numbers of nops, but in that case not
have a local entry point (so, always use the global entry point).

I don't know if that is useful for any users of this support (if there
even are such users :-P )

> +       if (patch_area_entry > 0)
> +         {
> +           if (patch_area_entry != 2
> +               && patch_area_entry != 6
> +               && patch_area_entry != 14)
> +             error ("for %<-fpatchable-function-entry=%u,%u%>, patching "
> +                    "%u NOP(s) before function entry is invalid, it can "
> +                    "cause assembler error",

I would not say "it can [etc.]" at all.  Oh, and "NOP" (capitals) isn't
a thing, it is not an acronym or such ;-)

> +/* { dg-require-effective-target powerpc_elfv2 } */
> +/* Specify -mcpu=power9 to ensure global entry is needed.  */
> +/* { dg-options "-mdejagnu-cpu=power9" } */

Why would it be needed for p9, and not older, or newer?

Every function always has a GEP, so I'm not sure what you are trying to
say here anyway :-)


Rest looks good to me.


Segher

Reply via email to