aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-cfg.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r--gcc/tree-cfg.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c
index 2776f21..6108dd8 100644
--- a/gcc/tree-cfg.c
+++ b/gcc/tree-cfg.c
@@ -1264,6 +1264,19 @@ replace_uses_by (tree name, tree val)
}
VEC_free (tree, heap, stmts);
+
+ /* Also update the trees stored in loop structures. */
+ if (current_loops)
+ {
+ struct loop *loop;
+
+ for (i = 0; i < current_loops->num; i++)
+ {
+ loop = current_loops->parray[i];
+ if (loop)
+ substitute_in_loop_info (loop, name, val);
+ }
+ }
}
/* Merge block B into block A. */