On Mon, Jul 11, 2011 at 10:42:27AM +0100, Richard Sandiford wrote:
Dave Martin dave.martin@linaro.org writes:
IFUNC doesn't solve the problem because either it gets resolved lazily (violating the above principle (*)), or we have to force _all_ symbols to resolve at startup, with may have a significant impact on startup time for large programs.
IFUNCs are never resolved lazily; that's one way in which they differ from PLTs.
(BTW, in response to a comment upthread, ARM does support IFUNCs now.)
Do you know when support was merged in eglibc?
For example, Linaro binutils 2.21.0.20110327-2ubuntu3 appears to support IFUNC, but the natty version of eglibc (2.13-0ubuntu13) does not handle it correctly.
Cheers ---Dave