aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2012-05-15 07:41:00 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2012-05-15 07:41:00 +0000
commitf65e3801ce5cc7be12b40ce8827718d158643a72 (patch)
tree5093ddf1cbe45d763ff9127df20575e224f318c3
parentf301837ea38782f232b7db3e1e0eb51a03819240 (diff)
downloadgcc-f65e3801ce5cc7be12b40ce8827718d158643a72.zip
gcc-f65e3801ce5cc7be12b40ce8827718d158643a72.tar.gz
gcc-f65e3801ce5cc7be12b40ce8827718d158643a72.tar.bz2
ia64.c (ia64_emit_probe_stack_range): Adjust calls to plus_constant.
* config/ia64/ia64.c (ia64_emit_probe_stack_range): Adjust calls to plus_constant. From-SVN: r187499
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/ia64/ia64.c9
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index e2f6509..608a68a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2012-05-15 Tristan Gingold <gingold@adacore.com>
+
+ * config/ia64/ia64.c (ia64_emit_probe_stack_range): Adjust calls to
+ plus_constant.
+
2012-05-15 Eric Botcazou <ebotcazou@adacore.com>
* gimplify.c (gimplify_init_constructor): Do a block move for very
diff --git a/gcc/config/ia64/ia64.c b/gcc/config/ia64/ia64.c
index ccffa37..8fb5b40 100644
--- a/gcc/config/ia64/ia64.c
+++ b/gcc/config/ia64/ia64.c
@@ -3276,7 +3276,7 @@ ia64_emit_probe_stack_range (HOST_WIDE_INT first, HOST_WIDE_INT size, int sol)
size is at least 4096 - (96 + 2) * 8 = 3312 bytes, which is enough.
Also compute the address of the last probe for the memory stack
(which grows towards lower addresses). */
- emit_insn (gen_rtx_SET (VOIDmode, r3, plus_constant (r3, 4095)));
+ emit_insn (gen_rtx_SET (VOIDmode, r3, plus_constant (Pmode, r3, 4095)));
emit_insn (gen_rtx_SET (VOIDmode, r2,
gen_rtx_PLUS (Pmode, stack_pointer_rtx, r2)));
@@ -3328,12 +3328,12 @@ ia64_emit_probe_stack_range (HOST_WIDE_INT first, HOST_WIDE_INT size, int sol)
for (i = 2 * PROBE_INTERVAL; i < size; i += PROBE_INTERVAL)
{
emit_insn (gen_rtx_SET (VOIDmode, r2,
- plus_constant (r2, -PROBE_INTERVAL)));
+ plus_constant (Pmode, r2, -PROBE_INTERVAL)));
emit_stack_probe (r2);
}
emit_insn (gen_rtx_SET (VOIDmode, r2,
- plus_constant (r2,
+ plus_constant (Pmode, r2,
(i - PROBE_INTERVAL) - size)));
emit_stack_probe (r2);
}
@@ -3394,7 +3394,8 @@ ia64_emit_probe_stack_range (HOST_WIDE_INT first, HOST_WIDE_INT size, int sol)
if (size != rounded_size)
{
emit_insn (gen_rtx_SET (VOIDmode, r2,
- plus_constant (r2, rounded_size - size)));
+ plus_constant (Pmode, r2,
+ rounded_size - size)));
emit_stack_probe (r2);
}
}