I don't understand meaning of this: +"a function to be evaluated during reloc processing"

92 views Asked by At

I don't understand meaning of this: +"a function to be evaluated during reloc processing" - it is from flags of objdump.

How function can be evaluated during reloc processing? Is it sequence of cpu opcodes (subrotinue) that must be called? Or what?

1

There are 1 answers

0
rcm On

https://sourceware.org/glibc/wiki/GNU_IFUNC

ifunc symbol points to resolver, which is itself in object file, and linker sees it and calls with some args which it knows somehow... and gets back address of best implementation of function. That is what called EVALUATION.

It is all done for sake of performance. Attempt to choose best code for specific CPU.