[MLton-devel] byte-code compiler experiments

Matthew Fluet fluet@cs.cornell.edu
Sun, 7 Sep 2003 19:07:25 -0400 (EDT)


> * By comparing "normal making drop" to "drop making drop", we see that
>   we pay a roughly 3X-3.5X time hit for turning off most optimizations.
>   I did leave a few in, like leaf inlining, or things would have been
>   really bad.

3X-3.5X isn't bad at all.  Certainly for debugging the compiler on small
regressions, that would be perfectly reasonable.

> * Something weird is happing with the x86 codegen that is causing it
>   to be much slower in generating code for the drop case than for the
>   normal case.  The drop code is actually slightly smaller, as the
>   sizes show.

I can believe it.  You didn't turn off any x86 codegen optimizations;
while it certainly can't come anywhere near what we missed from the SSA
passes, it will try to some things.  In particular, the x86 codgen will
slow down as the number of basic blocks it processes goes up (e.g., trying
to determine register "calling-conventions" between blocks), and as the
size of the basic blocks (e.g., looking for peephole optimizations).  But,
as to why the code size goes down, that's a bit of a mystery.  Maybe just
because of no inlining?



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
MLton-devel mailing list
MLton-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlton-devel