diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 729f70a97b0..91ab03c1af7 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2007-03-31 Andrew Pinski + + PR target/31364 + * config/rs6000/rs6000.md (call): Convert to LR hard reg for + secureplt. + (call_value): Likewise. + 2007-03-31 Wolfgang Bangerth Manuel Lopez-Ibanez diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 9a26c37dc2d..bba0df4a438 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -10715,7 +10715,9 @@ gen_rtx_MEM (SImode, operands[0]), operands[1]), gen_rtx_USE (VOIDmode, operands[2]), - gen_rtx_CLOBBER (VOIDmode, gen_rtx_SCRATCH (SImode))); + gen_rtx_CLOBBER (VOIDmode, + gen_rtx_REG (Pmode, + LINK_REGISTER_REGNUM))); call = emit_call_insn (gen_rtx_PARALLEL (VOIDmode, tmp)); use_reg (&CALL_INSN_FUNCTION_USAGE (call), pic_offset_table_rtx); DONE; @@ -10788,7 +10790,9 @@ operands[1]), operands[2])), gen_rtx_USE (VOIDmode, operands[3]), - gen_rtx_CLOBBER (VOIDmode, gen_rtx_SCRATCH (SImode))); + gen_rtx_CLOBBER (VOIDmode, + gen_rtx_REG (Pmode, + LINK_REGISTER_REGNUM))); call = emit_call_insn (gen_rtx_PARALLEL (VOIDmode, tmp)); use_reg (&CALL_INSN_FUNCTION_USAGE (call), pic_offset_table_rtx); DONE;