This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [ARM] PR ld/20608


On Wed, Sep 28, 2016 at 01:57:36AM +0200, Christophe Lyon wrote:
> On 23 September 2016 at 01:25, Alan Modra <amodra@gmail.com> wrote:
> > On Thu, Sep 22, 2016 at 04:39:30PM +0100, Richard Earnshaw (lists) wrote:
> >> So this patch got me wondering.  If the PLT slot is so far away that we
> >> need an indirect jump to get there, why don't we clone the PLT code
> >> sequence at the veneer location?  As I recall there's nothing
> >> architectural about placing all the PLT slots together, it's just more
> >> convenient to do that.  We could even have the clone in Thumb-2 code if
> >> that's appropriate, so that it's compatible with tail calls.
> >
> 
> If there are multiple PLT slots for the same function,
> doesn't this break the uniqueness of a function pointer?

Not for powerpc64.  ELFv1 doesn't need the hack of defining a function
on PLT code in an executable, and ELFv2 emits special global entry
stubs for this case.  But, yes, you may need to worry about this on
ARM.

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]