aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/vm_arm64.dasc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vm_arm64.dasc b/src/vm_arm64.dasc
index 241c58a1..c55794a6 100644
--- a/src/vm_arm64.dasc
+++ b/src/vm_arm64.dasc
@@ -1182,7 +1182,7 @@ static void build_subroutines(BuildCtx *ctx)
1182 |.ffunc xpcall 1182 |.ffunc xpcall
1183 | ldp CARG1, CARG2, [BASE] 1183 | ldp CARG1, CARG2, [BASE]
1184 | ldrb TMP0w, GL->hookmask 1184 | ldrb TMP0w, GL->hookmask
1185 | subs NARGS8:RC, NARGS8:RC, #16 1185 | subs NARGS8:TMP1, NARGS8:RC, #16
1186 | blo ->fff_fallback 1186 | blo ->fff_fallback
1187 | mov RB, BASE 1187 | mov RB, BASE
1188 | asr ITYPE, CARG2, #47 1188 | asr ITYPE, CARG2, #47
@@ -1190,6 +1190,7 @@ static void build_subroutines(BuildCtx *ctx)
1190 | cmn ITYPE, #-LJ_TFUNC 1190 | cmn ITYPE, #-LJ_TFUNC
1191 | add PC, TMP0, #24+FRAME_PCALL 1191 | add PC, TMP0, #24+FRAME_PCALL
1192 | bne ->fff_fallback // Traceback must be a function. 1192 | bne ->fff_fallback // Traceback must be a function.
1193 | mov NARGS8:RC, NARGS8:TMP1
1193 | add BASE, BASE, #24 1194 | add BASE, BASE, #24
1194 | stp CARG2, CARG1, [RB] // Swap function and traceback. 1195 | stp CARG2, CARG1, [RB] // Swap function and traceback.
1195 | cbz NARGS8:RC, ->vm_call_dispatch 1196 | cbz NARGS8:RC, ->vm_call_dispatch