https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81036
Bug ID: 81036 Summary: -fcall-saved-X does not work for floating-point registers Product: gcc Version: 8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: thopre01 at gcc dot gnu.org Target Milestone: --- Target: arm*-*-* Hi, When compiling the below testcase with "-S -march=armv7-a -fcall-saved-s14 -mfpu=vfpv4 -mfloat-abi=hard" the compiler fails to generate the save/restore sequence for S14. void saved_regs (void) { __asm volatile ("" ::: "s14"); } Similarly, compiling the below testcase with "-S -march=armv7-a -fcall-used-s16 -mfpu=vfpv4 -mfloat-abi=hard" does not get rid of the save/restore sequence for S16. void saved_regs (void) { __asm volatile ("" ::: "s16"); }