This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
gcc/gcc Makefile.in cfgloop.c cfgloop.h cfgloo ...
- From: dberlin at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: 29 Nov 2004 23:59:13 -0000
- Subject: gcc/gcc Makefile.in cfgloop.c cfgloop.h cfgloo ...
CVSROOT: /cvs/gcc
Module name: gcc
Branch: tree-cleanup-branch
Changes by: dberlin@gcc.gnu.org 2004-11-29 23:59:13
Modified files:
gcc : Makefile.in cfgloop.c cfgloop.h cfgloopmanip.c
predict.c tree-cfg.c tree-flow.h
tree-loop-linear.c tree-optimize.c
tree-ssa-copy.c tree-ssa-loop-ivcanon.c
tree-ssa-loop-unswitch.c tree-ssa-loop.c
Log message:
2004-11-22 Daniel Berlin <dberlin@dberlin.org>
Patch by Zdenek Dvorak (dvorakz@suse.cz)
* Makefile.in (tree-optimize.o): Add $(CFGLOOP_H).
* cfgloop.c (flow_loop_nodes_find): Make non-static.
* cfgloop.h (fix_loop_structure): New prototype.
* cfgloopmanip.c (fix_loop_structure): New function.
* tree-cfg.c (cleanup_tree_cfg_loop): New function.
(tree_can_merge_blocks_p): Protect loop latches when current_loops
is non-NULL.
(remove_bb): Handle updating of loop structure when current_loops
is non-NULL.
(tree_forwarder_block_p): Protect loop latches, headers, and
preheaders when current_loops is non-NULL.
* tree-flow.h (cleanup_tree_cfg_loop): New prototype.
* tree-loop-linear (linear_transform_loops): The loop array may
have nulls in it.
* tree-optimize.c (init_tree_optimization_passes): Add CCP and
copy-prop after loop-init.
(execute_todo): Run cleanup_tree_cfg_loop when current_loops is
non-NULL.
* tree-ssa-copy.c (fini_copy_prop): Remove call to cleanup_tree_cfg.
(pass_copy_prop): Add TODO_cleanup_cfg.
* tree-ssa-loop-ivcanon.c (cnaonicalize_induction_variables):
Remove call to cleanup_tree_cfg_loop.
(tree_unroll_loops_completely): Ditto.
* tree-ssa-loop-unswitch.c (tree_ssa_unswitch_loops): Ditto.
* tree-ssa-loop.c (pass_unswitch): Add TODO_cleanup_cfg.
(pass_iv_canon): Ditto.
(pass_complete_unroll): Ditto.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/Makefile.in.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=1.1396.2.7&r2=1.1396.2.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgloop.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=1.39.4.3&r2=1.39.4.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgloop.h.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=1.31.2.4&r2=1.31.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgloopmanip.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=1.31.2.4&r2=1.31.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/predict.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=1.121.2.5&r2=1.121.2.6
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-cfg.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.55.2.8&r2=2.55.2.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-flow.h.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.46.2.9&r2=2.46.2.10
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-loop-linear.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.2.2.1&r2=2.2.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-optimize.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.47.2.9&r2=2.47.2.10
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-copy.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.15.2.8&r2=2.15.2.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-loop-ivcanon.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.3.6.2&r2=2.3.6.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-loop-unswitch.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.3.4.1&r2=2.3.4.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-loop.c.diff?cvsroot=gcc&only_with_tag=tree-cleanup-branch&r1=2.17.2.4&r2=2.17.2.5