* arm.c (arm_get_frame_offsets): Don't use fixed regs for
stack alignment padding.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@189807
138bc75d-0d04-0410-961f-
82ee72b054a4
+2012-07-24 Roland McGrath <mcgrathr@google.com>
+
+ * arm.c (arm_get_frame_offsets): Don't use fixed regs for
+ stack alignment padding.
+
2012-07-24 Uros Bizjak <ubizjak@gmail.com>
PR target/53961
else
for (i = 4; i <= (TARGET_THUMB1 ? LAST_LO_REGNUM : 11); i++)
{
- if ((offsets->saved_regs_mask & (1 << i)) == 0)
+ /* Avoid fixed registers; they may be changed at
+ arbitrary times so it's unsafe to restore them
+ during the epilogue. */
+ if (!fixed_regs[i]
+ && (offsets->saved_regs_mask & (1 << i)) == 0)
{
reg = i;
break;