diff options
author | Daniel Berlin <dberlin@dberlin.org> | 2004-11-17 02:01:35 +0000 |
---|---|---|
committer | Daniel Berlin <dberlin@gcc.gnu.org> | 2004-11-17 02:01:35 +0000 |
commit | 88a40e67adcb05e70e4c816ade1e80fe9fa1d374 (patch) | |
tree | 4b863c2d1c67c8fb1155677401f221fcedc209fc /gcc/tree-optimize.c | |
parent | 8a45d44821bc808ebc1e85ea07cb89e2d10c7e60 (diff) | |
download | gcc-88a40e67adcb05e70e4c816ade1e80fe9fa1d374.zip gcc-88a40e67adcb05e70e4c816ade1e80fe9fa1d374.tar.gz gcc-88a40e67adcb05e70e4c816ade1e80fe9fa1d374.tar.bz2 |
re PR tree-optimization/18519 (ICE: Segmentation fault with optimization)
2004-11-16 Daniel Berlin <dberlin@dberlin.org>
Fix PR tree-optimization/18519
* tree-optimize (execute_todo): Add case for TODO_cleanup_cfg.
* tree-pass.h: Add TODO_cleanup_cfg.
* tree-ssa-ccp.c (pass_ccp): Use TODO_cleanup_cfg.
(ccp_finalize): Remove call to cleanup_cfg.
* tree-ssa-dce.c (pass_dce): Use TODO_cleanup_cfg and TODO_dump_func.
(pass_cd_dce): Ditto.
(perform_tree_ssa_dce): Remove call to cleanup_cfg,
dump_function_to_file.
* tree-ssa-loop-ch.c (copy_loop_headers): Remove call
to cleanup_cfg.
(pass_ch): Add TODO_cleanup_cfg.
* tree-ssa-loop.c (tree_ssa_loop_done): Remove call to
cleanup_cfg.
(pass_loop_done): Add TODO_cleanup_cfg.
* tree-ssa-phiopt.c (pass_phiopt): Ditto.
(tree_ssa_phiopt): Remove call to cleanup_cfg.
From-SVN: r90783
Diffstat (limited to 'gcc/tree-optimize.c')
-rw-r--r-- | gcc/tree-optimize.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/tree-optimize.c b/gcc/tree-optimize.c index da7a2e7..53356b9 100644 --- a/gcc/tree-optimize.c +++ b/gcc/tree-optimize.c @@ -426,6 +426,9 @@ execute_todo (int properties, unsigned int flags) bitmap_clear (vars_to_rename); } + if (flags & TODO_cleanup_cfg) + cleanup_tree_cfg (); + if ((flags & TODO_dump_func) && dump_file) { if (properties & PROP_trees) |