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.

Reply via email to