https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113874
--- Comment #25 from Jakub Jelinek <jakub at gcc dot gnu.org> --- (In reply to H.J. Lu from comment #23) > > And i386/dl-tlsdesc.S needs to save/restore 387 and SSE regs? > > i386 doesn't preserve them in _dl_runtime_resolve nor _dl_tlsdesc_dynamic. That is different. _dl_runtime_resolve happens only at the start of calls to functions, if in all supported ia32 ABIs all of i387 state is unsupported upon entering functions, then there is no need to save anything. While _dl_tlsdesc_dynamic can happen anywhere from within functions and doesn't clobber any registers except ax which gets the value, so I think it needs to be saved for that case.