Clean up LTO generation

Jan Hubicka hubicka@ucw.cz
Mon Nov 18 14:14:00 GMT 2013


> 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?

Not at all, I alos considered this somewhat pointless.

Honza
> 
> Thanks,
> Richard.
> 
> >
> > Bernd



More information about the Gcc-patches mailing list