aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfg.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2005-07-15 11:46:17 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2005-07-15 09:46:17 +0000
commit2b151cb23b672323fea91892fcb1d2f41c410e78 (patch)
treee18b6fa79ab9456ec92957369f1b704294631166 /gcc/cfg.c
parent0691d1d4a31ff0a426d2ba07c64acbac5df6b8ae (diff)
downloadgcc-2b151cb23b672323fea91892fcb1d2f41c410e78.zip
gcc-2b151cb23b672323fea91892fcb1d2f41c410e78.tar.gz
gcc-2b151cb23b672323fea91892fcb1d2f41c410e78.tar.bz2
cfg.c (update_bb_profile_for_threading): More diagnostic.
* cfg.c (update_bb_profile_for_threading): More diagnostic. * tree-ssa-threadupdate.c (redirect_edges): Update profile of dup_block. From-SVN: r102053
Diffstat (limited to 'gcc/cfg.c')
-rw-r--r--gcc/cfg.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/gcc/cfg.c b/gcc/cfg.c
index 2d6a3ca..6aeb794 100644
--- a/gcc/cfg.c
+++ b/gcc/cfg.c
@@ -850,7 +850,12 @@ update_bb_profile_for_threading (basic_block bb, int edge_frequency,
bb->count -= count;
if (bb->count < 0)
- bb->count = 0;
+ {
+ if (dump_file)
+ fprintf (dump_file, "bb %i count became negative after threading",
+ bb->index);
+ bb->count = 0;
+ }
/* Compute the probability of TAKEN_EDGE being reached via threaded edge.
Watch for overflows. */
@@ -897,7 +902,12 @@ update_bb_profile_for_threading (basic_block bb, int edge_frequency,
gcc_assert (bb == taken_edge->src);
taken_edge->count -= count;
if (taken_edge->count < 0)
- taken_edge->count = 0;
+ {
+ if (dump_file)
+ fprintf (dump_file, "edge %i->%i count became negative after threading",
+ taken_edge->src->index, taken_edge->dest->index);
+ taken_edge->count = 0;
+ }
}
/* Multiply all frequencies of basic blocks in array BBS of length NBBS