* arm.c (thumb_compute_save_reg_mask): Use similar logic to
arm_compure_save_reg0_reg12_mask to determine when the PIC register
must be saved.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@103151
138bc75d-0d04-0410-961f-
82ee72b054a4
+2005-08-15 Richard Earnshaw <richard.earnshaw@arm.com>
+
+ PR target/23355
+ * arm.c (thumb_compute_save_reg_mask): Use similar logic to
+ arm_compure_save_reg0_reg12_mask to determine when the PIC register
+ must be saved.
+
2005-08-15 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR middle-end/23369
if (regs_ever_live[reg] && !call_used_regs[reg])
mask |= 1 << reg;
- if (flag_pic && !TARGET_SINGLE_PIC_BASE)
- mask |= (1 << PIC_OFFSET_TABLE_REGNUM);
-
- if (TARGET_SINGLE_PIC_BASE)
- mask &= ~(1 << arm_pic_register);
+ if (flag_pic
+ && !TARGET_SINGLE_PIC_BASE
+ && current_function_uses_pic_offset_table)
+ mask |= 1 << PIC_OFFSET_TABLE_REGNUM;
/* See if we might need r11 for calls to _interwork_r11_call_via_rN(). */
if (!frame_pointer_needed && CALLER_INTERWORKING_SLOT_SIZE > 0)