diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1995-12-18 16:39:20 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1995-12-18 16:39:20 -0500 |
commit | fec535227f9632e0a9d96fbc4a7a03cf607834b0 (patch) | |
tree | b62c341f1389c84577511a46ea93b0691a4e0174 | |
parent | 3d199f7a312e6e0fb59245b6e8da4b8469610307 (diff) | |
download | gcc-fec535227f9632e0a9d96fbc4a7a03cf607834b0.zip gcc-fec535227f9632e0a9d96fbc4a7a03cf607834b0.tar.gz gcc-fec535227f9632e0a9d96fbc4a7a03cf607834b0.tar.bz2 |
(store_constructor): Fix error in last change: just copy MEM, but be sure to share address.
(store_constructor): Fix error in last change: just
copy MEM, but be sure to share address.
(expand_expr, case CONSTRUCTOR): Likewise.
From-SVN: r10801
-rw-r--r-- | gcc/expr.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -3070,7 +3070,8 @@ store_constructor (exp, target) if (TREE_READONLY (field)) { - to_rtx = copy_rtx (to_rtx); + to_rtx = change_address (to_rtx, GET_MODE (to_rtx), + XEXP (to_rtx, 0)); RTX_UNCHANGING_P (to_rtx) = 1; } @@ -4540,7 +4541,8 @@ expand_expr (exp, target, tmode, modifier) if (TREE_READONLY (exp)) { - target = copy_rtx (target); + target = change_address (target, GET_MODE (target), + XEXP (target, 0)); RTX_UNCHANGING_P (target) = 1; } |