On Mon, 2007-03-19 at 10:33 -0700, Joe Buck wrote: > On Mon, Mar 19, 2007 at 09:27:25AM -0400, Diego Novillo wrote: > > Manuel López-Ibáñez wrote on 03/17/07 14:28: > > > > > This is the project proposal that I am planning to submit to Google > > > Summer of Code 2007. It is based on previous work of Jeffrey Laws, > > > Diego Novillo and others. I hope someone will find it interesting and > > > > Yes, I can act as a mentor. > > > > I'm particularly interested in what we are going to do at -O0. Ideally, > > I would try to build the SSA form and/or a predicated SSA form and try > > to phrase the problem in terms of propagation of the uninitialized > > attribute. > > What worries me is that we can't afford to make -O0 run significantly > slower than it does now. Cycle speeds are no longer increasing, we have > to be very careful about slowing things down.
I think it was Honza did some preliminary work a year or two ago which made -O0 use the SSA path, and I seem to recall it was either faster or at least very close in speed. It cleaned up the code with some of the basic fast SSA passes, and the cleanups resulted in faster paths through other parts of the compiler which offset the cost of going into ssa. Perhaps this ought to be looked at again with some seriousness. Some of the SSA machinery has been sped up since then, and Diego is doing some work to throttle otherwise crazy cases... perhaps we can throttle the virtual ops completely at -O0 for speed... We also have a pass manager now, which ought to make trying it much easier. It seems like it is worth a revisit... Andrew