if self.sthread is not None:
raise geterror(self.space, "continulet already __init__ialized")
sthread = build_sthread(self.space)
# hackish: build the frame "by hand", passing it the correct arguments
raise geterror(self.space, "continulet already finished")
global_state.origin = self
sthread = ec.stacklet_thread = SThread(space, ec)
+ # A bad workaround to kill the JIT anywhere in this thread.
+ # This forces all the frames. It's a bad workaround because
+ # it takes O(depth) time, and it will cause some "abort:
+ # vable escape" in the JIT. The goal is to prevent any frame
+ # from being still virtuals, because the JIT generates code
+ # to un-virtualizable them "on demand" by loading values based
+ # on FORCE_TOKEN, which is an address in the stack.
def permute(space, args_w):