https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84761
--- Comment #1 from Florian Weimer <fw at gcc dot gnu.org> --- This bit needs to change for glibc 2.27 and later: #ifdef __i386__ # define DL_INTERNAL_FUNCTION __attribute__((regparm(3), stdcall)) #else # define DL_INTERNAL_FUNCTION #endif We removed the regparm attribute for compatibility with CET. The GCC manual says that regparm (3) is ABI-compatible on i386, but it really is not. We could perhaps add an alias to newer glibcs (including 2.27), so that libasan can detect that glibc is more recent and call the function with the right ABI. Or expose the information via dlinfo (but the interface is problematic because it assumes that the static TLS size is fixed—we could eventually switch to a model where we have a larger reserved region for the initial thread).