SSA simplify passes

Stephen Weeks MLton@sourcelight.com
Sun, 6 Jan 2002 15:16:10 -0800


> I think I see the main problem in the flattener.  
...
> I think we really need to tie the two together (I don't see why a
> dependency couldn't occur in the other direction), so that we flatten the
> second argument to f2_0 conditionally on being able to flatten the
> argument to the ::_3 constructor.  I'll see about integrating something
> like this tomorrow.

Makes perfect sense.

> > Yuck.  Maybe arg flattening should only happen if a large fraction of
> > the selects are inevitable.
> 
> Any further thoughts on this?  

I don't think it's relevant.  I was confused about which heuristic the
flattener was using.  I think the current approach is a win even if a
small fraction of selects is inevitable, because it delays the tuple
construction from before the call until after the call, where it is
possibly eliminated.