summaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-29 21:35:02 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-29 21:35:02 +0000
commit7a827396d6b0e1881d793aee2bf792bbac00ce32 (patch)
tree4b74e331666c431f6ed796be6e9e7e894fd44eb9 /gcc/expr.c
parent52dd4e9f313ac75f9db5c8f9a79b80c0179d4d61 (diff)
downloadgcc-7a827396d6b0e1881d793aee2bf792bbac00ce32.tar.gz
* expr.c (store_field): Use adjust_address, not PUT_MODE.
(expand_expr, case VIEW_CONVERT_EXPR): Likewise. * reload1.c (eliminate_regs, case SUBREG): Likewise, but use adjust_address_nv. * varasm.c (make_decl_rtl): Likewise. * integrate.c (copy_rtx_and_substitute, case MEM): Likewise, but use replace_equiv_address_nv. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48387 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index 1c320b98e01..60c3431f73a 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -5006,9 +5006,7 @@ store_field (target, bitsize, bitpos, mode, exp, value_mode, unsignedp, type,
= assign_temp
(build_qualified_type (type, TYPE_QUALS (type) | TYPE_QUAL_CONST),
0, 1, 1);
- rtx blk_object = copy_rtx (object);
-
- PUT_MODE (blk_object, BLKmode);
+ rtx blk_object = adjust_address (object, BLKmode, 0);
if (bitsize != (HOST_WIDE_INT) GET_MODE_BITSIZE (GET_MODE (target)))
emit_move_insn (object, target);
@@ -7340,12 +7338,11 @@ expand_expr (exp, target, tmode, modifier)
(HOST_WIDE_INT) GET_MODE_SIZE (TYPE_MODE (type)));
rtx new = assign_stack_temp_for_type (TYPE_MODE (type),
temp_size, 0, type);
- rtx new_with_op0_mode = copy_rtx (new);
+ rtx new_with_op0_mode = adjust_address (new, GET_MODE (op0), 0);
if (TREE_ADDRESSABLE (exp))
abort ();
- PUT_MODE (new_with_op0_mode, GET_MODE (op0));
if (GET_MODE (op0) == BLKmode)
emit_block_move (new_with_op0_mode, op0,
GEN_INT (GET_MODE_SIZE (TYPE_MODE (type))));
@@ -7355,7 +7352,7 @@ expand_expr (exp, target, tmode, modifier)
op0 = new;
}
- PUT_MODE (op0, TYPE_MODE (type));
+ op0 = adjust_address (op0, TYPE_MODE (type), 0);
}
return op0;