This is the mail archive of the binutils@sources.redhat.com 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] EABI annotation of thumb symbols.


Richard Earnshaw <rearnsha@arm.com> writes:

> Ultimately it depends on the performance you want out of your code.  If
> performance is not a goal at all, then you could probably squeeze each
> PLT stub down to about 4 bytes, with
> 
> 	mov	ip, pc
> 	b	common_plt
> 
> (and if the plt cannot reach common_plt, then chain it to one that
> can).  common_plt can do all manner of things, provided that at the
> point at which it calls into the target function things are set up
> correctly in case we end up in the dynamic linker.  But remember that
> the sequence above depends critically on each PLT sequence being the
> same length and on them all being located sequentially in memory (so
> that the PC value can be converted algorithmically into a PLTGOT value).

Omitting the offset word from each entry is a good idea.  Thanks.
Unfortunately even trickier to implement when the PLT is larger than
4096 bytes.

Ian


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