shrinker and commonBlock
Stephen Weeks
MLton@sourcelight.com
Wed, 14 Nov 2001 10:04:32 -0800
> The way the SSA shrinker works, it is completely nullifying the
> effect of commonBlock.
Yeah. Now I don't remember why this doesn't happen in the CPS world.
As far as I can see, it should.
The idea in the shrinker is that it is usually worth it to eliminate a
goto to a raise/return, especially if arguments are passed in the
goto, since the goto setup code is usually as much as the raise/return
code which is duplicated.
I guess since commonBlock always introduces nullary labels, we could
put a hack in the shrinker to avoid duplicating raises/returns when
their label is nullary.