This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Clean up LTO generation


On Mon, Nov 18, 2013 at 11:10 AM, Bernd Schmidt <bernds@codesourcery.com> wrote:
> I'm looking into using LTO to pass information between compilers for
> different targets, for the OpenACC implementation. This area of the
> compiler seems somewhat obfuscated by overengineering, and I'd like to
> simplify it first to make it easier to work with.
>
> lto_gimple_out and lto_finish_out aren't real passes, only their
> write_summary methods are nonnull. The only thing we really do to emit
> LTO is just to make two function calls, to lto_output and
> produce_asm_for_decls, but this is wrapped in a lot of pass_manager
> boilerplate to confuse the reader. Other downsides are bogus empty dump
> files left behind, and plain dead code like
>
>   ipa_read_optimization_summaries_1 (passes->all_lto_gen_passes);
>
> The following patch simplifies this by getting rid of
> all_lto_gen_passes. We could simplify a little further if we decided we
> really don't need two different timevars for different steps of LTO
> output.  Bootstrapped and tested on x86_64-linux, ok?

I'm fine with this - Honza, any objections?

Thanks,
Richard.

>
> Bernd


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]