[Mips}Using DT tags for handling local ifuncs

Alan Modra amodra@gmail.com
Thu Dec 12 01:50:00 GMT 2013


On Wed, Dec 11, 2013 at 10:48:43PM +0000, Jack Carter wrote:
> > but the processing order would be:
> > 
> >    local GOT
> >    global GOT
> >    .rel.dyn (including ER GOT)
> 
> So what? It doesn't matter what the order is for processing. The locations matter
> if we think that we might want to tap into the dynsym table later.

The order in which relocations are processed certainly does matter.
ifunc resolver functions are called during relocation processing.  You
don't want to call a resolver before relocations it needs (eg. got
relocs to access a global var) have been applied.

It is possible to enforce this ordering in ld.so, but that means
another pass over dynamic relocations..

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list