summaryrefslogtreecommitdiff
path: root/gcc/cse.c
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1999-05-17 00:36:36 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1999-05-17 00:36:36 +0000
commitc69ad72413dd888aa3f83502c07a452afdfa5c9a (patch)
tree3777736d440c42d1e61f2a4e5b1f105b10542033 /gcc/cse.c
parent24ba3aa48ec55a6eab5efaad2e081ef2d2d7f5d5 (diff)
downloadgcc-c69ad72413dd888aa3f83502c07a452afdfa5c9a.tar.gz
* cse.c (cse_insn): Copy SRC_CONST before putting it in the
REG_EQUAL note. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26958 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cse.c')
-rw-r--r--gcc/cse.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/cse.c b/gcc/cse.c
index 72a1ff63c3d..5fc6c7889a2 100644
--- a/gcc/cse.c
+++ b/gcc/cse.c
@@ -7323,6 +7323,9 @@ cse_insn (insn, libcall_insn)
{
tem = find_reg_note (insn, REG_EQUAL, NULL_RTX);
+ /* Make sure that the rtx is not shared with any other insn. */
+ src_const = copy_rtx (src_const);
+
/* Record the actual constant value in a REG_EQUAL note, making
a new one if one does not already exist. */
if (tem)