This is the mail archive of the
mailing list for the GCC project.
- From: Diego Novillo <dnovillo at google dot com>
- To: Kenneth Zadeck <zadeck at naturalbridge dot com>
- Cc: "Hubicha, Jan" <jh at suse dot cz>, gcc <gcc at gcc dot gnu dot org>
- Date: Fri, 15 Feb 2008 08:02:32 -0500
- Subject: Re: lto
- References: <47B47E86.email@example.com>
On 2/14/08 12:46 PM, Kenneth Zadeck wrote:
Your idea seems fine to me. Unless I'm not understanding you
completely, it does not really conflict with what we're trying to do in
The main goal of whopr is to support transformations that can be
expressed in terms of a local generation phase, a global analysis that
decides an optimization plan and then a final transformation phase that
applies that plan.
The first and last steps are meant to run in parallel. The distribution
of tasks can be done outside of the compiler (ideally, via 'make -j' or
distcc or what have you).
Certainly, not every IPA transformation can fit this plan, anything that
needs iterating or has cascading effects may not apply. But for the
main IPA transformations (notably inlining), this structure produces
good results. If I understand Jan correctly, this is what he means by
'Big IPA' in his last message.
So, if you build the mechanisms to read/write LTO information from
files, and the ability to load things on demand, that's great. We do
not need to arrive to the final solution in one step, incremental little
victories are a lot more important. In fact, I very strongly suggest
doing this incrementally.
The only thing that I'd like to watch out for is to keep the
implementation flexible so that we don't need to re-implement many
things from scratch when we are ready to extend the system.