[Bug ipa/65076] [5 Regression] 16% tramp3d-v4.cpp compile time regression
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Mar 25 13:33:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65076
--- Comment #19 from Richard Biener <rguenth at gcc dot gnu.org> ---
I've meanwhile disabled pass_chkp_instrumentation_passes by default.
The fixup_cfg in pass_build_ssa_passes doesn't do anything on tramp3d
(and bootstrap/testing shows no issue removing it either).
Adding a local_pure_const to the end of build_ssa_passes unfortunately
makes us ICE in cgraph node verification during early inlining (we have
a dangling call-stmt without a BB on a cgraph edge). Not sure how that
happens as we fixup the cfg and rebuild cgraph edges before early inlining.
Looks like re-building cgraph edges fixes that.
This brings down the number of clobbers and stmts to 4.9 level.
Index: gcc/passes.def
===================================================================
--- gcc/passes.def (revision 221660)
+++ gcc/passes.def (working copy)
@@ -54,10 +54,12 @@ along with GCC; see the file COPYING3.
NEXT_PASS (pass_build_ssa_passes);
PUSH_INSERT_PASSES_WITHIN (pass_build_ssa_passes)
NEXT_PASS (pass_fixup_cfg);
+ NEXT_PASS (pass_rebuild_cgraph_edges);
NEXT_PASS (pass_init_datastructures);
NEXT_PASS (pass_build_ssa);
NEXT_PASS (pass_ubsan);
NEXT_PASS (pass_early_warn_uninitialized);
+ NEXT_PASS (pass_local_pure_const);
POP_INSERT_PASSES ()
NEXT_PASS (pass_chkp_instrumentation_passes);
as opposed to the also possible patch (which doesn't change anything but
compile-time):
Index: gcc/passes.def
===================================================================
--- gcc/passes.def (revision 221657)
+++ gcc/passes.def (working copy)
@@ -53,7 +53,6 @@ along with GCC; see the file COPYING3.
NEXT_PASS (pass_ipa_chkp_early_produce_thunks);
NEXT_PASS (pass_build_ssa_passes);
PUSH_INSERT_PASSES_WITHIN (pass_build_ssa_passes)
- NEXT_PASS (pass_fixup_cfg);
NEXT_PASS (pass_init_datastructures);
NEXT_PASS (pass_build_ssa);
NEXT_PASS (pass_ubsan);
More information about the Gcc-bugs
mailing list