diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-ssa-loop-manip.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 017187c3b18..7a82b3a8d51 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-07-26 Steve Ellcey <sje@cup.hp.com> + + PR tree-optimization/32087 + * tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): + Do not call scale_bbs_frequencies_int with prob of zero. + 2007-07-26 Julian Brown <julian@codesourcery.com> * config/arm/arm-protos.h (neon_lane_bounds, neon_const_bounds) diff --git a/gcc/tree-ssa-loop-manip.c b/gcc/tree-ssa-loop-manip.c index 4618ee49062..6faac9be3bb 100644 --- a/gcc/tree-ssa-loop-manip.c +++ b/gcc/tree-ssa-loop-manip.c @@ -1035,8 +1035,9 @@ tree_transform_and_unroll_loop (struct loop *loop, unsigned factor, new_nonexit->count = exit_bb->count - new_exit->count; if (new_nonexit->count < 0) new_nonexit->count = 0; - scale_bbs_frequencies_int (&loop->latch, 1, new_nonexit->probability, - prob); + if (prob > 0) + scale_bbs_frequencies_int (&loop->latch, 1, new_nonexit->probability, + prob); /* Finally create the new counter for number of iterations and add the new exit instruction. */ |