https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87706
--- Comment #8 from Jan Hubicka <hubicka at gcc dot gnu.org> --- Author: hubicka Date: Tue Nov 20 13:25:04 2018 New Revision: 266315 URL: https://gcc.gnu.org/viewcvs?rev=266315&root=gcc&view=rev Log: PR ipa/87706 * ipa-fnsummary.c (pass_ipa_fnsummary): Do not remove functions * ipa.c (possible_inline_candidate_p): Break out from .. (process_references): ... here ; drop before_inlining_p; cleanup handling of alises. (walk_polymorphic_call_targets): Likewise. (symbol_table::remove_unreachable_nodes): Likewise. * passes.c (pass_data_ipa_remove_symbols): New structure. (pass_ipa_remove_symbols): New pass. (make_pass_ipa_remove_symbols): New functoin. * passes.def (pass_ipa_remove_symbols): Schedule after early passes. Modified: trunk/gcc/ChangeLog trunk/gcc/ipa-fnsummary.c trunk/gcc/ipa.c trunk/gcc/passes.c trunk/gcc/passes.def trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gcc.dg/ipa/ctor-empty-1.c