[cfe-dev] ifunc resolver parameters

Ed Maste via cfe-dev cfe-dev at lists.llvm.org
Sat Sep 29 13:38:24 PDT 2018


When ifunc support was added to Clang with r265917
http://llvm.org/viewvc/llvm-project?rev=265917&view=rev it did not
allow resolvers to take parameters. It appears GCC documents ifunc
resolvers as taking no parameters, but GCC in fact allows it.

In FreeBSD our rtld passes machine-dependent CPU ID information to
ifunc resolvers, and we had to remove the prohibition:
https://svnweb.freebsd.org/changeset/base/339019.

In the glibc world, as far as I can tell it in fact passes dl_hwcap on
several architectures (but not on x86 or x86_64).

I believe GCC's documentation is simply incorrect. Is there any reason
not to just remove this check and error case from Clang?



More information about the cfe-dev mailing list