Commit cfa01aab by Paul Brook

arm.c (arm_compute_save_reg0_reg12_mask): Save PIC register if…

arm.c (arm_compute_save_reg0_reg12_mask): Save PIC register if current_function_uses_pic_offset_table is set.

	* config/arm/arm.c (arm_compute_save_reg0_reg12_mask): Save PIC
	register if current_function_uses_pic_offset_table is set.

From-SVN: r90465
parent ed50f178
2004-11-11 Paul Brook <paul@codesourcery.com>
* config/arm/arm.c (arm_compute_save_reg0_reg12_mask): Save PIC
register if current_function_uses_pic_offset_table is set.
2004-11-10 David Edelsohn <edelsohn@gnu.org> 2004-11-10 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/rs6000.md (define_attr "type"): Add two and three. * config/rs6000/rs6000.md (define_attr "type"): Add two and three.
......
...@@ -8630,6 +8630,12 @@ arm_compute_save_reg0_reg12_mask (void) ...@@ -8630,6 +8630,12 @@ arm_compute_save_reg0_reg12_mask (void)
if (regs_ever_live[reg] if (regs_ever_live[reg]
|| (! current_function_is_leaf && call_used_regs [reg])) || (! current_function_is_leaf && call_used_regs [reg]))
save_reg_mask |= (1 << reg); save_reg_mask |= (1 << reg);
/* Also save the pic base register if neccessary. */
if (flag_pic
&& !TARGET_SINGLE_PIC_BASE
&& current_function_uses_pic_offset_table)
save_reg_mask |= 1 << PIC_OFFSET_TABLE_REGNUM;
} }
else else
{ {
...@@ -8649,8 +8655,9 @@ arm_compute_save_reg0_reg12_mask (void) ...@@ -8649,8 +8655,9 @@ arm_compute_save_reg0_reg12_mask (void)
/* If we aren't loading the PIC register, /* If we aren't loading the PIC register,
don't stack it even though it may be live. */ don't stack it even though it may be live. */
if (flag_pic if (flag_pic
&& ! TARGET_SINGLE_PIC_BASE && !TARGET_SINGLE_PIC_BASE
&& regs_ever_live[PIC_OFFSET_TABLE_REGNUM]) && (regs_ever_live[PIC_OFFSET_TABLE_REGNUM]
|| current_function_uses_pic_offset_table))
save_reg_mask |= 1 << PIC_OFFSET_TABLE_REGNUM; save_reg_mask |= 1 << PIC_OFFSET_TABLE_REGNUM;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment