https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113874

--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Florian Weimer from comment #11)
> (In reply to Richard Biener from comment #10)
> > I think a glibc fix would be very much preferred.
> 
> It's a bit of a maintenance nightmare because we have to update the code
> slightly each time new registers are added, and there isn't a good way for
> applications to detect whether they run on a compatible glibc.

But it is what the ABI of GNU2 TLS says or what even dl-tlsdesc.C says:
        /* Preserve call-clobbered registers that we modify.
Yeah, the fact that it can call user-overloaded malloc significantly
complicates
stuff, otherwise it would be just a matter of new registers that can be
modified
while running whatever __tls_get_addr needs and could be changed only when
glibc is rebuilt with some newer compiler which starts modifying further call
clobbered registers.
But with overloaded malloc it can be just if the overloaded malloc is rebuilt
with newer compiler...

Reply via email to