diff options
Diffstat (limited to 'src/lj_trace.c')
-rw-r--r-- | src/lj_trace.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/lj_trace.c b/src/lj_trace.c index a5468655..fb36c7ee 100644 --- a/src/lj_trace.c +++ b/src/lj_trace.c | |||
@@ -161,8 +161,8 @@ void lj_trace_reenableproto(GCproto *pt) | |||
161 | static void trace_unpatch(jit_State *J, Trace *T) | 161 | static void trace_unpatch(jit_State *J, Trace *T) |
162 | { | 162 | { |
163 | BCOp op = bc_op(T->startins); | 163 | BCOp op = bc_op(T->startins); |
164 | uint32_t pcofs = T->snap[0].mapofs + T->snap[0].nslots; | 164 | MSize pcofs = T->snap[0].mapofs + T->snap[0].nent; |
165 | BCIns *pc = ((BCIns *)(uintptr_t)T->snapmap[pcofs]) - 1; | 165 | BCIns *pc = ((BCIns *)snap_pc(T->snapmap[pcofs])) - 1; |
166 | switch (op) { | 166 | switch (op) { |
167 | case BC_FORL: | 167 | case BC_FORL: |
168 | lua_assert(bc_op(*pc) == BC_JFORI); | 168 | lua_assert(bc_op(*pc) == BC_JFORI); |
@@ -352,7 +352,6 @@ static void trace_start(jit_State *J) | |||
352 | J->cur.ir = J->irbuf; | 352 | J->cur.ir = J->irbuf; |
353 | J->cur.snap = J->snapbuf; | 353 | J->cur.snap = J->snapbuf; |
354 | J->cur.snapmap = J->snapmapbuf; | 354 | J->cur.snapmap = J->snapmapbuf; |
355 | /* J->cur.nsnapmap = 0; */ | ||
356 | J->mergesnap = 0; | 355 | J->mergesnap = 0; |
357 | J->needsnap = 0; | 356 | J->needsnap = 0; |
358 | J->guardemit.irt = 0; | 357 | J->guardemit.irt = 0; |