This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/81036] New: -fcall-saved-X does not work for floating-point registers
- From: "thopre01 at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 09 Jun 2017 14:13:43 +0000
- Subject: [Bug target/81036] New: -fcall-saved-X does not work for floating-point registers
- Auto-submitted: auto-generated
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");
}