diff --git a/src/lj_snap.c b/src/lj_snap.c index 9124b789..e29b5357 100644 --- a/src/lj_snap.c +++ b/src/lj_snap.c @@ -192,7 +192,7 @@ static BCReg snap_usedef(jit_State *J, uint8_t *udf, handle_jump: { BCReg minslot = bc_a(ins); if (op >= BC_FORI && op <= BC_JFORL) minslot += FORL_EXT; - else if (op >= BC_ITERL && op <= BC_JITERL) minslot += bc_b(pc[-1])-1; + else if (op >= BC_ITERL && op <= BC_JITERL) minslot += bc_b(pc[-2])-1; else if (op == BC_UCLO) { pc += bc_j(ins); break; } for (s = minslot; s < maxslot; s++) DEF_SLOT(s); return minslot < maxslot ? minslot : maxslot;