diff options
Diffstat (limited to 'src/lj_asm.c')
-rw-r--r-- | src/lj_asm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_asm.c b/src/lj_asm.c index e740e8a8..6002392c 100644 --- a/src/lj_asm.c +++ b/src/lj_asm.c | |||
@@ -1913,7 +1913,7 @@ static void asm_tail_link(ASMState *as) | |||
1913 | mres = (int32_t)(snap->nslots - baseslot); | 1913 | mres = (int32_t)(snap->nslots - baseslot); |
1914 | switch (bc_op(*pc)) { | 1914 | switch (bc_op(*pc)) { |
1915 | case BC_CALLM: case BC_CALLMT: | 1915 | case BC_CALLM: case BC_CALLMT: |
1916 | mres -= (int32_t)(1 + bc_a(*pc) + bc_c(*pc)); break; | 1916 | mres -= (int32_t)(1 + LJ_FR2 + bc_a(*pc) + bc_c(*pc)); break; |
1917 | case BC_RETM: mres -= (int32_t)(bc_a(*pc) + bc_d(*pc)); break; | 1917 | case BC_RETM: mres -= (int32_t)(bc_a(*pc) + bc_d(*pc)); break; |
1918 | case BC_TSETM: mres -= (int32_t)bc_a(*pc); break; | 1918 | case BC_TSETM: mres -= (int32_t)bc_a(*pc); break; |
1919 | default: if (bc_op(*pc) < BC_FUNCF) mres = 0; break; | 1919 | default: if (bc_op(*pc) < BC_FUNCF) mres = 0; break; |