aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog13
-rw-r--r--gcc/asan.c2
-rw-r--r--gcc/builtins.c3
-rw-r--r--gcc/dwarf2cfi.c3
-rw-r--r--gcc/except.c2
-rw-r--r--gcc/expr.c21
-rw-r--r--gcc/lra-constraints.c4
-rw-r--r--gcc/ree.c3
-rw-r--r--gcc/regmove.c3
-rw-r--r--gcc/reload1.c4
10 files changed, 44 insertions, 14 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 76b7ca9..dc7f1af 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,18 @@
2013-09-09 Richard Sandiford <rdsandiford@googlemail.com>
+ * asan.c (asan_emit_stack_protection): Use gen_int_mode instead of
+ GEN_INT.
+ * builtins.c (expand_errno_check): Likewise.
+ * dwarf2cfi.c (init_return_column_size): Likewise.
+ * except.c (sjlj_mark_call_sites): Likewise.
+ * expr.c (move_by_pieces_1, store_by_pieces_2): Likewise.
+ * lra-constraints.c (emit_inc): Likewise.
+ * ree.c (combine_set_extension): Likewise.
+ * regmove.c (fixup_match_2): Likewise.
+ * reload1.c (inc_for_reload): Likewise.
+
+2013-09-09 Richard Sandiford <rdsandiford@googlemail.com>
+
* combine.c (simplify_set, expand_field_assignment, extract_left_shift)
(force_to_mode, simplify_shift_const_1, simplify_comparison):
Use gen_int_mode with the mode of the associated simplify_* call.
diff --git a/gcc/asan.c b/gcc/asan.c
index 844d53e..afe5260 100644
--- a/gcc/asan.c
+++ b/gcc/asan.c
@@ -970,7 +970,7 @@ asan_emit_stack_protection (rtx base, HOST_WIDE_INT *offsets, tree *decls,
gen_int_mode (base_offset, Pmode),
NULL_RTX, 1, OPTAB_DIRECT);
mem = gen_rtx_MEM (ptr_mode, base);
- emit_move_insn (mem, GEN_INT (ASAN_STACK_FRAME_MAGIC));
+ emit_move_insn (mem, gen_int_mode (ASAN_STACK_FRAME_MAGIC, ptr_mode));
mem = adjust_address (mem, VOIDmode, GET_MODE_SIZE (ptr_mode));
emit_move_insn (mem, expand_normal (str_cst));
shadow_base = expand_binop (Pmode, lshr_optab, base,
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 6f690c7..3cee9e9 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -1967,7 +1967,8 @@ expand_errno_check (tree exp, rtx target)
rtx errno_rtx
= gen_rtx_MEM (word_mode, gen_rtx_SYMBOL_REF (Pmode, "errno"));
#endif
- emit_move_insn (errno_rtx, GEN_INT (TARGET_EDOM));
+ emit_move_insn (errno_rtx,
+ gen_int_mode (TARGET_EDOM, GET_MODE (errno_rtx)));
emit_label (lab);
return;
}
diff --git a/gcc/dwarf2cfi.c b/gcc/dwarf2cfi.c
index ee8d42c..12256bc 100644
--- a/gcc/dwarf2cfi.c
+++ b/gcc/dwarf2cfi.c
@@ -246,7 +246,8 @@ init_return_column_size (enum machine_mode mode, rtx mem, unsigned int c)
{
HOST_WIDE_INT offset = c * GET_MODE_SIZE (mode);
HOST_WIDE_INT size = GET_MODE_SIZE (Pmode);
- emit_move_insn (adjust_address (mem, mode, offset), GEN_INT (size));
+ emit_move_insn (adjust_address (mem, mode, offset),
+ gen_int_mode (size, mode));
}
/* Generate code to initialize the register size table. */
diff --git a/gcc/except.c b/gcc/except.c
index 2d41d7b..c4ed944 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -1156,7 +1156,7 @@ sjlj_mark_call_sites (void)
start_sequence ();
mem = adjust_address (crtl->eh.sjlj_fc, TYPE_MODE (integer_type_node),
sjlj_fc_call_site_ofs);
- emit_move_insn (mem, GEN_INT (this_call_site));
+ emit_move_insn (mem, gen_int_mode (this_call_site, GET_MODE (mem)));
p = get_insns ();
end_sequence ();
diff --git a/gcc/expr.c b/gcc/expr.c
index 89bd49a..0887391 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -1071,10 +1071,12 @@ move_by_pieces_1 (insn_gen_fn genfun, machine_mode mode,
if (HAVE_PRE_DECREMENT && data->explicit_inc_to < 0)
emit_insn (gen_add2_insn (data->to_addr,
- GEN_INT (-(HOST_WIDE_INT)size)));
+ gen_int_mode (-(HOST_WIDE_INT) size,
+ GET_MODE (data->to_addr))));
if (HAVE_PRE_DECREMENT && data->explicit_inc_from < 0)
emit_insn (gen_add2_insn (data->from_addr,
- GEN_INT (-(HOST_WIDE_INT)size)));
+ gen_int_mode (-(HOST_WIDE_INT) size,
+ GET_MODE (data->from_addr))));
if (data->to)
emit_insn ((*genfun) (to1, from1));
@@ -1088,9 +1090,13 @@ move_by_pieces_1 (insn_gen_fn genfun, machine_mode mode,
}
if (HAVE_POST_INCREMENT && data->explicit_inc_to > 0)
- emit_insn (gen_add2_insn (data->to_addr, GEN_INT (size)));
+ emit_insn (gen_add2_insn (data->to_addr,
+ gen_int_mode (size,
+ GET_MODE (data->to_addr))));
if (HAVE_POST_INCREMENT && data->explicit_inc_from > 0)
- emit_insn (gen_add2_insn (data->from_addr, GEN_INT (size)));
+ emit_insn (gen_add2_insn (data->from_addr,
+ gen_int_mode (size,
+ GET_MODE (data->from_addr))));
if (! data->reverse)
data->offset += size;
@@ -2676,13 +2682,16 @@ store_by_pieces_2 (insn_gen_fn genfun, machine_mode mode,
if (HAVE_PRE_DECREMENT && data->explicit_inc_to < 0)
emit_insn (gen_add2_insn (data->to_addr,
- GEN_INT (-(HOST_WIDE_INT) size)));
+ gen_int_mode (-(HOST_WIDE_INT) size,
+ GET_MODE (data->to_addr))));
cst = (*data->constfun) (data->constfundata, data->offset, mode);
emit_insn ((*genfun) (to1, cst));
if (HAVE_POST_INCREMENT && data->explicit_inc_to > 0)
- emit_insn (gen_add2_insn (data->to_addr, GEN_INT (size)));
+ emit_insn (gen_add2_insn (data->to_addr,
+ gen_int_mode (size,
+ GET_MODE (data->to_addr))));
if (! data->reverse)
data->offset += size;
diff --git a/gcc/lra-constraints.c b/gcc/lra-constraints.c
index ee72f7f..4d59b5a 100644
--- a/gcc/lra-constraints.c
+++ b/gcc/lra-constraints.c
@@ -2837,7 +2837,9 @@ emit_inc (enum reg_class new_rclass, rtx in, rtx value, int inc_amount)
if (plus_p)
{
if (CONST_INT_P (inc))
- emit_insn (gen_add2_insn (result, GEN_INT (-INTVAL (inc))));
+ emit_insn (gen_add2_insn (result,
+ gen_int_mode (-INTVAL (inc),
+ GET_MODE (result))));
else
emit_insn (gen_sub2_insn (result, inc));
}
diff --git a/gcc/ree.c b/gcc/ree.c
index 4dab6e9..541bdb5 100644
--- a/gcc/ree.c
+++ b/gcc/ree.c
@@ -298,7 +298,8 @@ combine_set_extension (ext_cand *cand, rtx curr_insn, rtx *orig_set)
the source mode. */
enum machine_mode src_mode = GET_MODE (SET_DEST (*orig_set));
rtx new_const_int
- = GEN_INT (INTVAL (orig_src) & GET_MODE_MASK (src_mode));
+ = gen_int_mode (INTVAL (orig_src) & GET_MODE_MASK (src_mode),
+ GET_MODE (new_reg));
new_set = gen_rtx_SET (VOIDmode, new_reg, new_const_int);
}
}
diff --git a/gcc/regmove.c b/gcc/regmove.c
index da7fac9..e579a7a 100644
--- a/gcc/regmove.c
+++ b/gcc/regmove.c
@@ -786,7 +786,8 @@ fixup_match_2 (rtx insn, rtx dst, rtx src, rtx offset)
{
HOST_WIDE_INT newconst
= INTVAL (offset) - INTVAL (XEXP (SET_SRC (pset), 1));
- rtx add = gen_add3_insn (dst, dst, GEN_INT (newconst));
+ rtx add = gen_add3_insn (dst, dst,
+ gen_int_mode (newconst, GET_MODE (dst)));
if (add && validate_change (insn, &PATTERN (insn), add, 0))
{
diff --git a/gcc/reload1.c b/gcc/reload1.c
index db18381..7a82c07e 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -9157,7 +9157,9 @@ inc_for_reload (rtx reloadreg, rtx in, rtx value, int inc_amount)
emit_insn (gen_add2_insn (reloadreg, inc));
emit_insn (gen_move_insn (incloc, reloadreg));
if (CONST_INT_P (inc))
- emit_insn (gen_add2_insn (reloadreg, GEN_INT (-INTVAL (inc))));
+ emit_insn (gen_add2_insn (reloadreg,
+ gen_int_mode (-INTVAL (inc),
+ GET_MODE (reloadreg))));
else
emit_insn (gen_sub2_insn (reloadreg, inc));
}