diff options
author | Mike Pall <mike> | 2012-07-29 21:37:45 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2012-07-29 21:37:45 +0200 |
commit | 23abbd9ef344289d1dae6d8fcf9d3c0ab8e1e6e1 (patch) | |
tree | ba616e426bcdf8a7810c39146be220361df80d21 /src | |
parent | 85f29ffd40ee4cd975c4a6565c657ff8d4a619a6 (diff) | |
download | luajit-23abbd9ef344289d1dae6d8fcf9d3c0ab8e1e6e1.tar.gz luajit-23abbd9ef344289d1dae6d8fcf9d3c0ab8e1e6e1.tar.bz2 luajit-23abbd9ef344289d1dae6d8fcf9d3c0ab8e1e6e1.zip |
Only replay sunk stores up to the snapshot reference.
Diffstat (limited to 'src')
-rw-r--r-- | src/lj_snap.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/lj_snap.c b/src/lj_snap.c index 0cf12243..dd123692 100644 --- a/src/lj_snap.c +++ b/src/lj_snap.c | |||
@@ -464,8 +464,7 @@ void lj_snap_replay(jit_State *J, GCtrace *T) | |||
464 | J->baseslot = s+1; | 464 | J->baseslot = s+1; |
465 | } | 465 | } |
466 | if (pass23) { | 466 | if (pass23) { |
467 | IRIns *irlast = &T->ir[(snap+1)->ref]; | 467 | IRIns *irlast = &T->ir[snap->ref]; |
468 | lua_assert(J->exitno+1 < T->nsnap); | ||
469 | pass23 = 0; | 468 | pass23 = 0; |
470 | /* Emit dependent PVALs. */ | 469 | /* Emit dependent PVALs. */ |
471 | for (n = 0; n < nent; n++) { | 470 | for (n = 0; n < nent; n++) { |