RFC: Add ___tls_get_addr
H.J. Lu
hjl.tools@gmail.com
Wed Jul 5 15:38:00 GMT 2017
On x86-64, __tls_get_addr has to realigns stack so that binaries compiled by
GCCs older than GCC 4.9.4:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58066
continue to work even if vector instructions are used by functions called
from __tls_get_addr, which assumes 16-byte stack alignment as specified
by x86-64 psABI.
We are considering to add an alternative interface, ___tls_get_addr, to
glibc, which doesn't realign stack. Compilers, which properly align stack
for TLS, call generate call to ___tls_get_addr, instead of __tls_get_addr,
if ___tls_get_addr is available.
Any comments?
--
H.J.
More information about the Gcc
mailing list