diff options
author | Martin Liska <mliska@suse.cz> | 2018-08-10 11:31:51 +0200 |
---|---|---|
committer | Martin Liska <marxin@gcc.gnu.org> | 2018-08-10 09:31:51 +0000 |
commit | 7a096965f668c1d2129c70c92e2398227b97eee6 (patch) | |
tree | 369110415b7ecc35cb7caa2b7a109551fb79b3ed /gcc/passes.def | |
parent | d568f0b6dbee4079cf19412330a0bbb959d530cf (diff) |
Strip only selected predictors after early tree passes (PR tree-optimization/85799).
2018-08-10 Martin Liska <mliska@suse.cz>
PR tree-optimization/85799
* passes.def: Add argument for pass_strip_predict_hints.
* predict.c (class pass_strip_predict_hints): Add new argument
early_p.
(strip_predictor_early): New function.
(pass_strip_predict_hints::execute): Call the function to
strip predictors.
(strip_predict_hints): New function.
* predict.def: Fix comment.
2018-08-10 Martin Liska <mliska@suse.cz>
PR tree-optimization/85799
* gcc.dg/pr85799.c: New test.
From-SVN: r263465
Diffstat (limited to 'gcc/passes.def')
-rw-r--r-- | gcc/passes.def | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/passes.def b/gcc/passes.def index 2a8fbc2efbe..7f4b3479a35 100644 --- a/gcc/passes.def +++ b/gcc/passes.def @@ -98,7 +98,7 @@ along with GCC; see the file COPYING3. If not see early optimizations again. It is thus good idea to do this late. */ NEXT_PASS (pass_split_functions); - NEXT_PASS (pass_strip_predict_hints); + NEXT_PASS (pass_strip_predict_hints, true /* early_p */); POP_INSERT_PASSES () NEXT_PASS (pass_release_ssa_names); NEXT_PASS (pass_rebuild_cgraph_edges); @@ -183,7 +183,7 @@ along with GCC; see the file COPYING3. If not see NEXT_PASS (pass_remove_cgraph_callee_edges); /* Initial scalar cleanups before alias computation. They ensure memory accesses are not indirect wherever possible. */ - NEXT_PASS (pass_strip_predict_hints); + NEXT_PASS (pass_strip_predict_hints, false /* early_p */); NEXT_PASS (pass_ccp, true /* nonzero_p */); NEXT_PASS (pass_post_ipa_warn); /* After CCP we rewrite no longer addressed locals into SSA @@ -348,7 +348,7 @@ along with GCC; see the file COPYING3. If not see NEXT_PASS (pass_all_optimizations_g); PUSH_INSERT_PASSES_WITHIN (pass_all_optimizations_g) NEXT_PASS (pass_remove_cgraph_callee_edges); - NEXT_PASS (pass_strip_predict_hints); + NEXT_PASS (pass_strip_predict_hints, false /* early_p */); /* Lower remaining pieces of GIMPLE. */ NEXT_PASS (pass_lower_complex); NEXT_PASS (pass_lower_vector_ssa); |