aboutsummaryrefslogtreecommitdiff
path: root/src/lj_asm.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lj_asm.c')
-rw-r--r--src/lj_asm.c2
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;