diff options
author | Jan Hubicka <jh@suse.cz> | 2007-01-20 01:13:38 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2007-01-20 00:13:38 +0000 |
commit | c9fa8bd45b69fd268f83b1cc52e2088caef18903 (patch) | |
tree | 4d7100791a00083bf39d88eb678529f1e4894c71 | |
parent | d6e2570089844c9f7e48e7878f24d7183a65123d (diff) | |
download | gcc-c9fa8bd45b69fd268f83b1cc52e2088caef18903.zip gcc-c9fa8bd45b69fd268f83b1cc52e2088caef18903.tar.gz gcc-c9fa8bd45b69fd268f83b1cc52e2088caef18903.tar.bz2 |
tree-ssa.c (init_tree_ssa): Do not call init_alias_heapvars.
* tree-ssa.c (init_tree_ssa): Do not call init_alias_heapvars.
* tree-ssa-structalias.c (compute_points_to_sets): Do call
init_alias_heapvars.
(init_alias_heapvars): Initialize only when not already initialized.
(delete_alias_heapvars): Set heapvar_for_stmt to NULL.
From-SVN: r120983
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/tree-ssa-structalias.c | 7 | ||||
-rw-r--r-- | gcc/tree-ssa.c | 1 |
3 files changed, 13 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 78513d2..c4aede6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2007-01-20 Jan Hubicka <jh@suse.cz> + + * tree-ssa.c (init_tree_ssa): Do not call init_alias_heapvars. + * tree-ssa-structalias.c (compute_points_to_sets): Do call + init_alias_heapvars. + (init_alias_heapvars): Initialize only when not already initialized. + (delete_alias_heapvars): Set heapvar_for_stmt to NULL. + 2007-01-19 Roger Sayle <roger@eyesopen.com> * common.opt (fsigned-zeros): New command line option. diff --git a/gcc/tree-ssa-structalias.c b/gcc/tree-ssa-structalias.c index 550ad86..def8958 100644 --- a/gcc/tree-ssa-structalias.c +++ b/gcc/tree-ssa-structalias.c @@ -4692,6 +4692,7 @@ compute_points_to_sets (struct alias_info *ai) timevar_push (TV_TREE_PTA); init_alias_vars (); + init_alias_heapvars (); intra_create_variable_infos (); @@ -4934,14 +4935,16 @@ struct tree_opt_pass pass_ipa_pta = void init_alias_heapvars (void) { - heapvar_for_stmt = htab_create_ggc (11, tree_map_hash, tree_map_eq, - NULL); + if (!heapvar_for_stmt) + heapvar_for_stmt = htab_create_ggc (11, tree_map_hash, tree_map_eq, + NULL); } void delete_alias_heapvars (void) { htab_delete (heapvar_for_stmt); + heapvar_for_stmt = NULL; } diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index a423108..dd771ea 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -778,7 +778,6 @@ init_tree_ssa (void) var_ann_eq, NULL); cfun->gimple_df->call_clobbered_vars = BITMAP_GGC_ALLOC (); cfun->gimple_df->addressable_vars = BITMAP_GGC_ALLOC (); - init_alias_heapvars (); init_ssanames (); init_phinodes (); } |