lto

Diego Novillo dnovillo@google.com
Fri Feb 15 13:15:00 GMT 2008


On 2/14/08 12:46 PM, Kenneth Zadeck wrote:

> Comments?

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 
whopr.

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.


Thanks.  Diego.



More information about the Gcc mailing list