1 \chap{The runtime
}{runtime
}
3 There are multiple, possibly orthogonal issues. Limit checks and garbage
4 collections are a little overloaded in their roles, because they also
5 support preemptive thread switching and interupt handling. Forcing
6 frontier to be
0 and hitting a limit check (even a zero byte limit check)
7 will invoke the GC, which will switch to the pending thread.
9 Recall that a limit check with bytes =
0 really means a check for LIMIT
\_SLOP
10 bytes (currently LIMIT
\_SLOP =
512).