aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree-ssa.c7
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index f199fed..17a0f2d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2014-08-05 Trevor Saunders <tsaunders@mozilla.com>
+
+ * tree-ssa.c (redirect_edge_var_map_dup): insert newe before
+ getting olde.
+
2014-08-05 Richard Biener <rguenther@suse.de>
PR rtl-optimization/61672
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index 217b9fc..e684296 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -106,11 +106,12 @@ redirect_edge_var_map_dup (edge newe, edge olde)
if (!edge_var_maps)
return;
- auto_vec<edge_var_map> *head = edge_var_maps->get (olde);
- if (!head)
+ auto_vec<edge_var_map> *new_head = &edge_var_maps->get_or_insert (newe);
+ auto_vec<edge_var_map> *old_head = edge_var_maps->get (olde);
+ if (!old_head)
return;
- edge_var_maps->get_or_insert (newe).safe_splice (*head);
+ new_head->safe_splice (*old_head);
}