mlyacc benchmark
Stephen Weeks
sweeks@intertrust.com
Tue, 11 Jul 2000 09:59:16 -0700 (PDT)
In playing around with the new mlprof Henry sent me, I discovered the
main cause of our slowness on the mlyacc benchmark. There is a dense
SML case statement on a range of integers (in the case of the compiler
[0, 306]) that gets turned into a sequence of equality tests. It
would be nice to turn this into a binary tree or a jump table.
Unfortunately, the only way to do this that I see is to change the ILs
Xml, Sxml, and Cps so that they support cases with integer tests. Any
other ideas? I think this should go pretty high on the todo list for
after this release.
BTW, I guess SML/NJ does the same stupid thing, since we are alread
2.3x faster than them on mlyacc.