my coalescer on ML kit: bad

Stephen Weeks sweeks@intertrust.com
Tue, 11 May 1999 11:59:14 -0700 (PDT)


> Well,  that was certainly not very impressive.  For the ML kit, here are some
> statistics:
>                                     old coalescer           new coalescer
...
>         number of limit checks        119,171,837             119,188,003
...

> Any idea why did the number of limit checks changed (up by epsilon)?

Again, I claim that this points to different Cps programs being run.
The number of limit checks should be invariant across
chunkification/coalescing.  This is not completely obvious from the
backend source code, since limit checks are inserted in machine.fun,
well after chunkification.  However, this code is actually only
inserting the number of bytes into the limit checks.  The actual
placement of limit checks is determined by limit-check.fun, which only
looks at the Cps program, as its signature indicates.

Could you do some other experiments on smaller benchmarks to see if
you are able to duplicate these anomalies of changes in number of
returns and limit checks?