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.
Files changed (45) hide show
  1. package/build/2.3.21-beta.2/koffi_darwin_arm64/koffi.node +0 -0
  2. package/build/2.3.21-beta.2/koffi_darwin_x64/koffi.node +0 -0
  3. package/build/2.3.21-beta.2/koffi_freebsd_arm64/koffi.node +0 -0
  4. package/build/2.3.21-beta.2/koffi_freebsd_ia32/koffi.node +0 -0
  5. package/build/2.3.21-beta.2/koffi_freebsd_x64/koffi.node +0 -0
  6. package/build/2.3.21-beta.2/koffi_linux_arm32hf/koffi.node +0 -0
  7. package/build/2.3.21-beta.2/koffi_linux_arm64/koffi.node +0 -0
  8. package/build/2.3.21-beta.2/koffi_linux_ia32/koffi.node +0 -0
  9. package/build/2.3.21-beta.2/koffi_linux_riscv64hf64/koffi.node +0 -0
  10. package/build/2.3.21-beta.2/koffi_linux_x64/koffi.node +0 -0
  11. package/build/2.3.21-beta.2/koffi_openbsd_ia32/koffi.node +0 -0
  12. package/build/2.3.21-beta.2/koffi_openbsd_x64/koffi.node +0 -0
  13. package/build/2.3.21-beta.2/koffi_win32_arm64/koffi.node +0 -0
  14. package/build/2.3.21-beta.2/koffi_win32_ia32/koffi.node +0 -0
  15. package/build/2.3.21-beta.2/koffi_win32_x64/koffi.node +0 -0
  16. package/package.json +1 -1
  17. package/src/koffi/CMakeLists.txt +2 -2
  18. package/src/koffi/src/abi_riscv64_asm.S +2 -2
  19. package/src/koffi/src/ffi.hh +1 -1
  20. package/src/koffi/src/trampolines/armasm.inc +59390 -2046
  21. package/src/koffi/src/trampolines/gnu.inc +43008 -0
  22. package/src/koffi/src/trampolines/masm32.inc +57344 -0
  23. package/src/koffi/src/trampolines/masm64.inc +57344 -0
  24. package/src/koffi/src/trampolines/prototypes.inc +14337 -1
  25. package/build/2.3.20/koffi_darwin_arm64/koffi.node +0 -0
  26. package/build/2.3.20/koffi_darwin_x64/koffi.node +0 -0
  27. package/build/2.3.20/koffi_freebsd_arm64/koffi.node +0 -0
  28. package/build/2.3.20/koffi_freebsd_ia32/koffi.node +0 -0
  29. package/build/2.3.20/koffi_freebsd_x64/koffi.node +0 -0
  30. package/build/2.3.20/koffi_linux_arm32hf/koffi.node +0 -0
  31. package/build/2.3.20/koffi_linux_arm64/koffi.node +0 -0
  32. package/build/2.3.20/koffi_linux_ia32/koffi.node +0 -0
  33. package/build/2.3.20/koffi_linux_riscv64hf64/koffi.node +0 -0
  34. package/build/2.3.20/koffi_linux_x64/koffi.node +0 -0
  35. package/build/2.3.20/koffi_openbsd_ia32/koffi.node +0 -0
  36. package/build/2.3.20/koffi_openbsd_x64/koffi.node +0 -0
  37. package/build/2.3.20/koffi_win32_arm64/koffi.node +0 -0
  38. package/build/2.3.20/koffi_win32_ia32/koffi.node +0 -0
  39. package/build/2.3.20/koffi_win32_x64/koffi.node +0 -0
  40. /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_arm64/koffi.exp +0 -0
  41. /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_arm64/koffi.lib +0 -0
  42. /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_ia32/koffi.exp +0 -0
  43. /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_ia32/koffi.lib +0 -0
  44. /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_x64/koffi.exp +0 -0
  45. /package/build/{2.3.20 → 2.3.21-beta.2}/koffi_win32_x64/koffi.lib +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "koffi",
3
- "version": "2.3.20",
3
+ "version": "2.3.21-beta.2",
4
4
  "stable": "2.3.20",
5
5
  "description": "Fast and simple C FFI (foreign function interface) for Node.js",
6
6
  "keywords": [
@@ -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
- jal RelayCallback
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
- jal RelayCallback
204
+ call RelayCallback
205
205
  ld ra, 0(sp)
206
206
  ld a0, 136(sp)
207
207
  ld a1, 144(sp)
@@ -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 = 1024;
41
+ static const Size MaxTrampolines = 8192;
42
42
 
43
43
  enum class PrimitiveKind {
44
44
  Void,