Make early return predictor more precise.
commitc65f167e0e8b275f3723742af3f72b41babc3a56
authormarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 21 Jun 2017 12:51:46 +0000 (21 12:51 +0000)
committermarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 21 Jun 2017 12:51:46 +0000 (21 12:51 +0000)
tree0ba9b3f978dc6746d354dccdfb340b58bb47cbfb
parent288405ecc9c42d37314ca62f7fa7c2eface44782
Make early return predictor more precise.

2017-06-21  Martin Liska  <mliska@suse.cz>

PR tree-optimization/79489
* gimplify.c (maybe_add_early_return_predict_stmt): New
function.
(gimplify_return_expr): Call the function.
* predict.c (tree_estimate_probability_bb): Remove handling
of early return.
* predict.def: Update comment about early return predictor.
* gimple-predict.h (is_gimple_predict): New function.
* predict.def: Change default value of early return to 66.
* tree-tailcall.c (find_tail_calls): Skip GIMPLE_PREDICT
statements.
* passes.def: Put pass_strip_predict_hints to the beginning of
IPA passes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@249450 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/gimple-low.c
gcc/gimple-predict.h
gcc/gimplify.c
gcc/passes.def
gcc/predict.c
gcc/predict.def
gcc/tree-tailcall.c