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