[arm] EABI annotation of thumb symbols.
Ian Lance Taylor
ian@wasabisystems.com
Thu Nov 4 16:01:00 GMT 2004
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
More information about the Binutils
mailing list