https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118328
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Note most of the use cases in my view for these attributes. These attributes are there specifically to work around the fact that llvm does not do ipa ra and the compiler does not record which registers are already preserved. I suspect gcc code generation is already decent .