diff options
author | Jan Hubicka <jh@suse.cz> | 2009-04-27 01:35:27 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2009-04-26 23:35:27 +0000 |
commit | f87c904283c91ccb365e83a9fc1f7463265cdcf6 (patch) | |
tree | fa24152c68bb24d01ebfd5359eabb80b6d0be1a2 /gcc/tree-ssa-loop-ivcanon.c | |
parent | 33abd7188ed10fdc1a4b66a2208490fc58df041b (diff) | |
download | gcc-f87c904283c91ccb365e83a9fc1f7463265cdcf6.zip gcc-f87c904283c91ccb365e83a9fc1f7463265cdcf6.tar.gz gcc-f87c904283c91ccb365e83a9fc1f7463265cdcf6.tar.bz2 |
ipa-pure-const.c (struct funct_state_d): New fields state_previously_known, looping_previously_known...
* ipa-pure-const.c (struct funct_state_d): New fields
state_previously_known, looping_previously_known; remove
state_set_in_source.
(analyze_function): Use new fields.
(propagate): Avoid assumption that state_set_in_source imply
nonlooping.
* tree-ssa-loop-niter.c (finite_loop_p): New function.
* tree-ssa-loop-ivcanon.c (empty_loop_p): Use it.
* cfgloop.h (finite_loop_p): Declare.
From-SVN: r146821
Diffstat (limited to 'gcc/tree-ssa-loop-ivcanon.c')
-rw-r--r-- | gcc/tree-ssa-loop-ivcanon.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/tree-ssa-loop-ivcanon.c b/gcc/tree-ssa-loop-ivcanon.c index 5c2f6af..2101073 100644 --- a/gcc/tree-ssa-loop-ivcanon.c +++ b/gcc/tree-ssa-loop-ivcanon.c @@ -395,7 +395,6 @@ static bool empty_loop_p (struct loop *loop) { edge exit; - struct tree_niter_desc niter; basic_block *body; gimple_stmt_iterator gsi; unsigned i; @@ -408,7 +407,7 @@ empty_loop_p (struct loop *loop) return false; /* The loop must be finite. */ - if (!number_of_iterations_exit (loop, exit, &niter, false)) + if (!finite_loop_p (loop)) return false; /* Values of all loop exit phi nodes must be invariants. */ |