aboutsummaryrefslogtreecommitdiff
path: root/gcc/cfgrtl.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2005-06-06 12:31:35 +0000
committerJan Hubicka <jh@suse.cz>2005-06-06 12:31:35 +0000
commitc99ac5ac61fab1eb4bc1b9e89d6cfca13eb970ad (patch)
treeb33345b9d09639a34fdfad1df1f1c467319d43a7 /gcc/cfgrtl.c
parentc1bf254717cbe1a932b0e3682c12180fa1c3bf55 (diff)
* predict.c (tree_predict_edge): Don't drop useless predictions;
check that it is not called too late in the game. (gate_estimate_probability): New gate. (pass_profile): Gate. * tree-mudflap.c (mf_build_check_statement_for): Do not drop predictions; update CFG instead. * cfgrtl.c (rtl_verify_flow_info): Check that predcitions are consumed. git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@100662 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgrtl.c')
-rw-r--r--gcc/cfgrtl.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/cfgrtl.c b/gcc/cfgrtl.c
index 2571d4d65dc..f414def06bd 100644
--- a/gcc/cfgrtl.c
+++ b/gcc/cfgrtl.c
@@ -2136,6 +2136,12 @@ rtl_verify_flow_info (void)
edge e;
edge_iterator ei;
+ if (bb->predictions)
+ {
+ error ("bb prediction set for block %i, but it is not used in RTL land", bb->index);
+ err = 1;
+ }
+
FOR_EACH_EDGE (e, ei, bb->succs)
if (e->flags & EDGE_FALLTHRU)
break;