summaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-loop-manip.c
diff options
context:
space:
mode:
authorSteve Ellcey <sje@cup.hp.com>2007-07-26 17:11:24 +0000
committerSteve Ellcey <sje@gcc.gnu.org>2007-07-26 17:11:24 +0000
commit87621e5f0fa6c55652477118bc6e69f84b9bf6b3 (patch)
treedb965df7fd3d149760c76ec331c065231eb5f012 /gcc/tree-ssa-loop-manip.c
parentb617fc71010a3806aa03dfc3bb5cf581b2b9d95c (diff)
downloadgcc-87621e5f0fa6c55652477118bc6e69f84b9bf6b3.tar.gz
re PR tree-optimization/32087 (ICE with FORTRAN and -fprefetch-loop-arrays)
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. From-SVN: r126959
Diffstat (limited to 'gcc/tree-ssa-loop-manip.c')
-rw-r--r--gcc/tree-ssa-loop-manip.c5
1 files changed, 3 insertions, 2 deletions
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. */