summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/tree-ssa-loop-manip.c5
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. */