koffi 2.3.20 → 2.3.21-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/2.3.21-beta.2/koffi_darwin_arm64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_darwin_x64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_freebsd_arm64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_freebsd_ia32/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_freebsd_x64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_linux_arm32hf/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_linux_arm64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_linux_ia32/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_linux_riscv64hf64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_linux_x64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_openbsd_ia32/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_openbsd_x64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_win32_arm64/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_win32_ia32/koffi.node +0 -0
- package/build/2.3.21-beta.2/koffi_win32_x64/koffi.node +0 -0
- package/package.json +1 -1
- package/src/koffi/CMakeLists.txt +2 -2
- package/src/koffi/src/abi_riscv64_asm.S +2 -2
- package/src/koffi/src/ffi.hh +1 -1
- package/src/koffi/src/trampolines/armasm.inc +59390 -2046
- package/src/koffi/src/trampolines/gnu.inc +43008 -0
- package/src/koffi/src/trampolines/masm32.inc +57344 -0
- package/src/koffi/src/trampolines/masm64.inc +57344 -0
- package/src/koffi/src/trampolines/prototypes.inc +14337 -1
- package/build/2.3.20/koffi_darwin_arm64/koffi.node +0 -0
- package/build/2.3.20/koffi_darwin_x64/koffi.node +0 -0
- package/build/2.3.20/koffi_freebsd_arm64/koffi.node +0 -0
- package/build/2.3.20/koffi_freebsd_ia32/koffi.node +0 -0
- package/build/2.3.20/koffi_freebsd_x64/koffi.node +0 -0
- package/build/2.3.20/koffi_linux_arm32hf/koffi.node +0 -0
- package/build/2.3.20/koffi_linux_arm64/koffi.node +0 -0
- package/build/2.3.20/koffi_linux_ia32/koffi.node +0 -0
- package/build/2.3.20/koffi_linux_riscv64hf64/koffi.node +0 -0
- package/build/2.3.20/koffi_linux_x64/koffi.node +0 -0
- package/build/2.3.20/koffi_openbsd_ia32/koffi.node +0 -0
- package/build/2.3.20/koffi_openbsd_x64/koffi.node +0 -0
- package/build/2.3.20/koffi_win32_arm64/koffi.node +0 -0
- package/build/2.3.20/koffi_win32_ia32/koffi.node +0 -0
- package/build/2.3.20/koffi_win32_x64/koffi.node +0 -0
- /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_arm64/koffi.exp +0 -0
- /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_arm64/koffi.lib +0 -0
- /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_ia32/koffi.exp +0 -0
- /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_ia32/koffi.lib +0 -0
- /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_x64/koffi.exp +0 -0
- /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_x64/koffi.lib +0 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
package/src/koffi/CMakeLists.txt
CHANGED
|
@@ -34,6 +34,8 @@ else()
|
|
|
34
34
|
set(CMAKE_CXX_STANDARD 14)
|
|
35
35
|
endif()
|
|
36
36
|
if(MSVC)
|
|
37
|
+
set(CMAKE_MSVC_RUNTIME_LIBRARY MultiThreaded)
|
|
38
|
+
|
|
37
39
|
add_compile_options(/Zc:__cplusplus /W4 /wd4200 /wd4458 /wd4706 /wd4100 /wd4127 /wd4702 /wd4201 /wd4324)
|
|
38
40
|
|
|
39
41
|
# ASM_MASM does not (yet) work on Windows ARM64
|
|
@@ -60,8 +62,6 @@ if(CMAKE_SIZEOF_VOID_P EQUAL 8)
|
|
|
60
62
|
# CMAKE_SYSTEM_PROCESSOR is wrong on Windows ARM64
|
|
61
63
|
|
|
62
64
|
if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch|arm" OR CMAKE_GENERATOR_PLATFORM STREQUAL "ARM64" OR CMAKE_OSX_ARCHITECTURES MATCHES "arm")
|
|
63
|
-
set(CMAKE_MSVC_RUNTIME_LIBRARY MultiThreaded)
|
|
64
|
-
|
|
65
65
|
if(WIN32)
|
|
66
66
|
get_filename_component(cl_dir "${CMAKE_CXX_COMPILER}" DIRECTORY)
|
|
67
67
|
file(TO_CMAKE_PATH "${cl_dir}/armasm64.exe" asm_compiler)
|
|
@@ -169,7 +169,7 @@ ForwardCallXDD:
|
|
|
169
169
|
addi a1, sp, 8
|
|
170
170
|
addi a2, sp, 176
|
|
171
171
|
addi a3, sp, 136
|
|
172
|
-
|
|
172
|
+
call RelayCallback
|
|
173
173
|
ld ra, 0(sp)
|
|
174
174
|
ld a0, 136(sp)
|
|
175
175
|
ld a1, 144(sp)
|
|
@@ -201,7 +201,7 @@ ForwardCallXDD:
|
|
|
201
201
|
addi a1, sp, 8
|
|
202
202
|
addi a2, sp, 176
|
|
203
203
|
addi a3, sp, 136
|
|
204
|
-
|
|
204
|
+
call RelayCallback
|
|
205
205
|
ld ra, 0(sp)
|
|
206
206
|
ld a0, 136(sp)
|
|
207
207
|
ld a1, 144(sp)
|
package/src/koffi/src/ffi.hh
CHANGED
|
@@ -38,7 +38,7 @@ static const Size DefaultMaxTypeSize = Mebibytes(64);
|
|
|
38
38
|
static const int MaxAsyncCalls = 256;
|
|
39
39
|
static const Size MaxParameters = 32;
|
|
40
40
|
static const Size MaxOutParameters = 16;
|
|
41
|
-
static const Size MaxTrampolines =
|
|
41
|
+
static const Size MaxTrampolines = 8192;
|
|
42
42
|
|
|
43
43
|
enum class PrimitiveKind {
|
|
44
44
|
Void,
|