This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] Expand PIC calls without PLT with -fno-plt
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Jeff Law <law at redhat dot com>
- Cc: Alexander Monakov <amonakov at ispras dot ru>, gcc-patches at gcc dot gnu dot org, Rich Felker <dalias at libc dot org>
- Date: Mon, 4 May 2015 19:39:55 +0200
- Subject: Re: [PATCH] Expand PIC calls without PLT with -fno-plt
- Authentication-results: sourceware.org; auth=none
- References: <1430757479-14241-1-git-send-email-amonakov at ispras dot ru> <1430757479-14241-6-git-send-email-amonakov at ispras dot ru> <5547AD8D dot 9080806 at redhat dot com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Mon, May 04, 2015 at 11:34:05AM -0600, Jeff Law wrote:
> On 05/04/2015 10:37 AM, Alexander Monakov wrote:
> >This patch introduces option -fno-plt that allows to expand calls that would
> >go via PLT to load the address of the function immediately at call site (which
> >introduces a GOT load). Cover letter explains the motivation for this patch.
> >New option documentation for invoke.texi is missing from the patch; if this is
> >accepted I'll be happy to send a v2 with documentation added.
> > * calls.c (prepare_call_address): Transform PLT call to GOT lookup and
> > indirect call by forcing address into a pseudo with -fno-plt.
> > * common.opt (flag_plt): New option.
> OK once you cobble together the invoke.texi changes.
Isn't what Michael/Alan suggested better? I mean as/ld/compiler changes to
inline the plt slot's first part, then lazy binding will work fine.