JIT: fix bug with call-with-values

Handling of runstack overflow wasn't right for platforms
with a distinction between short and long jumps --- which
includes x86_64, but only after enough code has been
allocated.
This commit is contained in:
Matthew Flatt 2018-02-14 08:05:18 -07:00
parent 2e1a81b345
commit 55ffc24011

View File

@ -2570,7 +2570,9 @@ int scheme_generate(Scheme_Object *obj, mz_jit_state *jitter, int is_tail, int w
(void)jit_calli(code);
/* non-tail code pops args off runstack for us */
jitter->need_set_rs = 1;
__START_SHORT_JUMPS__(1);
mz_patch_ucbranch(ref5);
__END_SHORT_JUMPS__(1);
if (target != JIT_R0)
jit_movr_p(target, JIT_R0);
}