diff options
author | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-09 17:35:05 +0000 |
---|---|---|
committer | dnovillo <dnovillo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-09 17:35:05 +0000 |
commit | 91be5bb8dba33956172bb95113edee1bb370036c (patch) | |
tree | 10e3c61c624d9fda48e1baf168a72b816d391674 | |
parent | 4bbdfe646161254fe499589a72cdfbc52e86ce6b (diff) | |
download | linaro-gcc-91be5bb8dba33956172bb95113edee1bb370036c.tar.gz linaro-gcc-91be5bb8dba33956172bb95113edee1bb370036c.tar.bz2 linaro-gcc-91be5bb8dba33956172bb95113edee1bb370036c.zip |
PR 21356
PR 22332
* passes.c (execute_todo): Cleanup the CFG before updating
SSA.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101832 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/passes.c | 13 |
2 files changed, 14 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f84455dd3fa..abaa36d0ee2 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2005-07-09 Diego Novillo <dnovillo@redhat.com> + + PR 21356 + PR 22332 + * passes.c (execute_todo): Cleanup the CFG before updating + SSA. + 2005-07-09 Jakub Jelinek <jakub@redhat.com> * config/i386/i386.c (output_set_got): Don't omit OFFSET FLAT: diff --git a/gcc/passes.c b/gcc/passes.c index 8d1411a89e7..abc44e4a1f4 100644 --- a/gcc/passes.c +++ b/gcc/passes.c @@ -666,12 +666,7 @@ execute_todo (struct tree_opt_pass *pass, unsigned int flags, bool use_required) gcc_assert (flags & TODO_update_ssa_any); #endif - if (flags & TODO_update_ssa_any) - { - unsigned update_flags = flags & TODO_update_ssa_any; - update_ssa (update_flags); - } - + /* Always cleanup the CFG before doing anything else. */ if (flags & TODO_cleanup_cfg) { if (current_loops) @@ -680,6 +675,12 @@ execute_todo (struct tree_opt_pass *pass, unsigned int flags, bool use_required) cleanup_tree_cfg (); } + if (flags & TODO_update_ssa_any) + { + unsigned update_flags = flags & TODO_update_ssa_any; + update_ssa (update_flags); + } + if ((flags & TODO_dump_func) && dump_file && current_function_decl) { |