which required adding a notion of "lightweight continuation" to the runtime system, where a lightweight continuation involves only frames from JIT0generated code (so that details of the stack layout are known, for example)