mirror of git://gcc.gnu.org/git/gcc.git
tree-ssa-loop-ch.c (copy_loop_headers): Decrement nb_iterations_upper_bound by one.
2013-11-21 Richard Biener <rguenther@suse.de> * tree-ssa-loop-ch.c (copy_loop_headers): Decrement nb_iterations_upper_bound by one. From-SVN: r205198
This commit is contained in:
parent
d995e887cb
commit
7276921760
|
|
@ -1,3 +1,8 @@
|
|||
2013-11-21 Richard Biener <rguenther@suse.de>
|
||||
|
||||
* tree-ssa-loop-ch.c (copy_loop_headers): Decrement
|
||||
nb_iterations_upper_bound by one.
|
||||
|
||||
2013-11-21 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/59058
|
||||
|
|
|
|||
|
|
@ -243,6 +243,16 @@ copy_loop_headers (void)
|
|||
are not now, since there was the loop exit condition. */
|
||||
split_edge (loop_preheader_edge (loop));
|
||||
split_edge (loop_latch_edge (loop));
|
||||
|
||||
/* We peeled off one iteration of the loop thus we can lower
|
||||
the maximum number of iterations if we have a previously
|
||||
recorded value for that. */
|
||||
double_int max;
|
||||
if (get_max_loop_iterations (loop, &max))
|
||||
{
|
||||
max -= double_int_one;
|
||||
loop->nb_iterations_upper_bound = max;
|
||||
}
|
||||
}
|
||||
|
||||
update_ssa (TODO_update_ssa);
|
||||
|
|
|
|||
Loading…
Reference in New Issue