Hi Segher,
Thanks for the review comments!
on 2022/9/28 23:22, Segher Boessenkool wrote:
> Hi!
>
> On Thu, Aug 25, 2022 at 01:50:28PM +0800, Kewen.Lin wrote:
>> --- a/gcc/config/rs6000/rs6000-internal.h
>> +++ b/gcc/config/rs6000/rs6000-internal.h
>> @@ -183,10 +183,15 @@ extern tree rs6000_fold_builtin (tree fndecl
>> ATTRIBUTE_UNUSED,
>> tree *args ATTRIBUTE_UNUSED,
>> bool ignore ATTRIBUTE_UNUSED);
>>
>> +extern void rs6000_print_patchable_function_entry (FILE *,
>> + unsigned HOST_WIDE_INT,
>> + bool);
>> +
>> extern bool rs6000_passes_float;
>> extern bool rs6000_passes_long_double;
>> extern bool rs6000_passes_vector;
>> extern bool rs6000_returns_struct;
>> extern bool cpu_builtin_p;
>>
>> +
>> #endif
>
> No new random empty lines please.
>
>> + point would be 2, 6 and 14. It's possible to support those
>> + other counts of nops by not making a local entry point, but
>> + we don't have clear user cases for them, so leave them
>
> "use cases"
>
>> --- a/gcc/doc/invoke.texi
>> +++ b/gcc/doc/invoke.texi
>> @@ -16717,9 +16717,13 @@ the area size or to remove it completely on a
>> single function.
>> If @code{N=0}, no pad location is recorded.
>>
>> The NOP instructions are inserted at---and maybe before, depending on
>> -@var{M}---the function entry address, even before the prologue.
>> +@var{M}---the function entry address, even before the prologue. On
>> +PowerPC with the ELFv2 ABI, for one function with dual entry points,
>> +the local entry point is taken as the function entry for generation.
>
> I think "the local entry point is this function entry address" is a bit
> clearer.
>
>> -The maximum value of @var{N} and @var{M} is 65535.
>> +The maximum value of @var{N} and @var{M} is 65535. On PowerPC with the
>> +ELFv2 ABI, for one function with dual entry points, the supported values
>> +for @var{M} are 0, 2, 6 and 14.
>
> "for a function"
>
> Okay for trunk with those trivial chnges. Thanks!
>
Updated as all above comments, re-tested and committed in r13-2984. Thanks!
BR,
Kewen