[MLton] compilation loop

Lukasz S Ziarek lziarek@cs.purdue.edu
Fri, 27 Feb 2004 09:24:25 -0500 (EST)

> makeFormalsRel builds an equivalence relation on the (indices of) the
> formals.  An equivalence relation is represented as a list of
> equivalent pairs (see equivalence-relation.fun).  So, the size is
> potentially quadratic in the number of formals.  This hasn't been a
> problem so far, but I imagine with flattening there could be a lot
> more formals than before.  If you could confirm that this is the
> problem by printing the size of the vector that is passed to
> makeFormalsRel, that would be helpful.  In the meanwhile, I'll think
> about improving the implementation of equivalence relations to store a
> list of equivalence classes instead of a list of equivalent pairs.
> Also in the meanwhile, you can compile -drop-pass redundant and see
> how the rest of the optimizer does.
> And of course make sure you are compiling -type-check true.

Both Hamlet and Model-elimination compile with -type-check true and
-drop-pass redundant.  Without -drop-pass redundant neither will complete
in under an hour. I will have your vector numbers sometime today.


> _______________________________________________
> MLton mailing list
> MLton@mlton.org
> http://www.mlton.org/mailman/listinfo/mlton