diff options
author | Jan Hubicka <jh@suse.cz> | 2007-01-04 12:30:10 +0100 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2007-01-04 11:30:10 +0000 |
commit | 3a40c18a680f824dc4cb4ca77e0650e37052c82f (patch) | |
tree | 58cae202af2ebee37934e16f8848037db54c9be9 /gcc/tree-ssa.c | |
parent | b06e8639fa88b579c1ea48123d4af902c2d7b101 (diff) | |
download | gcc-3a40c18a680f824dc4cb4ca77e0650e37052c82f.zip gcc-3a40c18a680f824dc4cb4ca77e0650e37052c82f.tar.gz gcc-3a40c18a680f824dc4cb4ca77e0650e37052c82f.tar.bz2 |
cgraph.c (cgraph_release_function_body): New function.
* cgraph.c (cgraph_release_function_body): New function.
(cgraph_remove_node): Use it.
* cgraph.h (cgraph_release_function_body): Declare.
* cgraphunit.c (cgraph_expand_function): Use it.
* ipa.c (cgraph_remove_unreahchable_nodes): Use it.
* tree-ssa.c (delete_tree_ssa): Allow to be called before aliasing
is initialized and while compilation of other function is running.
* tree-optimize.c (execute_free_cfg_annotations): Move code to clear
statement CFG annotations from here to ...
* tree-cfg.c (delete_tree_cfg_annotations): ... here.
From-SVN: r120437
Diffstat (limited to 'gcc/tree-ssa.c')
-rw-r--r-- | gcc/tree-ssa.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index 644a797..a423108 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -846,10 +846,13 @@ delete_tree_ssa (void) cfun->gimple_df->call_clobbered_vars = NULL; cfun->gimple_df->addressable_vars = NULL; cfun->gimple_df->modified_noreturn_calls = NULL; + if (gimple_aliases_computed_p (cfun)) + { + delete_alias_heapvars (); + gcc_assert (!need_ssa_update_p ()); + } cfun->gimple_df->aliases_computed_p = false; - delete_alias_heapvars (); - gcc_assert (!need_ssa_update_p ()); cfun->gimple_df = NULL; } |