This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
gcc/gcc ChangeLog.lno basic-block.h cfg.c cfgl ...
- From: rakdver at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: 30 Jan 2004 08:32:07 -0000
- Subject: gcc/gcc ChangeLog.lno basic-block.h cfg.c cfgl ...
CVSROOT: /cvs/gcc
Module name: gcc
Branch: lno-branch
Changes by: rakdver@gcc.gnu.org 2004-01-30 08:32:07
Modified files:
gcc : ChangeLog.lno basic-block.h cfg.c cfgloop.c
cfgloop.h cfgloopanal.c loop-iv.c loop-unroll.c
predict.c tree-cfg.c tree-flow.h
tree-ssa-loop-ivopts.c tree-ssa-loop.c
Log message:
* basic-block.h (FOR_BB_INSNS, FOR_BB_INSNS_REVERSE): New macros.
* cfgloop.c (num_loop_branches): New function.
* cfgloop.h (struct loop_desc): Add field strange.
(struct loop): Remove fields simple, desc, has_desc.
(num_loop_branches, get_simple_loop_desc, free_simple_loop_desc):
Declare.
(simple_loop_desc): New inline function.
* cfgloopanal.c (count_loop_iterations): Set field strange.
(simple_loop_exit_p): Initialize postincr properly.
* loop-iv.c (assign_luids, mark_sets, simplify_using_initial_values):
Use FOR_BB_INSNS/FOR_BB_INSNS_REVERSE.
(iv_number_of_iterations): Restrict the number of iterations to the
actual mode.
(find_simple_exit): Check results with the old simple loop analyser.
(get_simple_loop_desc, free_simple_loop_desc): New functions.
* loop-unroll.c (loop_exit_at_end_p): New function.
(unroll_and_peel_loops, peel_loops_completely,
decide_unrolling_and_peeling, decide_peel_once_rolling,
decide_peel_completely, peel_loop_completely,
decide_unroll_constant_iterations, unroll_loop_constant_iterations,
decide_unroll_runtime_iterations, unroll_loop_runtime_iterations,
decide_peel_simple, decide_unroll_stupid): Use new iv analysis.
* predict.c (predict_loops): Use new iv analysis.
* tree-ssa-loop.c (copy_loop_headers): Predict entry edge from
copied loop header to be taken.
* tree-cfg.c (tree_find_edge_insert_loc,
bsi_insert_on_edge_immediate): Return the newly created block.
(bsi_commit_edge_inserts_1): Add parameter to
tree_find_edge_insert_loc call.
* tree-flow.h (bsi_insert_on_edge_immediate): Declaration changed.
* tree-ssa-loop-ivopts.c (create_new_iv): Update loop for newly
created block.
* cfg.c (unlink_block): Clean prev_bb and next_bb fields.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.lno.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.1.2.43&r2=1.1.2.44
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/basic-block.h.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.153.2.39.2.3&r2=1.153.2.39.2.4
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfg.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.34.2.19.2.2&r2=1.34.2.19.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgloop.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.14.2.12.2.1&r2=1.14.2.12.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgloop.h.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.2.4.9.2.8&r2=1.2.4.9.2.9
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cfgloopanal.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.2.4.9.2.4&r2=1.2.4.9.2.5
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/loop-iv.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.1.4.2&r2=1.1.4.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/loop-unroll.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.2.2.6.2.1&r2=1.2.2.6.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/predict.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.71.2.14.2.1&r2=1.71.2.14.2.2
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-cfg.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.1.4.244.2.6&r2=1.1.4.244.2.7
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-flow.h.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.1.4.177.2.7&r2=1.1.4.177.2.8
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-loop-ivopts.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.1.2.2&r2=1.1.2.3
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/tree-ssa-loop.c.diff?cvsroot=gcc&only_with_tag=lno-branch&r1=1.1.2.3.2.7&r2=1.1.2.3.2.8