On Thu, May 23, 2019 at 10:21:44AM -0500, Bill Schmidt wrote:
> Functions using PC-relative addressing do not use a TOC, so there is no need 
> for
> a global entry point for TOC setup.  Ensure we never generate a global entry
> point, and use a .localentry directive that sets the upper st_other bits to 1.
> Also change a function name for clarity, and move a var decl off of paths
> where it will not be executed, per previous comments by Segher.
> 
> Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no regressions.
> Is this okay for trunk?

Yes please.  Thanks,


Segher


> 2019-05-23  Bill Schmidt  <wschm...@linux.ibm.com>
> 
>       * config/rs6000/rs6000.c (rs6000_global_entry_point_needed_p):
>       Rename to rs6000_global_entry_point_prologue_needed_p.  Return
>       false for PC-relative functions.
>       (rs6000_output_function_prologue): Change called function name to
>       rs6000_global_entry_point_prologue_needed_p.  Emit ".localentry
>       name,1" for PC-relative functions.
>       (rs6000_elf_declare_function_name): Change called function name to
>       rs6000_global_entry_point_prologue_needed_p.
> 
> [gcc/testsuite]
> 
> 2019-05-23  Bill Schmidt  <wschm...@linux.ibm.com>
> 
>       * gcc.target/powerpc/localentry-1.c: New file.

Reply via email to