Fix snapshot restore for exit to function header.

This commit is contained in:
Mike Pall 2013-09-13 00:33:58 +02:00
parent 1f7b326217
commit f1e7a4477c

View File

@ -845,12 +845,15 @@ const BCIns *lj_snap_restore(jit_State *J, void *exptr)
/* Compute current stack top. */ /* Compute current stack top. */
switch (bc_op(*pc)) { switch (bc_op(*pc)) {
default:
if (bc_op(*pc) < BC_FUNCF) {
L->top = curr_topL(L);
break;
}
/* fallthrough */
case BC_CALLM: case BC_CALLMT: case BC_RETM: case BC_TSETM: case BC_CALLM: case BC_CALLMT: case BC_RETM: case BC_TSETM:
L->top = frame + snap->nslots; L->top = frame + snap->nslots;
break; break;
default:
L->top = curr_topL(L);
break;
} }
return pc; return pc;
} }