https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77882
--- Comment #7 from Andrew Pinski <pinskia at gcc dot gnu.org> --- The problem with the naked attribute is usually it is not well defined. For things like interrupts functions and interrupt returns, there is always plain .s files. Interrupts usually save/restore all registers including the floating point ones. So they are large. The float point ones can get complex now with SVE too.