aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2023-11-05 11:31:08 +0100
committerMike Pall <mike>2023-11-05 11:31:08 +0100
commitd133d67c881f363f0b5584ebd21a965eb3435aa1 (patch)
tree51a2f5fc48754027b4967801d5a9fb150ddae954
parentdb944b2b56c86fcf133745976763604d96110285 (diff)
downloadluajit-d133d67c881f363f0b5584ebd21a965eb3435aa1.tar.gz
luajit-d133d67c881f363f0b5584ebd21a965eb3435aa1.tar.bz2
luajit-d133d67c881f363f0b5584ebd21a965eb3435aa1.zip
x64: Properly fix __call metamethod return dispatch.
Reported by Sergey Kaplun. #1110
-rw-r--r--src/vm_x86.dasc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/vm_x86.dasc b/src/vm_x86.dasc
index 5b3356dc..56712f90 100644
--- a/src/vm_x86.dasc
+++ b/src/vm_x86.dasc
@@ -1243,7 +1243,7 @@ static void build_subroutines(BuildCtx *ctx)
1243 | mov LFUNC:RB, [RA-8] 1243 | mov LFUNC:RB, [RA-8]
1244 | add NARGS:RD, 1 1244 | add NARGS:RD, 1
1245 | // This is fragile. L->base must not move, KBASE must always be defined. 1245 | // This is fragile. L->base must not move, KBASE must always be defined.
1246 |.if x64 1246 |.if X64
1247 | cmp KBASEa, rdx // Continue with CALLT if flag set. 1247 | cmp KBASEa, rdx // Continue with CALLT if flag set.
1248 |.else 1248 |.else
1249 | cmp KBASE, BASE // Continue with CALLT if flag set. 1249 | cmp KBASE, BASE // Continue with CALLT if flag set.