diff options
-rw-r--r-- | src/lj_snap.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/lj_snap.c b/src/lj_snap.c index 1c978c26..803533cd 100644 --- a/src/lj_snap.c +++ b/src/lj_snap.c | |||
@@ -104,8 +104,6 @@ static BCReg snapshot_framelinks(jit_State *J, SnapEntry *map) | |||
104 | if (frame_islua(frame)) { | 104 | if (frame_islua(frame)) { |
105 | map[f++] = SNAP_MKPC(frame_pc(frame)); | 105 | map[f++] = SNAP_MKPC(frame_pc(frame)); |
106 | frame = frame_prevl(frame); | 106 | frame = frame_prevl(frame); |
107 | if (frame + funcproto(frame_func(frame))->framesize > ftop) | ||
108 | ftop = frame + funcproto(frame_func(frame))->framesize; | ||
109 | } else if (frame_iscont(frame)) { | 107 | } else if (frame_iscont(frame)) { |
110 | map[f++] = SNAP_MKFTSZ(frame_ftsz(frame)); | 108 | map[f++] = SNAP_MKFTSZ(frame_ftsz(frame)); |
111 | map[f++] = SNAP_MKPC(frame_contpc(frame)); | 109 | map[f++] = SNAP_MKPC(frame_contpc(frame)); |
@@ -114,7 +112,10 @@ static BCReg snapshot_framelinks(jit_State *J, SnapEntry *map) | |||
114 | lua_assert(!frame_isc(frame)); | 112 | lua_assert(!frame_isc(frame)); |
115 | map[f++] = SNAP_MKFTSZ(frame_ftsz(frame)); | 113 | map[f++] = SNAP_MKFTSZ(frame_ftsz(frame)); |
116 | frame = frame_prevd(frame); | 114 | frame = frame_prevd(frame); |
115 | continue; | ||
117 | } | 116 | } |
117 | if (frame + funcproto(frame_func(frame))->framesize > ftop) | ||
118 | ftop = frame + funcproto(frame_func(frame))->framesize; | ||
118 | } | 119 | } |
119 | lua_assert(f == (MSize)(1 + J->framedepth)); | 120 | lua_assert(f == (MSize)(1 + J->framedepth)); |
120 | return (BCReg)(ftop - lim); | 121 | return (BCReg)(ftop - lim); |