Skip to content

Commit c66fe57

Browse files
authored
Merge pull request #99 from ltratt/trace_whiles
Reapply "Ensure backwards jumps get a yk_location."
2 parents 7ced271 + c7bf29f commit c66fe57

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

src/lvm.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1222,8 +1222,11 @@ void luaV_execute (lua_State *L, CallInfo *ci) {
12221222
vmfetch();
12231223
#ifdef USE_YK
12241224
YkLocation *ykloc = NULL;
1225-
if (GET_OPCODE(i) == OP_FORLOOP || GET_OPCODE(i) == OP_TFORLOOP)
1225+
if ((GET_OPCODE(i) == OP_FORLOOP) ||
1226+
(GET_OPCODE(i) == OP_TFORLOOP) ||
1227+
((GET_OPCODE(i) == OP_JMP) && (GETARG_sJ(i) < 0))) {
12261228
ykloc = &cl->p->yklocs[pcRel(pc, cl->p)];
1229+
}
12271230
yk_mt_control_point(G(L)->yk_mt, ykloc);
12281231
#endif
12291232
#if 0

0 commit comments

Comments
 (0)