diff options
| author | Mike Pall <mike> | 2011-10-24 15:58:54 +0200 |
|---|---|---|
| committer | Mike Pall <mike> | 2011-10-24 15:58:54 +0200 |
| commit | 84683405fbacad0938a953d9654bec27ac75d565 (patch) | |
| tree | b7c1e31ebe0f4a9eb1528e6776c9f274afbdd1bd | |
| parent | 86a5cc427dab0c41101a6e1f1c647973f5e2c15e (diff) | |
| download | luajit-84683405fbacad0938a953d9654bec27ac75d565.tar.gz luajit-84683405fbacad0938a953d9654bec27ac75d565.tar.bz2 luajit-84683405fbacad0938a953d9654bec27ac75d565.zip | |
Don't save/restore tmptv with copyTV.
| -rw-r--r-- | src/lj_trace.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/lj_trace.c b/src/lj_trace.c index 5de43f23..f907a77f 100644 --- a/src/lj_trace.c +++ b/src/lj_trace.c | |||
| @@ -575,17 +575,16 @@ static TValue *trace_state(lua_State *L, lua_CFunction dummy, void *ud) | |||
| 575 | trace_pendpatch(J, 0); | 575 | trace_pendpatch(J, 0); |
| 576 | setvmstate(J2G(J), RECORD); | 576 | setvmstate(J2G(J), RECORD); |
| 577 | lj_vmevent_send_(L, RECORD, | 577 | lj_vmevent_send_(L, RECORD, |
| 578 | TValue savetv; /* Save tmptv state for trace recorder. */ | 578 | /* Save/restore tmptv state for trace recorder. */ |
| 579 | TValue savetv2; | 579 | TValue savetv = J2G(J)->tmptv; |
| 580 | copyTV(L, &savetv, &J2G(J)->tmptv); | 580 | TValue savetv2 = J2G(J)->tmptv2; |
| 581 | copyTV(L, &savetv2, &J2G(J)->tmptv2); | ||
| 582 | setintV(L->top++, J->cur.traceno); | 581 | setintV(L->top++, J->cur.traceno); |
| 583 | setfuncV(L, L->top++, J->fn); | 582 | setfuncV(L, L->top++, J->fn); |
| 584 | setintV(L->top++, J->pt ? (int32_t)proto_bcpos(J->pt, J->pc) : -1); | 583 | setintV(L->top++, J->pt ? (int32_t)proto_bcpos(J->pt, J->pc) : -1); |
| 585 | setintV(L->top++, J->framedepth); | 584 | setintV(L->top++, J->framedepth); |
| 586 | , | 585 | , |
| 587 | copyTV(L, &J2G(J)->tmptv, &savetv); | 586 | J2G(J)->tmptv = savetv; |
| 588 | copyTV(L, &J2G(J)->tmptv2, &savetv2); | 587 | J2G(J)->tmptv2 = savetv2; |
| 589 | ); | 588 | ); |
| 590 | lj_record_ins(J); | 589 | lj_record_ins(J); |
| 591 | break; | 590 | break; |
