aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernd Edlinger <bernd.edlinger@hotmail.de>2016-09-27 04:54:49 +0000
committerBernd Edlinger <edlinger@gcc.gnu.org>2016-09-27 04:54:49 +0000
commit0fbac2d130600a37414c33ecf2c12c9c8945f353 (patch)
treebf3aee23caa2142160e31642decac83f3ff261ec /gcc
parent3a4228babc083065faaf41568fbc92e0e562a401 (diff)
downloadgcc-0fbac2d130600a37414c33ecf2c12c9c8945f353.zip
gcc-0fbac2d130600a37414c33ecf2c12c9c8945f353.tar.gz
gcc-0fbac2d130600a37414c33ecf2c12c9c8945f353.tar.bz2
re PR rtl-optimization/77714 (Wrong code generation for gcc.c-torture/execute/pr51447.c)
2016-09-27 Bernd Edlinger <bernd.edlinger@hotmail.de> PR rlt-optimization/77714 * lra-eliminations.c (eliminate_regs_in_insn): Avoid alias on REG_EQUAL note. From-SVN: r240518
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/lra-eliminations.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3e5b099..fa64788 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2016-09-27 Bernd Edlinger <bernd.edlinger@hotmail.de>
+
+ PR rlt-optimization/77714
+ * lra-eliminations.c (eliminate_regs_in_insn): Avoid alias on
+ REG_EQUAL note.
+
2016-09-27 Kugan Vivekanandarajah <kuganv@linaro.org>
PR ipa/77677
diff --git a/gcc/lra-eliminations.c b/gcc/lra-eliminations.c
index 1764bd6..03b315e 100644
--- a/gcc/lra-eliminations.c
+++ b/gcc/lra-eliminations.c
@@ -981,7 +981,7 @@ eliminate_regs_in_insn (rtx_insn *insn, bool replace_p, bool first_p,
}
lra_update_insn_recog_data (insn);
/* Add offset note for future updates. */
- add_reg_note (insn, REG_EQUAL, src);
+ add_reg_note (insn, REG_EQUAL, copy_rtx (src));
return;
}
}