diff options
author | Jan Hubicka <hubicka@gcc.gnu.org> | 2008-03-18 15:21:06 +0000 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2008-03-18 15:21:06 +0000 |
commit | 2e28e797125a94c7587b599eba438015fa02e5fe (patch) | |
tree | e2ca0569c078a0ce7bcb5fe80388985cdcfbfac8 /gcc/gimplify.c | |
parent | 52f1c7ed4d3ebab5b0b54f567bafbf1c29ccffeb (diff) | |
download | gcc-2e28e797125a94c7587b599eba438015fa02e5fe.zip gcc-2e28e797125a94c7587b599eba438015fa02e5fe.tar.gz gcc-2e28e797125a94c7587b599eba438015fa02e5fe.tar.bz2 |
tree-pretty-print.c: Include predict.h.
* tree-pretty-print.c: Include predict.h.
(dump_generic_node): Dump predictor.
* tree.h (PREDICT_EXPR_OUTCOME, PREDICT_EXPR_PREDICTION): Update.
* tree-gimple.c (is_gimple_stmt): Add PREDICT_EXPR.
* gimple-low.c (lower_stmt): Likewise.
* expr.c (expand_expr_real): Likewise.
* predict.c (tree_bb_level_predictions): Use PREDICT_EXPRs and remove
them.
(build_predict_expr, build_predict_expr): New.
* predict.h (predictor_name, build_predict_expr): Update.
* c-typeck.c (c_finish_bc_stmt): Add prediction.
* gimplify.c (gimplify_expr): Add PREDICT_EXPR.
* predict.def (PRED_CONTINUE): Update hitrate.
* tree.def (PREDICT_EXPR): Define.
* tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Mark PREDICT_EXPR;
do not handle BIND_EXPR.
* tree-inline.c (estimate_num_insns_1): PREDICT_EXPR is free.
* tree-cfg.c (verify_gimple_stmt): PREDICT_EXPR is valid.
* tree-ssa-operands.c (get_expr_operands): PREDICT_EXPR takes no
operands.
From-SVN: r133313
Diffstat (limited to 'gcc/gimplify.c')
-rw-r--r-- | gcc/gimplify.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/gimplify.c b/gcc/gimplify.c index 102ce3e..acdfb99 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -5837,6 +5837,10 @@ gimplify_expr (tree *expr_p, tree *pre_p, tree *post_p, NULL, is_gimple_val, fb_rvalue); break; + /* Predictions are always gimplified. */ + case PREDICT_EXPR: + goto out; + case LABEL_EXPR: ret = GS_ALL_DONE; gcc_assert (decl_function_context (LABEL_EXPR_LABEL (*expr_p)) |