summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Green <green@moxielogic.com>2014-04-23 19:24:47 -0400
committerAnthony Green <green@moxielogic.com>2014-04-23 19:24:47 -0400
commit31e0d4ecff6dc2a6c75a066ee099b52a43f6ba27 (patch)
tree96f5ea013413819e7ac9d1309ebce83e95a1f64a
parent1c0e9a7297ced15413c2d2d5d35f6c650c4b46c9 (diff)
parent99909eb6184b62408d88b6b4e7ab38e84e6d0bf3 (diff)
downloadlibffi-31e0d4ecff6dc2a6c75a066ee099b52a43f6ba27.tar.gz
Merge pull request #119 from joshtriplett/fastcall-fastball
src/x86/win32.S: Define ffi_closure_FASTCALL in the MASM section, too
-rw-r--r--src/x86/win32.S9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/x86/win32.S b/src/x86/win32.S
index 699ea46..daf0e79 100644
--- a/src/x86/win32.S
+++ b/src/x86/win32.S
@@ -201,6 +201,15 @@ ffi_closure_THISCALL PROC NEAR
jmp ffi_closure_STDCALL
ffi_closure_THISCALL ENDP
+ffi_closure_FASTCALL PROC NEAR
+ ;; Insert the register argument on the stack as the first argument
+ xchg DWORD PTR [esp+4], edx
+ xchg DWORD PTR [esp], ecx
+ push edx
+ push ecx
+ jmp ffi_closure_STDCALL
+ffi_closure_FASTCALL ENDP
+
ffi_closure_SYSV PROC NEAR FORCEFRAME
;; the ffi_closure ctx is passed in eax by the trampoline.