diff options
author | Zdenek Dvorak <dvorakz@suse.cz> | 2007-04-09 08:51:43 +0200 |
---|---|---|
committer | Zdenek Dvorak <rakdver@gcc.gnu.org> | 2007-04-09 06:51:43 +0000 |
commit | c7b852c8a60d46ba79c50b9d2a4f3cba4847c896 (patch) | |
tree | f5af72013d20563b8340bcf3462e935b8ad07bef /gcc/tree-ssa-threadedge.c | |
parent | 782c9150c34a05791f425af5af81c8198cf49176 (diff) | |
download | gcc-c7b852c8a60d46ba79c50b9d2a4f3cba4847c896.zip gcc-c7b852c8a60d46ba79c50b9d2a4f3cba4847c896.tar.gz gcc-c7b852c8a60d46ba79c50b9d2a4f3cba4847c896.tar.bz2 |
cfgloopmanip.c (create_preheader): Do not use loop_preheader_edge.
* cfgloopmanip.c (create_preheader): Do not use loop_preheader_edge.
(create_preheaders): Check that loops are available.
(fix_loop_structure): Clean up, improve comments.
* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa):
Check that loops are available. Set LOOP_CLOSED_SSA to the loops
state flags.
* tree-scalar-evolution.c (scev_finalize): Clear scalar_evolution_info.
* predict.c (tree_estimate_probability): Do not call
calculate_dominance_info. Call create_preheaders.
* tree-cfgcleanup.c (cleanup_tree_cfg_loop): Only call
rewrite_into_loop_closed_ssa if LOOP_CLOSED_SSA is set in loops state
flags.
* cfgloop.c (loop_preheader_edge): Assert that loops have preheaders.
* cfgloop.h (LOOP_CLOSED_SSA): New constant.
* tree-cfg.c (tree_split_edge): Make an assert more precise.
* tree-ssa-threadedge.c (thread_across_edge): Comment the function
arguments.
From-SVN: r123670
Diffstat (limited to 'gcc/tree-ssa-threadedge.c')
-rw-r--r-- | gcc/tree-ssa-threadedge.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/tree-ssa-threadedge.c b/gcc/tree-ssa-threadedge.c index 777685a..86b2656 100644 --- a/gcc/tree-ssa-threadedge.c +++ b/gcc/tree-ssa-threadedge.c @@ -488,7 +488,19 @@ simplify_control_stmt_condition (edge e, Note it is quite common for the first block inside a loop to end with a conditional which is either always true or always false when reached via the loop backedge. Thus we do not want - to blindly disable threading across a loop backedge. */ + to blindly disable threading across a loop backedge. + + DUMMY_COND is a shared cond_expr used by condition simplification as scratch, + to avoid allocating memory. + + HANDLE_DOMINATING_ASSERTS is true if we should try to replace operands of + the simplified condition with left-hand sides of ASSERT_EXPRs they are + used in. + + STACK is used to undo temporary equivalences created during the walk of + E->dest. + + SIMPLIFY is a pass-specific function used to simplify statements. */ void thread_across_edge (tree dummy_cond, |