summaryrefslogtreecommitdiff
path: root/Build/source/libs/luajit/LuaJIT-src/src/vm_x64.dasc
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/luajit/LuaJIT-src/src/vm_x64.dasc')
-rw-r--r--Build/source/libs/luajit/LuaJIT-src/src/vm_x64.dasc12
1 files changed, 10 insertions, 2 deletions
diff --git a/Build/source/libs/luajit/LuaJIT-src/src/vm_x64.dasc b/Build/source/libs/luajit/LuaJIT-src/src/vm_x64.dasc
index e7e990ae27f..a6b6853e1e9 100644
--- a/Build/source/libs/luajit/LuaJIT-src/src/vm_x64.dasc
+++ b/Build/source/libs/luajit/LuaJIT-src/src/vm_x64.dasc
@@ -1,6 +1,6 @@
|// Low-level VM code for x64 CPUs in LJ_GC64 mode.
|// Bytecode interpreter, fast functions and helper functions.
-|// Copyright (C) 2005-2015 Mike Pall. See Copyright Notice in luajit.h
+|// Copyright (C) 2005-2016 Mike Pall. See Copyright Notice in luajit.h
|
|.arch x64
|.section code_op, code_sub
@@ -531,7 +531,7 @@ static void build_subroutines(BuildCtx *ctx)
| jmp >2
|
|->vm_growstack_v: // Grow stack for vararg Lua function.
- | sub RD, 8
+ | sub RD, 16 // LJ_FR2
| jmp >1
|
|->vm_growstack_f: // Grow stack for fixarg Lua function.
@@ -1804,7 +1804,11 @@ static void build_subroutines(BuildCtx *ctx)
| jmp ->fff_res1
|
|.ffunc_n math_frexp
+ |.if X64WIN
+ | lea CARG2, TMP1
+ |.else
| lea CARG1, TMP1
+ |.endif
| mov RB, BASE
| call extern frexp
| mov BASE, RB
@@ -1822,7 +1826,11 @@ static void build_subroutines(BuildCtx *ctx)
| jmp ->fff_res
|
|.ffunc_n math_modf
+ |.if X64WIN
+ | lea CARG2, [BASE-16]
+ |.else
| lea CARG1, [BASE-16]
+ |.endif
| mov PC, [BASE-8]
| mov RB, BASE
| call extern modf