rbdc 0.8.7 → 0.9.0

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 (215) hide show
  1. checksums.yaml +7 -0
  2. data/{bindings → dyncall-bindings}/ruby/rbdc/extconf.rb +1 -1
  3. data/{bindings → dyncall-bindings}/ruby/rbdc/rbdc.c +3 -1
  4. data/dyncall/AUTHORS +2 -0
  5. data/dyncall/BUGS +1 -0
  6. data/dyncall/CMakeLists.txt +10 -2
  7. data/dyncall/ChangeLog +46 -11
  8. data/dyncall/LICENSE +4 -1
  9. data/dyncall/Makefile.embedded +7 -3
  10. data/dyncall/README +23 -14
  11. data/dyncall/ToDo +27 -28
  12. data/dyncall/autovar/autovar_ABI.h +3 -2
  13. data/dyncall/autovar/autovar_ARCH.h +13 -10
  14. data/dyncall/autovar/autovar_CC.h +3 -2
  15. data/dyncall/autovar/autovar_OS.h +3 -2
  16. data/dyncall/autovar/autovar_OSFAMILY.h +3 -2
  17. data/dyncall/buildsys/scripts/batch-build-linux.sh +6 -2
  18. data/dyncall/buildsys/scripts/batch-build-minix.sh +2 -0
  19. data/dyncall/buildsys/scripts/batch-build-psp.sh +4 -1
  20. data/dyncall/buildsys/scripts/elf-to-psp-eboot.sh +19 -0
  21. data/dyncall/buildsys/scripts/setenv-cross-ios.sh +0 -0
  22. data/dyncall/buildsys/scripts/setenv-sdk-ios.sh +0 -0
  23. data/dyncall/configure +83 -30
  24. data/dyncall/dyncall/dyncall.3 +16 -4
  25. data/dyncall/dyncall/dyncall.h +9 -1
  26. data/dyncall/dyncall/dyncall_alloc.h +2 -1
  27. data/dyncall/dyncall/dyncall_api.c +2 -1
  28. data/dyncall/dyncall/dyncall_call.S +9 -2
  29. data/dyncall/dyncall/dyncall_call_arm32_arm.S +2 -1
  30. data/dyncall/dyncall/dyncall_call_arm32_arm.h +8 -2
  31. data/dyncall/dyncall/dyncall_call_arm32_arm_armhf.S +11 -19
  32. data/dyncall/dyncall/dyncall_call_arm32_arm_armhf.h +15 -2
  33. data/dyncall/dyncall/dyncall_call_arm32_thumb.h +8 -6
  34. data/dyncall/dyncall/dyncall_call_arm32_thumb_armhf.S +10 -18
  35. data/dyncall/dyncall/dyncall_call_arm32_thumb_gas.s +0 -16
  36. data/dyncall/dyncall/dyncall_call_arm64.S +226 -0
  37. data/dyncall/dyncall/dyncall_call_arm64.h +45 -0
  38. data/dyncall/dyncall/dyncall_call_mips.h +2 -1
  39. data/dyncall/dyncall/dyncall_call_mips_eabi.h +2 -1
  40. data/dyncall/dyncall/dyncall_call_mips_gas.S +2 -1
  41. data/dyncall/dyncall/dyncall_call_mips_n32.h +2 -1
  42. data/dyncall/dyncall/dyncall_call_mips_n64.h +2 -1
  43. data/dyncall/dyncall/dyncall_call_mips_o32.h +2 -1
  44. data/dyncall/dyncall/dyncall_call_ppc32.S +27 -2
  45. data/dyncall/dyncall/dyncall_call_ppc32.h +2 -2
  46. data/dyncall/dyncall/dyncall_call_ppc64.S +210 -0
  47. data/dyncall/dyncall/dyncall_call_ppc64.h +55 -0
  48. data/dyncall/dyncall/dyncall_call_sparc.S +2 -1
  49. data/dyncall/dyncall/dyncall_call_sparc.h +2 -1
  50. data/dyncall/dyncall/dyncall_call_sparc64.S +2 -1
  51. data/dyncall/dyncall/dyncall_call_sparc64.h +2 -1
  52. data/dyncall/dyncall/dyncall_call_sparc_v9.S +25 -23
  53. data/dyncall/dyncall/dyncall_call_sparc_v9.h +2 -1
  54. data/dyncall/dyncall/dyncall_call_x64-att.S +2 -1
  55. data/dyncall/dyncall/dyncall_call_x64.S +2 -1
  56. data/dyncall/dyncall/dyncall_call_x64.h +2 -1
  57. data/dyncall/dyncall/dyncall_call_x86.S +2 -1
  58. data/dyncall/dyncall/dyncall_call_x86.h +2 -1
  59. data/dyncall/dyncall/dyncall_callf.c +56 -66
  60. data/dyncall/dyncall/dyncall_callf.h +5 -1
  61. data/dyncall/dyncall/dyncall_callvm.c +11 -2
  62. data/dyncall/dyncall/dyncall_callvm.h +2 -1
  63. data/dyncall/dyncall/dyncall_callvm_arm32_arm.c +2 -1
  64. data/dyncall/dyncall/dyncall_callvm_arm32_arm.h +2 -1
  65. data/dyncall/dyncall/dyncall_callvm_arm32_arm_armhf.c +60 -30
  66. data/dyncall/dyncall/dyncall_callvm_arm32_arm_armhf.h +3 -2
  67. data/dyncall/dyncall/dyncall_callvm_arm32_thumb.c +2 -24
  68. data/dyncall/dyncall/dyncall_callvm_arm32_thumb.h +2 -1
  69. data/dyncall/dyncall/dyncall_callvm_arm64.c +165 -0
  70. data/dyncall/dyncall/dyncall_callvm_arm64.h +51 -0
  71. data/dyncall/dyncall/dyncall_callvm_arm64_apple.c +272 -0
  72. data/dyncall/dyncall/dyncall_callvm_base.c +2 -1
  73. data/dyncall/dyncall/dyncall_callvm_mips.c +2 -1
  74. data/dyncall/dyncall/dyncall_callvm_mips.h +2 -1
  75. data/dyncall/dyncall/dyncall_callvm_mips_eabi.c +2 -1
  76. data/dyncall/dyncall/dyncall_callvm_mips_eabi.h +2 -1
  77. data/dyncall/dyncall/dyncall_callvm_mips_n32.c +2 -1
  78. data/dyncall/dyncall/dyncall_callvm_mips_n64.c +2 -1
  79. data/dyncall/dyncall/dyncall_callvm_mips_n64.h +2 -1
  80. data/dyncall/dyncall/dyncall_callvm_mips_o32.c +2 -1
  81. data/dyncall/dyncall/dyncall_callvm_mips_o32.h +2 -1
  82. data/dyncall/dyncall/dyncall_callvm_ppc32.c +45 -2
  83. data/dyncall/dyncall/dyncall_callvm_ppc32.h +2 -1
  84. data/dyncall/dyncall/dyncall_callvm_ppc64.c +351 -0
  85. data/dyncall/dyncall/dyncall_callvm_ppc64.h +60 -0
  86. data/dyncall/dyncall/dyncall_callvm_sparc.c +2 -1
  87. data/dyncall/dyncall/dyncall_callvm_sparc.h +2 -1
  88. data/dyncall/dyncall/dyncall_callvm_sparc64.c +2 -2
  89. data/dyncall/dyncall/dyncall_callvm_sparc64.h +2 -1
  90. data/dyncall/dyncall/dyncall_callvm_sparc_v9.c +3 -3
  91. data/dyncall/dyncall/dyncall_callvm_sparc_v9.h +2 -1
  92. data/dyncall/dyncall/dyncall_callvm_x64.c +2 -1
  93. data/dyncall/dyncall/dyncall_callvm_x64.h +2 -1
  94. data/dyncall/dyncall/dyncall_callvm_x86.c +2 -1
  95. data/dyncall/dyncall/dyncall_callvm_x86.h +2 -1
  96. data/dyncall/dyncall/dyncall_config.h +2 -1
  97. data/dyncall/dyncall/dyncall_macros.h +46 -9
  98. data/dyncall/dyncall/dyncall_signature.h +2 -1
  99. data/dyncall/dyncall/dyncall_struct.c +2 -1
  100. data/dyncall/dyncall/dyncall_struct.h +2 -1
  101. data/dyncall/dyncall/dyncall_types.h +2 -1
  102. data/dyncall/dyncall/dyncall_utils.h +2 -1
  103. data/dyncall/dyncall/dyncall_value.h +19 -1
  104. data/dyncall/dyncall/dyncall_vector.c +2 -1
  105. data/dyncall/dyncall/dyncall_vector.h +3 -1
  106. data/dyncall/dyncall/gen-masm.sh +0 -0
  107. data/dyncall/dyncallback/Makefile.generic +1 -1
  108. data/dyncall/dyncallback/dyncall_alloc_wx.c +2 -1
  109. data/dyncall/dyncallback/dyncall_alloc_wx.h +2 -1
  110. data/dyncall/dyncallback/dyncall_alloc_wx_malloc.c +2 -1
  111. data/dyncall/dyncallback/dyncall_alloc_wx_mmap.c +2 -1
  112. data/dyncall/dyncallback/dyncall_alloc_wx_win32.c +2 -1
  113. data/dyncall/dyncallback/dyncall_args.c +22 -10
  114. data/dyncall/dyncallback/dyncall_args.h +2 -1
  115. data/dyncall/dyncallback/dyncall_args_arm32_arm.c +35 -4
  116. data/dyncall/dyncallback/dyncall_args_arm32_arm.h +7 -1
  117. data/dyncall/dyncallback/dyncall_args_arm32_thumb.c +2 -1
  118. data/dyncall/dyncallback/dyncall_args_arm32_thumb.h +2 -1
  119. data/dyncall/dyncallback/dyncall_args_arm64.c +77 -0
  120. data/dyncall/dyncallback/dyncall_args_arm64_apple.c +160 -0
  121. data/dyncall/dyncallback/dyncall_args_mips.c +3 -2
  122. data/dyncall/dyncallback/dyncall_args_mips.h +3 -2
  123. data/dyncall/dyncallback/dyncall_args_ppc32.c +2 -1
  124. data/dyncall/dyncallback/dyncall_args_ppc32.h +9 -7
  125. data/dyncall/dyncallback/dyncall_args_ppc32_sysv.c +95 -0
  126. data/dyncall/dyncallback/dyncall_args_ppc64.c +71 -0
  127. data/dyncall/dyncallback/dyncall_args_ppc64.h +40 -0
  128. data/dyncall/dyncallback/dyncall_args_sparc32.c +2 -1
  129. data/dyncall/dyncallback/dyncall_args_sparc32.h +2 -1
  130. data/dyncall/dyncallback/dyncall_args_sparc64.c +2 -1
  131. data/dyncall/dyncallback/dyncall_args_sparc64.h +2 -1
  132. data/dyncall/dyncallback/dyncall_args_x64.c +2 -1
  133. data/dyncall/dyncallback/dyncall_args_x64.h +2 -1
  134. data/dyncall/dyncallback/dyncall_args_x86.c +2 -1
  135. data/dyncall/dyncallback/dyncall_args_x86.h +2 -1
  136. data/dyncall/dyncallback/dyncall_callback.c +7 -2
  137. data/dyncall/dyncallback/dyncall_callback.h +3 -1
  138. data/dyncall/dyncallback/dyncall_callback_arch.S +14 -6
  139. data/dyncall/dyncallback/dyncall_callback_arm32_arm.c +2 -1
  140. data/dyncall/dyncallback/dyncall_callback_arm32_arm.h +2 -1
  141. data/dyncall/dyncallback/dyncall_callback_arm32_arm_apple.s +1 -1
  142. data/dyncall/dyncallback/{dyncall_callback_arm32_arm_gas.s → dyncall_callback_arm32_arm_gas.S} +17 -7
  143. data/dyncall/dyncallback/dyncall_callback_arm32_thumb.c +2 -1
  144. data/dyncall/dyncallback/dyncall_callback_arm32_thumb.h +2 -1
  145. data/dyncall/dyncallback/{dyncall_callback_arm32_thumb_apple.s → dyncall_callback_arm32_thumb_apple.S} +2 -2
  146. data/dyncall/dyncallback/{dyncall_callback_arm32_thumb_gas.s → dyncall_callback_arm32_thumb_gas.S} +2 -2
  147. data/dyncall/dyncallback/dyncall_callback_arm64.S +111 -0
  148. data/dyncall/dyncallback/dyncall_callback_arm64.c +71 -0
  149. data/dyncall/dyncallback/dyncall_callback_mips.c +3 -2
  150. data/dyncall/dyncallback/dyncall_callback_mips.h +3 -2
  151. data/dyncall/dyncallback/dyncall_callback_ppc32.S +115 -4
  152. data/dyncall/dyncallback/dyncall_callback_ppc32.c +3 -2
  153. data/dyncall/dyncallback/dyncall_callback_ppc32.h +6 -6
  154. data/dyncall/dyncallback/dyncall_callback_ppc32_apple.s +6 -5
  155. data/dyncall/dyncallback/dyncall_callback_ppc64.S +170 -0
  156. data/dyncall/dyncallback/dyncall_callback_ppc64.c +60 -0
  157. data/dyncall/dyncallback/dyncall_callback_ppc64.h +56 -0
  158. data/dyncall/dyncallback/dyncall_callback_sparc32.c +2 -1
  159. data/dyncall/dyncallback/dyncall_callback_sparc32.h +2 -1
  160. data/dyncall/dyncallback/dyncall_callback_sparc32.s +1 -1
  161. data/dyncall/dyncallback/dyncall_callback_sparc64.c +2 -1
  162. data/dyncall/dyncallback/dyncall_callback_sparc64.s +1 -1
  163. data/dyncall/dyncallback/dyncall_callback_x64.S +5 -12
  164. data/dyncall/dyncallback/dyncall_callback_x64.c +2 -1
  165. data/dyncall/dyncallback/dyncall_callback_x64.h +2 -1
  166. data/dyncall/dyncallback/dyncall_callback_x64_masm.asm +0 -7
  167. data/dyncall/dyncallback/dyncall_callback_x86.S +5 -12
  168. data/dyncall/dyncallback/dyncall_callback_x86.c +2 -1
  169. data/dyncall/dyncallback/dyncall_callback_x86.h +2 -1
  170. data/dyncall/dyncallback/dyncall_callback_x86_masm.asm +2 -11
  171. data/dyncall/dyncallback/dyncall_thunk.c +11 -3
  172. data/dyncall/dyncallback/dyncall_thunk.h +8 -2
  173. data/dyncall/dyncallback/dyncall_thunk_arm32_arm.c +7 -7
  174. data/dyncall/dyncallback/dyncall_thunk_arm32_arm.h +2 -1
  175. data/dyncall/dyncallback/dyncall_thunk_arm32_thumb.c +2 -1
  176. data/dyncall/dyncallback/dyncall_thunk_arm32_thumb.h +2 -1
  177. data/dyncall/dyncallback/dyncall_thunk_arm64.c +64 -0
  178. data/dyncall/dyncallback/dyncall_thunk_arm64.h +42 -0
  179. data/dyncall/dyncallback/dyncall_thunk_mips.c +49 -17
  180. data/dyncall/dyncallback/dyncall_thunk_mips.h +3 -2
  181. data/dyncall/dyncallback/dyncall_thunk_ppc32.c +3 -2
  182. data/dyncall/dyncallback/dyncall_thunk_ppc32.h +7 -7
  183. data/dyncall/dyncallback/dyncall_thunk_ppc32_sysv.c +50 -0
  184. data/dyncall/dyncallback/dyncall_thunk_ppc64.c +87 -0
  185. data/dyncall/dyncallback/dyncall_thunk_ppc64.h +55 -0
  186. data/dyncall/dyncallback/dyncall_thunk_sparc32.c +2 -1
  187. data/dyncall/dyncallback/dyncall_thunk_sparc32.h +2 -1
  188. data/dyncall/dyncallback/dyncall_thunk_sparc64.c +2 -1
  189. data/dyncall/dyncallback/dyncall_thunk_sparc64.h +2 -1
  190. data/dyncall/dyncallback/dyncall_thunk_x64.c +2 -1
  191. data/dyncall/dyncallback/dyncall_thunk_x64.h +2 -1
  192. data/dyncall/dyncallback/dyncall_thunk_x86.c +2 -1
  193. data/dyncall/dyncallback/dyncall_thunk_x86.h +2 -1
  194. data/dyncall/dyncallback/dyncallback.3 +3 -3
  195. data/dyncall/dyncallback/gen-masm.sh +0 -0
  196. data/dyncall/dynload/dynload.c +2 -1
  197. data/dyncall/dynload/dynload.h +2 -1
  198. data/dyncall/dynload/dynload_alloc.h +2 -1
  199. data/dyncall/dynload/dynload_darwin.c +2 -1
  200. data/dyncall/dynload/dynload_syms.c +2 -1
  201. data/dyncall/dynload/dynload_syms_elf.c +2 -1
  202. data/dyncall/dynload/dynload_syms_mach-o.c +3 -2
  203. data/dyncall/dynload/dynload_syms_pe.c +2 -1
  204. data/dyncall/dynload/dynload_unix.c +2 -1
  205. data/dyncall/dynload/dynload_windows.c +2 -1
  206. data/dyncall/portasm/gen-masm.sh +0 -0
  207. data/dyncall/portasm/portasm-arm.S +3 -2
  208. data/dyncall/portasm/portasm-ppc.S +2 -1
  209. data/dyncall/portasm/portasm-ppc64.S +119 -0
  210. data/dyncall/portasm/portasm-x64-att.S +2 -1
  211. data/dyncall/portasm/portasm-x86.S +2 -1
  212. metadata +39 -18
  213. data/dyncall/dyncallback/dyncall_callback_x64_apple.s +0 -122
  214. data/dyncall/dyncallback/dyncall_callback_x64_gas.s +0 -119
  215. data/dyncall/dyncallback/dyncall_callback_x64_gas_w64.s +0 -102
@@ -6,7 +6,7 @@
6
6
  Description: Portable Assembler Macros for X64
7
7
  License:
8
8
 
9
- Copyright (c) 2011 Daniel Adler <dadler@uni-goettingen.de>
9
+ Copyright (c) 2011-2015 Daniel Adler <dadler@uni-goettingen.de>
10
10
 
11
11
  Permission to use, copy, modify, and distribute this software for any
12
12
  purpose with or without fee is hereby granted, provided that the above
@@ -23,6 +23,7 @@
23
23
  */
24
24
 
25
25
 
26
+
26
27
  /* Common macros. */
27
28
  #define XCONCAT(A,B) A##B
28
29
  #if defined(GEN_MASM)
@@ -6,7 +6,7 @@
6
6
  Description: Portable Assembler Macros for x86
7
7
  License:
8
8
 
9
- Copyright (c) 2011 Daniel Adler <dadler@uni-goettingen.de>
9
+ Copyright (c) 2011-2015 Daniel Adler <dadler@uni-goettingen.de>
10
10
 
11
11
  Permission to use, copy, modify, and distribute this software for any
12
12
  purpose with or without fee is hereby granted, provided that the above
@@ -23,6 +23,7 @@
23
23
  */
24
24
 
25
25
 
26
+
26
27
  /* Common macros. */
27
28
  #define XCONCAT(A,B) A##B
28
29
  /* MASM syntax. */
metadata CHANGED
@@ -1,15 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rbdc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.7
5
- prerelease:
4
+ version: 0.9.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Tassilo Philipp
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-06-26 00:00:00.000000000 Z
11
+ date: 2015-12-31 00:00:00.000000000 Z
13
12
  dependencies: []
14
13
  description: Ruby interface to dyncall, allowing programmers to call C functions in
15
14
  shared libraries from ruby without writing any glue code at all (e.g. "l.load('/usr/lib/libm.so');
@@ -17,9 +16,11 @@ description: Ruby interface to dyncall, allowing programmers to call C functions
17
16
  email: tphilipp@potion-studios.com
18
17
  executables: []
19
18
  extensions:
20
- - bindings/ruby/rbdc/extconf.rb
19
+ - dyncall-bindings/ruby/rbdc/extconf.rb
21
20
  extra_rdoc_files: []
22
21
  files:
22
+ - dyncall-bindings/ruby/rbdc/extconf.rb
23
+ - dyncall-bindings/ruby/rbdc/rbdc.c
23
24
  - dyncall/AUTHORS
24
25
  - dyncall/BUGS
25
26
  - dyncall/CMakeLists.txt
@@ -66,6 +67,7 @@ files:
66
67
  - dyncall/buildsys/scripts/batch-build-minix.sh
67
68
  - dyncall/buildsys/scripts/batch-build-psp.sh
68
69
  - dyncall/buildsys/scripts/conf-nds.bat
70
+ - dyncall/buildsys/scripts/elf-to-psp-eboot.sh
69
71
  - dyncall/buildsys/scripts/setenv-cross-ios.sh
70
72
  - dyncall/buildsys/scripts/setenv-sdk-ios.sh
71
73
  - dyncall/buildsys/vs2005/dyncall/dyncall.vcproj
@@ -98,6 +100,8 @@ files:
98
100
  - dyncall/dyncall/dyncall_call_arm32_thumb_apple.s
99
101
  - dyncall/dyncall/dyncall_call_arm32_thumb_armhf.S
100
102
  - dyncall/dyncall/dyncall_call_arm32_thumb_gas.s
103
+ - dyncall/dyncall/dyncall_call_arm64.S
104
+ - dyncall/dyncall/dyncall_call_arm64.h
101
105
  - dyncall/dyncall/dyncall_call_mips.h
102
106
  - dyncall/dyncall/dyncall_call_mips_eabi.h
103
107
  - dyncall/dyncall/dyncall_call_mips_eabi_gas.s
@@ -110,6 +114,8 @@ files:
110
114
  - dyncall/dyncall/dyncall_call_mips_o32_gas.s
111
115
  - dyncall/dyncall/dyncall_call_ppc32.S
112
116
  - dyncall/dyncall/dyncall_call_ppc32.h
117
+ - dyncall/dyncall/dyncall_call_ppc64.S
118
+ - dyncall/dyncall/dyncall_call_ppc64.h
113
119
  - dyncall/dyncall/dyncall_call_sparc.S
114
120
  - dyncall/dyncall/dyncall_call_sparc.h
115
121
  - dyncall/dyncall/dyncall_call_sparc64.S
@@ -135,6 +141,9 @@ files:
135
141
  - dyncall/dyncall/dyncall_callvm_arm32_arm_armhf.h
136
142
  - dyncall/dyncall/dyncall_callvm_arm32_thumb.c
137
143
  - dyncall/dyncall/dyncall_callvm_arm32_thumb.h
144
+ - dyncall/dyncall/dyncall_callvm_arm64.c
145
+ - dyncall/dyncall/dyncall_callvm_arm64.h
146
+ - dyncall/dyncall/dyncall_callvm_arm64_apple.c
138
147
  - dyncall/dyncall/dyncall_callvm_base.c
139
148
  - dyncall/dyncall/dyncall_callvm_mips.c
140
149
  - dyncall/dyncall/dyncall_callvm_mips.h
@@ -147,6 +156,8 @@ files:
147
156
  - dyncall/dyncall/dyncall_callvm_mips_o32.h
148
157
  - dyncall/dyncall/dyncall_callvm_ppc32.c
149
158
  - dyncall/dyncall/dyncall_callvm_ppc32.h
159
+ - dyncall/dyncall/dyncall_callvm_ppc64.c
160
+ - dyncall/dyncall/dyncall_callvm_ppc64.h
150
161
  - dyncall/dyncall/dyncall_callvm_sparc.c
151
162
  - dyncall/dyncall/dyncall_callvm_sparc.h
152
163
  - dyncall/dyncall/dyncall_callvm_sparc64.c
@@ -189,10 +200,15 @@ files:
189
200
  - dyncall/dyncallback/dyncall_args_arm32_arm.h
190
201
  - dyncall/dyncallback/dyncall_args_arm32_thumb.c
191
202
  - dyncall/dyncallback/dyncall_args_arm32_thumb.h
203
+ - dyncall/dyncallback/dyncall_args_arm64.c
204
+ - dyncall/dyncallback/dyncall_args_arm64_apple.c
192
205
  - dyncall/dyncallback/dyncall_args_mips.c
193
206
  - dyncall/dyncallback/dyncall_args_mips.h
194
207
  - dyncall/dyncallback/dyncall_args_ppc32.c
195
208
  - dyncall/dyncallback/dyncall_args_ppc32.h
209
+ - dyncall/dyncallback/dyncall_args_ppc32_sysv.c
210
+ - dyncall/dyncallback/dyncall_args_ppc64.c
211
+ - dyncall/dyncallback/dyncall_args_ppc64.h
196
212
  - dyncall/dyncallback/dyncall_args_sparc32.c
197
213
  - dyncall/dyncallback/dyncall_args_sparc32.h
198
214
  - dyncall/dyncallback/dyncall_args_sparc64.c
@@ -207,17 +223,22 @@ files:
207
223
  - dyncall/dyncallback/dyncall_callback_arm32_arm.c
208
224
  - dyncall/dyncallback/dyncall_callback_arm32_arm.h
209
225
  - dyncall/dyncallback/dyncall_callback_arm32_arm_apple.s
210
- - dyncall/dyncallback/dyncall_callback_arm32_arm_gas.s
226
+ - dyncall/dyncallback/dyncall_callback_arm32_arm_gas.S
211
227
  - dyncall/dyncallback/dyncall_callback_arm32_thumb.c
212
228
  - dyncall/dyncallback/dyncall_callback_arm32_thumb.h
213
- - dyncall/dyncallback/dyncall_callback_arm32_thumb_apple.s
214
- - dyncall/dyncallback/dyncall_callback_arm32_thumb_gas.s
229
+ - dyncall/dyncallback/dyncall_callback_arm32_thumb_apple.S
230
+ - dyncall/dyncallback/dyncall_callback_arm32_thumb_gas.S
231
+ - dyncall/dyncallback/dyncall_callback_arm64.S
232
+ - dyncall/dyncallback/dyncall_callback_arm64.c
215
233
  - dyncall/dyncallback/dyncall_callback_mips.c
216
234
  - dyncall/dyncallback/dyncall_callback_mips.h
217
235
  - dyncall/dyncallback/dyncall_callback_ppc32.S
218
236
  - dyncall/dyncallback/dyncall_callback_ppc32.c
219
237
  - dyncall/dyncallback/dyncall_callback_ppc32.h
220
238
  - dyncall/dyncallback/dyncall_callback_ppc32_apple.s
239
+ - dyncall/dyncallback/dyncall_callback_ppc64.S
240
+ - dyncall/dyncallback/dyncall_callback_ppc64.c
241
+ - dyncall/dyncallback/dyncall_callback_ppc64.h
221
242
  - dyncall/dyncallback/dyncall_callback_sparc32.c
222
243
  - dyncall/dyncallback/dyncall_callback_sparc32.h
223
244
  - dyncall/dyncallback/dyncall_callback_sparc32.s
@@ -226,9 +247,6 @@ files:
226
247
  - dyncall/dyncallback/dyncall_callback_x64.S
227
248
  - dyncall/dyncallback/dyncall_callback_x64.c
228
249
  - dyncall/dyncallback/dyncall_callback_x64.h
229
- - dyncall/dyncallback/dyncall_callback_x64_apple.s
230
- - dyncall/dyncallback/dyncall_callback_x64_gas.s
231
- - dyncall/dyncallback/dyncall_callback_x64_gas_w64.s
232
250
  - dyncall/dyncallback/dyncall_callback_x64_masm.asm
233
251
  - dyncall/dyncallback/dyncall_callback_x86.S
234
252
  - dyncall/dyncallback/dyncall_callback_x86.c
@@ -241,10 +259,15 @@ files:
241
259
  - dyncall/dyncallback/dyncall_thunk_arm32_arm.h
242
260
  - dyncall/dyncallback/dyncall_thunk_arm32_thumb.c
243
261
  - dyncall/dyncallback/dyncall_thunk_arm32_thumb.h
262
+ - dyncall/dyncallback/dyncall_thunk_arm64.c
263
+ - dyncall/dyncallback/dyncall_thunk_arm64.h
244
264
  - dyncall/dyncallback/dyncall_thunk_mips.c
245
265
  - dyncall/dyncallback/dyncall_thunk_mips.h
246
266
  - dyncall/dyncallback/dyncall_thunk_ppc32.c
247
267
  - dyncall/dyncallback/dyncall_thunk_ppc32.h
268
+ - dyncall/dyncallback/dyncall_thunk_ppc32_sysv.c
269
+ - dyncall/dyncallback/dyncall_thunk_ppc64.c
270
+ - dyncall/dyncallback/dyncall_thunk_ppc64.h
248
271
  - dyncall/dyncallback/dyncall_thunk_sparc32.c
249
272
  - dyncall/dyncallback/dyncall_thunk_sparc32.h
250
273
  - dyncall/dyncallback/dyncall_thunk_sparc64.c
@@ -281,33 +304,31 @@ files:
281
304
  - dyncall/portasm/gen-masm.sh
282
305
  - dyncall/portasm/portasm-arm.S
283
306
  - dyncall/portasm/portasm-ppc.S
307
+ - dyncall/portasm/portasm-ppc64.S
284
308
  - dyncall/portasm/portasm-x64-att.S
285
309
  - dyncall/portasm/portasm-x86.S
286
- - bindings/ruby/rbdc/rbdc.c
287
- - bindings/ruby/rbdc/extconf.rb
288
310
  homepage: http://www.dyncall.org
289
311
  licenses:
290
312
  - ISC
313
+ metadata: {}
291
314
  post_install_message:
292
315
  rdoc_options: []
293
316
  require_paths:
294
317
  - lib
295
318
  required_ruby_version: !ruby/object:Gem::Requirement
296
- none: false
297
319
  requirements:
298
- - - ! '>='
320
+ - - ">="
299
321
  - !ruby/object:Gem::Version
300
322
  version: 1.9.1
301
323
  required_rubygems_version: !ruby/object:Gem::Requirement
302
- none: false
303
324
  requirements:
304
- - - ! '>='
325
+ - - ">="
305
326
  - !ruby/object:Gem::Version
306
327
  version: '0'
307
328
  requirements: []
308
329
  rubyforge_project:
309
- rubygems_version: 1.8.29
330
+ rubygems_version: 2.4.8
310
331
  signing_key:
311
- specification_version: 3
332
+ specification_version: 4
312
333
  summary: foreign function interface for C calls
313
334
  test_files: []
@@ -1,122 +0,0 @@
1
- /*
2
-
3
- Package: dyncall
4
- Library: dyncallback
5
- File: dyncallback/dyncall_callback_x64_apple.s
6
- Description: Callback Thunk - Implementation for x64 (Apple as assembly)
7
- License:
8
-
9
- Copyright (c) 2007-2011 Daniel Adler <dadler@uni-goettingen.de>,
10
- Tassilo Philipp <tphilipp@potion-studios.com>
11
-
12
- Permission to use, copy, modify, and distribute this software for any
13
- purpose with or without fee is hereby granted, provided that the above
14
- copyright notice and this permission notice appear in all copies.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
17
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
18
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
19
- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
20
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
21
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
22
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
23
-
24
- */
25
-
26
-
27
- .intel_syntax
28
- .text
29
-
30
- /* sizes */
31
-
32
- .set DCThunk_size , 24
33
- .set DCArgs_size , 128
34
- .set DCValue_size , 8
35
-
36
- /* frame local variable offsets relative to %rbp*/
37
-
38
- .set FRAME_arg0 , 16
39
- .set FRAME_return , 8
40
- .set FRAME_parent , 0
41
- .set FRAME_DCArgs ,-128
42
- .set FRAME_DCValue ,-136
43
-
44
- /* struct DCCallback */
45
-
46
- .set CTX_thunk , 0
47
- .set CTX_handler , 24
48
- .set CTX_userdata , 32
49
- .set DCCallback_size , 40
50
-
51
- .globl _dcCallbackThunkEntry
52
- _dcCallbackThunkEntry:
53
-
54
- pushq %rbp
55
- movq %rbp, %rsp
56
-
57
- // initialize DCArgs
58
-
59
- // float parameters (8 registers spill to DCArgs)
60
- sub %rsp, 8*8
61
- movq [%rsp+8*7], %xmm7 # struct offset 120: float parameter 7
62
- movq [%rsp+8*6], %xmm6 # struct offset 112: float parameter 6
63
- movq [%rsp+8*5], %xmm5 # struct offset 104: float parameter 5
64
- movq [%rsp+8*4], %xmm4 # struct offset 96: float parameter 4
65
- movq [%rsp+8*3], %xmm3 # struct offset 88: float parameter 3
66
- movq [%rsp+8*2], %xmm2 # struct offset 80: float parameter 2
67
- movq [%rsp+8*1], %xmm1 # struct offset 72: float parameter 1
68
- movq [%rsp+8*0], %xmm0 # struct offset 64: float parameter 0
69
-
70
- // integer parameters (6 registers spill to DCArgs)
71
- pushq %r9 # struct offset 56: parameter 5
72
- pushq %r8 # struct offset 48: parameter 4
73
- pushq %rcx # struct offset 40: parameter 3
74
- pushq %rdx # struct offset 32: parameter 2
75
- pushq %rsi # struct offset 24: parameter 1
76
- pushq %rdi # struct offset 16: parameter 0
77
-
78
- // register counts for integer/pointer and float regs
79
- # struct offset 12: fcount
80
- pushq 0 # struct offset 8: icount
81
-
82
- lea %rdx, [%rbp+FRAME_arg0] # struct offset 0: stack pointer
83
- pushq %rdx
84
-
85
- mov %rsi, %rsp # parameter 1 (RSI) = DCArgs*
86
-
87
- // initialize DCValue
88
-
89
- pushq 0 # structo offset 0: return value (max long long)
90
-
91
- // call handler( *ctx, *args, *value, *userdata)
92
-
93
- mov %rdi, %rax # parameter 0 (RDI) = DCCallback* (RAX)
94
- mov %rcx, [%rdi+CTX_userdata] # arg3 = userdata*
95
- mov %rdx, %rsp # arg2 (RDX) = DCValue*
96
-
97
- pushq 0 # align to 16 bytes
98
-
99
- call [%rax+CTX_handler]
100
-
101
- // pass return type via registers
102
- // distinguish two basic classes 'integer' and 'float'
103
-
104
- mov %dl, %al
105
- movq %rax, [%rbp+FRAME_DCValue]
106
-
107
- ASCII_f = 102
108
- ASCII_d = 100
109
-
110
- cmpb %dl, ASCII_f
111
- je .float
112
- cmpb %dl, ASCII_d
113
- jne .return
114
- .float:
115
- movd %xmm0, %rax
116
-
117
- .return:
118
- mov %rsp, %rbp
119
- pop %rbp
120
- ret
121
-
122
-
@@ -1,119 +0,0 @@
1
- /*
2
-
3
- Package: dyncall
4
- Library: dyncallback
5
- File: dyncallback/dyncall_callback_x64_gas.s
6
- Description: Callback Thunk - Implementation for x64 (GNU as assembler)
7
- License:
8
-
9
- Copyright (c) 2007-2011 Daniel Adler <dadler@uni-goettingen.de>,
10
- Tassilo Philipp <tphilipp@potion-studios.com>
11
-
12
- Permission to use, copy, modify, and distribute this software for any
13
- purpose with or without fee is hereby granted, provided that the above
14
- copyright notice and this permission notice appear in all copies.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
17
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
18
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
19
- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
20
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
21
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
22
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
23
-
24
- */
25
-
26
- .intel_syntax
27
- .text
28
- .globl dcCallbackThunkEntry
29
-
30
- /* sizes */
31
-
32
- .set DCThunk_size , 24
33
- .set DCArgs_size , 128
34
- .set DCValue_size , 8
35
-
36
- /* frame local variable offsets relative to %rbp*/
37
-
38
- .set FRAME_arg0 , 16
39
- .set FRAME_return , 8
40
- .set FRAME_parent , 0
41
- .set FRAME_DCArgs ,-128
42
- .set FRAME_DCValue ,-136
43
-
44
- /* struct DCCallback */
45
-
46
- .set CTX_thunk , 0
47
- .set CTX_handler , 24
48
- .set CTX_userdata , 32
49
- .set DCCallback_size , 40
50
-
51
- dcCallbackThunkEntry:
52
-
53
- pushq %rbp
54
- movq %rbp, %rsp
55
-
56
- // initialize DCArgs
57
-
58
- // float parameters (8 registers spill to DCArgs)
59
- sub %rsp, 8*8
60
- movq [%rsp+8*7], %xmm7 # struct offset 120: float parameter 7
61
- movq [%rsp+8*6], %xmm6 # struct offset 112: float parameter 6
62
- movq [%rsp+8*5], %xmm5 # struct offset 104: float parameter 5
63
- movq [%rsp+8*4], %xmm4 # struct offset 96: float parameter 4
64
- movq [%rsp+8*3], %xmm3 # struct offset 88: float parameter 3
65
- movq [%rsp+8*2], %xmm2 # struct offset 80: float parameter 2
66
- movq [%rsp+8*1], %xmm1 # struct offset 72: float parameter 1
67
- movq [%rsp+8*0], %xmm0 # struct offset 64: float parameter 0
68
-
69
- // fill integer parameters (6 registers spill to DCArgs)
70
- pushq %r9 # struct offset 56: parameter 5
71
- pushq %r8 # struct offset 48: parameter 4
72
- pushq %rcx # struct offset 40: parameter 3
73
- pushq %rdx # struct offset 32: parameter 2
74
- pushq %rsi # struct offset 24: parameter 1
75
- pushq %rdi # struct offset 16: parameter 0
76
-
77
- // fill register counts for integer/pointer and float regs
78
- pushq 0 # struct offset 12: fcount
79
- # struct offset 8: icount
80
-
81
- // fill argument stack pointer
82
- lea %rdx, [%rbp+FRAME_arg0]
83
- pushq %rdx # struct offset 0: stack pointer
84
-
85
- mov %rsi, %rsp # arg1 (RSI) = DCArgs*
86
-
87
- // initialize DCValue:
88
- pushq 0 # structo offset 0: return value (max long long)
89
-
90
- // call handler( *ctx, *args, *value, *userdata)
91
-
92
- mov %rdi, %rax # arg0 (RDI) = DCCallback* (RAX)
93
- mov %rcx, [%rdi+CTX_userdata] # arg3 = userdata*
94
- mov %rdx, %rsp # arg2 (RDX) = DCValue*
95
-
96
- pushq 0 # align to 16 bytes
97
-
98
- call [%rax+CTX_handler]
99
-
100
- // pass return type via registers
101
- // distinguish two basic classes 'integer' and 'float'
102
-
103
- mov %dl, %al
104
- movq %rax, [%rbp+FRAME_DCValue]
105
-
106
- cmp %dl, 'f'
107
- je .float
108
- cmp %dl, 'd'
109
- je .float
110
- .int:
111
- jmp .return
112
- .float:
113
- movd %xmm0, %rax
114
-
115
- .return:
116
- mov %rsp, %rbp
117
- pop %rbp
118
- ret
119
-