* gcc.dg/predict-12.c: New testcase.
commitcbcc42979cadf4badec0886745e1fdbbdc912a6b
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 26 Jun 2016 20:03:35 +0000 (26 20:03 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 26 Jun 2016 20:03:35 +0000 (26 20:03 +0000)
tree758291fab73082c64f9ab653eec592aa1da221c4
parenta1e99c57a0a1ff043c71d7354f484b2f2d6e7c2e
* gcc.dg/predict-12.c: New testcase.

* predict.c: Include gimple-pretty-print.h
(predicted_by_loop_heuristics_p): Check also
PRED_LOOP_EXIT_WITH_RECURSION
(predict_loops): Find self recursive calls and use special purpose
predictors for them; dump log about decisions.
(pass_profile::execute): Dump info about #of iterations.
* predict.def (PRED_LOOP_EXIT_WITH_RECURSION,
(PRED_LOOP_GUARD_WITH_RECURSION): New predictors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237791 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/predict.c
gcc/predict.def
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/predict-12.c [new file with mode: 0644]