diff options
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 29 |
1 files changed, 18 insertions, 11 deletions
@@ -646,8 +646,9 @@ convert_move (rtx to, rtx from, int unsignedp) /* No suitable intermediate mode. Generate what we need with shifts. */ - shift_amount = build_int_2 (GET_MODE_BITSIZE (to_mode) - - GET_MODE_BITSIZE (from_mode), 0); + shift_amount = build_int_cst (NULL_TREE, + GET_MODE_BITSIZE (to_mode) + - GET_MODE_BITSIZE (from_mode), 0); from = gen_lowpart (to_mode, force_reg (from_mode, from)); tmp = expand_shift (LSHIFT_EXPR, to_mode, from, shift_amount, to, unsignedp); @@ -1712,7 +1713,8 @@ emit_group_load (rtx dst, rtx orig_src, tree type ATTRIBUTE_UNUSED, int ssize) if (shift) tmps[i] = expand_shift (LSHIFT_EXPR, mode, tmps[i], - build_int_2 (shift, 0), tmps[i], 0); + build_int_cst (NULL_TREE, + shift, 0), tmps[i], 0); } /* Copy the extracted pieces into the proper (probable) hard regs. */ @@ -1823,7 +1825,8 @@ emit_group_store (rtx orig_dst, rtx src, tree type ATTRIBUTE_UNUSED, int ssize) { int shift = (bytelen - (ssize - bytepos)) * BITS_PER_UNIT; tmps[i] = expand_shift (RSHIFT_EXPR, mode, tmps[i], - build_int_2 (shift, 0), tmps[i], 0); + build_int_cst (NULL_TREE, + shift, 0), tmps[i], 0); } bytelen = ssize - bytepos; } @@ -3670,8 +3673,8 @@ expand_assignment (tree to, tree from, int want_value) NULL_RTX); binop = xor_optab; } - value = expand_shift (LSHIFT_EXPR, GET_MODE (str_rtx), - value, build_int_2 (bitpos1, 0), + value = expand_shift (LSHIFT_EXPR, GET_MODE (str_rtx), value, + build_int_cst (NULL_TREE,bitpos1, 0), NULL_RTX, 1); result = expand_binop (GET_MODE (str_rtx), binop, str_rtx, value, str_rtx, 1, OPTAB_WIDEN); @@ -4582,7 +4585,8 @@ store_constructor (tree exp, rtx target, int cleared, HOST_WIDE_INT size) if (BYTES_BIG_ENDIAN) value = fold (build2 (LSHIFT_EXPR, type, value, - build_int_2 (BITS_PER_WORD - bitsize, 0))); + build_int_cst (NULL_TREE, + BITS_PER_WORD - bitsize, 0))); bitsize = BITS_PER_WORD; mode = word_mode; } @@ -5317,7 +5321,8 @@ store_field (rtx target, HOST_WIDE_INT bitsize, HOST_WIDE_INT bitpos, gen_int_mode (width_mask, tmode), NULL_RTX); - count = build_int_2 (GET_MODE_BITSIZE (tmode) - bitsize, 0); + count = build_int_cst (NULL_TREE, + GET_MODE_BITSIZE (tmode) - bitsize, 0); temp = expand_shift (LSHIFT_EXPR, tmode, temp, count, 0, 0); return expand_shift (RSHIFT_EXPR, tmode, temp, count, 0, 0); } @@ -6813,8 +6818,9 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, else { tree count - = build_int_2 (GET_MODE_BITSIZE (imode) - bitsize, - 0); + = build_int_cst (NULL_TREE, + GET_MODE_BITSIZE (imode) - bitsize, + 0); op0 = expand_shift (LSHIFT_EXPR, imode, op0, count, target, 0); @@ -8279,7 +8285,8 @@ reduce_to_bit_field_precision (rtx exp, rtx target, tree type) } else { - tree count = build_int_2 (GET_MODE_BITSIZE (GET_MODE (exp)) - prec, 0); + tree count = build_int_cst (NULL_TREE, + GET_MODE_BITSIZE (GET_MODE (exp)) - prec, 0); exp = expand_shift (LSHIFT_EXPR, GET_MODE (exp), exp, count, target, 0); return expand_shift (RSHIFT_EXPR, GET_MODE (exp), exp, count, target, 0); } |