This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [lto][patch] Split all_lto_ipa_passes out of all_regular_ipa_passes
- From: Diego Novillo <dnovillo at google dot com>
- To: Rafael Espindola <espindola at google dot com>
- Cc: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: Thu, 6 Nov 2008 11:53:40 -0500
- Subject: Re: [lto][patch] Split all_lto_ipa_passes out of all_regular_ipa_passes
- References: <38a0d8450811060744y25a6019fv23b1a559e44bab2@mail.gmail.com>
On Thu, Nov 6, 2008 at 10:44, Rafael Espindola <espindola@google.com> wrote:
> @@ -1248,7 +1248,14 @@ ipa_passes (void)
> gimple_register_cfg_hooks ();
> bitmap_obstack_initialize (NULL);
> execute_ipa_pass_list (all_small_ipa_passes);
> - execute_regular_ipa_pass_list (all_regular_ipa_passes);
> +
> + execute_ipa_summary_passes ((struct ipa_opt_pass *) all_regular_ipa_passes);
> + execute_ipa_summary_passes ((struct ipa_opt_pass *) all_lto_ipa_passes);
None of the LTO generation passes has a summary generation phase.
But I guess that conceptually they could, so this is OK.
> /* The root of the compilation pass tree, once constructed. */
> struct opt_pass *all_passes, *all_small_ipa_passes, *all_lowering_passes,
> - *all_regular_ipa_passes;
> + *all_regular_ipa_passes, *all_lto_ipa_passes;
I would rather name this all_lto_gen_passes or something like
that. These passes simply write out LTO information.
> + *p = NULL;
> +
> + p = &all_lto_ipa_passes;
> + NEXT_PASS (pass_ipa_lto_gimple_out);
> + NEXT_PASS (pass_ipa_lto_cgraph);
> NEXT_PASS (pass_ipa_lto_wpa_fixup);
> - NEXT_PASS (pass_ipa_lto_finish_out); /* This must be the last IPA_PASS. */
> + NEXT_PASS (pass_ipa_lto_finish_out);
Leave the comment in, please. pass_ipa_lto_finish_out still
must be the last LTO generation pass.
OK with those changes.
Diego.