summaryrefslogtreecommitdiff
path: root/src/lj_snap.c
diff options
context:
space:
mode:
authorMike Pall <mike>2010-03-13 17:45:09 +0100
committerMike Pall <mike>2010-03-13 17:45:09 +0100
commit16f33422f14573d23522bc4e69cc6219e36f63e9 (patch)
tree5bc71712d294c856ca32e0c707a5fb61ad375cc9 /src/lj_snap.c
parent4f19a15bd9dfbd4e5c3ffc6a70b72449fb79a7ee (diff)
downloadluajit-16f33422f14573d23522bc4e69cc6219e36f63e9.tar.gz
luajit-16f33422f14573d23522bc4e69cc6219e36f63e9.tar.bz2
luajit-16f33422f14573d23522bc4e69cc6219e36f63e9.zip
Restore MULTRES for snapshots pointing to CALLM etc. bytecodes.
Diffstat (limited to 'src/lj_snap.c')
-rw-r--r--src/lj_snap.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/lj_snap.c b/src/lj_snap.c
index 86890a26..fe0389fe 100644
--- a/src/lj_snap.c
+++ b/src/lj_snap.c
@@ -309,7 +309,14 @@ const BCIns *lj_snap_restore(jit_State *J, void *exptr)
309 } 309 }
310 } 310 }
311 } 311 }
312 L->top = curr_topL(L); 312 switch (bc_op(*pc)) {
313 case BC_CALLM: case BC_CALLMT: case BC_RETM: case BC_TSETM:
314 L->top = frame + nslots;
315 break;
316 default:
317 L->top = curr_topL(L);
318 break;
319 }
313 lua_assert(map + nent == flinks); 320 lua_assert(map + nent == flinks);
314 return pc; 321 return pc;
315} 322}