aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-ssa.c
diff options
context:
space:
mode:
authorAlan Lawrence <alan.lawrence@arm.com>2015-12-03 15:46:57 +0000
committerAlan Lawrence <alalaw01@gcc.gnu.org>2015-12-03 15:46:57 +0000
commitb3e4665562a83f85a5d590d137ae042854c035a8 (patch)
treea53c2da1b8f2239b2465b32c4052b33f45ae7e76 /gcc/tree-ssa.c
parent46bd784bfb29e94841b7d2702277d77445a7a47f (diff)
downloadgcc-b3e4665562a83f85a5d590d137ae042854c035a8.zip
gcc-b3e4665562a83f85a5d590d137ae042854c035a8.tar.gz
gcc-b3e4665562a83f85a5d590d137ae042854c035a8.tar.bz2
Empty the redirect_edge_var_map after each pass
Alan Lawrence <alan.lawrence@arm.com> Richard Biener <richard.guenther@gmail.com> * cfgexpand.c (pass_expand::execute): Replace call to redirect_edge_var_map_destroy with redirect_edge_var_map_empty. * tree-ssa.c (delete_tree_ssa): Likewise. * function.c (set_cfun): Call redirect_edge_var_map_empty. * passes.c (execute_one_ipa_transform_pass, execute_one_pass): Likewise. * tree-ssa.h (redirect_edge_var_map_destroy): Remove. (redirect_edge_var_map_empty): New. * tree-ssa.c (redirect_edge_var_map_destroy): Remove. (redirect_edge_var_map_empty): New. Co-Authored-By: Richard Biener <richard.guenther@gmail.com> From-SVN: r231232
Diffstat (limited to 'gcc/tree-ssa.c')
-rw-r--r--gcc/tree-ssa.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index 02fca4c..ddc7a65 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -119,10 +119,10 @@ redirect_edge_var_map_vector (edge e)
/* Clear the edge variable mappings. */
void
-redirect_edge_var_map_destroy (void)
+redirect_edge_var_map_empty (void)
{
- delete edge_var_maps;
- edge_var_maps = NULL;
+ if (edge_var_maps)
+ edge_var_maps->empty ();
}
@@ -1128,7 +1128,7 @@ delete_tree_ssa (struct function *fn)
fn->gimple_df = NULL;
/* We no longer need the edge variable maps. */
- redirect_edge_var_map_destroy ();
+ redirect_edge_var_map_empty ();
}
/* Return true if EXPR is a useless type conversion, otherwise return