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:
Richard Biener 2013-11-21 09:15:38 +00:00 committed by Richard Biener
parent d995e887cb
commit 7276921760
2 changed files with 15 additions and 0 deletions

View file

@ -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

View file

@ -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);