aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog7
-rw-r--r--gcc/config/rs6000/rs6000.md8
2 files changed, 13 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 729f70a..91ab03c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2007-03-31 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ PR target/31364
+ * config/rs6000/rs6000.md (call): Convert to LR hard reg for
+ secureplt.
+ (call_value): Likewise.
+
2007-03-31 Wolfgang Bangerth <bangerth@dealii.org>
Manuel Lopez-Ibanez <manu@gcc.gnu.org>
diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md
index 9a26c37..bba0df4 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;