aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorZdenek Dvorak <dvorakz@suse.cz>2005-08-03 20:39:10 +0200
committerZdenek Dvorak <rakdver@gcc.gnu.org>2005-08-03 18:39:10 +0000
commit279072c8467aa843ac217174a9c2717b4558a2c1 (patch)
tree07f81556f4d2344e7a763ff21dd97f323ace802c /gcc
parent53054e77821501534edde1b5cba49cbe8fc611dd (diff)
downloadgcc-279072c8467aa843ac217174a9c2717b4558a2c1.zip
gcc-279072c8467aa843ac217174a9c2717b4558a2c1.tar.gz
gcc-279072c8467aa843ac217174a9c2717b4558a2c1.tar.bz2
re PR tree-optimization/23157 (incorrect sharing of tree nodes regression)
PR tree-optimization/23157 * tree-scalar-evolution.c (scev_const_prop): Unshare trees before emitting them. From-SVN: r102704
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/tree-scalar-evolution.c1
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c5893c9..f23dfa2 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2005-08-03 Zdenek Dvorak <dvorakz@suse.cz>
+
+ PR tree-optimization/23157
+ * tree-scalar-evolution.c (scev_const_prop): Unshare trees
+ before emitting them.
+
2005-08-03 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
PR tree-optimization/19899
diff --git a/gcc/tree-scalar-evolution.c b/gcc/tree-scalar-evolution.c
index 507e3e9..65348d0 100644
--- a/gcc/tree-scalar-evolution.c
+++ b/gcc/tree-scalar-evolution.c
@@ -2719,6 +2719,7 @@ scev_const_prop (void)
in loop into account. */
if (force_expr_to_var_cost (def) >= target_spill_cost)
continue;
+ def = unshare_expr (def);
if (is_gimple_val (def))
stmts = NULL_TREE;