[MLton-devel] -exn-history true (followup)

Matthew Fluet Matthew Fluet <fluet@CS.Cornell.EDU>
Thu, 22 Aug 2002 08:17:47 -0400 (EDT)


>             useless starting
>             useless raised in 3.50 + 3.22 (48% GC)
>          closureConvertSimplify raised in 18.28 + 6.96 (28% GC)
>       pre codegen raised in 63.92 + 33.35 (34% GC)
>    Compile SML raised in 63.92 + 33.35 (34% GC)
> MLton raised in 63.92 + 33.35 (34% GC)
> mlton: shrinker raised L_0 has no index property 
> 
> With -keep-pass constantPropagation, the faulty object becomes
> L_85300. I have included the corresponding pre and post ssa files.

Ugh!  This is just a nastier version of what I said before:

> Just to point it out, this bugfix relies on running the shrinker 
> _before_ the next type-check, else the check-scopes might fail.  This is
> exactly the problem that Alain's code had -- a handler block that is
> unreachable, but referenced by HandlerPush/HandlerPop.  Simply removing
> the unreachable blocks is fine, but until the next shrink occurs, the
> HandlerPush/HandlerPop's will remain.

We eliminateDeadBlocks, but the HandlerPush/HandlerPop's remain until the
shrinker tries to look up the occurence counts of their labels, which no
longer exist.

In the long run, we need to kill off HandlerPush/Pop.  There are an
increasing number of hacks needed to get around keeping them straight.

In the short run, I guess we could just handle the property lookup
failure, which certainly indicates that the block doesn't exist and the
HandlerPush/Pop can be deleted.



-------------------------------------------------------
This sf.net email is sponsored by: OSDN - Tired of that same old
cell phone?  Get a new here for FREE!
https://www.inphonic.com/r.asp?r=sourceforge1&refcode1=vs3390
_______________________________________________
MLton-devel mailing list
MLton-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlton-devel