Martin Liska
88617fe425
Do not divide by zero in analyze_brprob.py
...
* analyze_brprob.py: If there's no loop, do not calculate
average number of loop iterations.
From-SVN: r238590
2016-07-21 12:53:24 +00:00
Martin Liska
199b1891cb
Dump profile-based number of iterations
...
* analyze_brprob.py: Parse and display average number
of loop iterations.
* cfgloop.c (flow_loop_dump): Dump average number of loop iterations.
* cfgloop.h: Change 'struct loop' to 'const struct loop' for a
few functions.
* cfgloopanal.c (expected_loop_iterations_unbounded): Set a new
argument to true if the expected number of iterations is
loop-based.
From-SVN: r237762
2016-06-24 16:22:44 +00:00
Martin Liska
69071d86fc
Change PRED_LOOP_EXIT from 92 to 85.
...
* analyze_brprob.py: Fix columns of script output.
* predict.def: PRED_LOOP_EXIT from 92 to 85.
* gcc.dg/predict-9.c: Fix dump scanning.
From-SVN: r237556
2016-06-17 14:28:57 +00:00
Martin Liska
0d73e4800d
Add sorting support to analyze_brprob script
...
* analyze_brprob.py: Add new argument --sorting.
From-SVN: r237256
2016-06-09 11:38:23 +00:00
Martin Liska
e49efc14a1
Add edge predictions pruning
...
* analyze_brprob.py: Cover new dump output format.
* predict.c (dump_prediction): Add new argument.
(enum predictor_reason): New enum.
(struct predictor_hash): New struct.
(predictor_hash::hash): New function.
(predictor_hash::equal): Likewise.
(not_removed_prediction_p): New function.
(prune_predictions_for_bb): Likewise.
(combine_predictions_for_bb): Prune predictions.
* g++.dg/predict-loop-exit-1.C: Scan for a new dump format.
* g++.dg/predict-loop-exit-2.C: Likewise.
* g++.dg/predict-loop-exit-3.C: Likewise.
* gcc.dg/predict-1.c: Likewise.
* gcc.dg/predict-2.c: Likewise.
* gcc.dg/predict-3.c: Likewise.
* gcc.dg/predict-4.c: Likewise.
* gcc.dg/predict-5.c: Likewise.
* gcc.dg/predict-6.c: Likewise.
* gcc.dg/predict-7.c: Likewise.
From-SVN: r237255
2016-06-09 11:37:41 +00:00
Martin Liska
4efae2d63f
Make analyze_brprob.py executable.
...
From-SVN: r236911
2016-05-31 08:52:31 +00:00
Martin Liska
4877829bff
Replace AWK script with the python script.
...
* analyze_brprob: Remove.
* analyze_brprob.py: New file.
From-SVN: r235560
2016-04-28 12:02:37 +00:00