gettext_i18n_rails_js 3.0.0 → 3.1.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 (709) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +11 -0
  3. data/README.md +6 -6
  4. data/lib/gettext_i18n_rails_js/parser/javascript.rb +2 -0
  5. data/lib/gettext_i18n_rails_js/version.rb +1 -1
  6. data/lib/tasks/gettext_i18n_rails_js_tasks.rake +2 -0
  7. data/vendor/bundle/ruby/4.0.0/cache/action_text-trix-2.1.16.gem +0 -0
  8. data/vendor/bundle/ruby/4.0.0/cache/ffi-1.17.3-x86_64-linux-gnu.gem +0 -0
  9. data/vendor/bundle/ruby/4.0.0/cache/po_to_json-3.0.0.gem +0 -0
  10. data/vendor/bundle/ruby/4.0.0/cache/thor-1.5.0.gem +0 -0
  11. data/vendor/bundle/ruby/4.0.0/gems/{action_text-trix-2.1.15 → action_text-trix-2.1.16}/app/assets/javascripts/trix.js +583 -504
  12. data/vendor/bundle/ruby/4.0.0/gems/action_text-trix-2.1.16/lib/action_text/trix/version.rb +3 -0
  13. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/CHANGELOG.md +25 -0
  14. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/Gemfile +7 -4
  15. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/README.md +1 -0
  16. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/Rakefile +7 -4
  17. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/Steepfile +8 -0
  18. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/ffi.gemspec +4 -5
  19. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/3.0/ffi_c.so +0 -0
  20. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/3.1/ffi_c.so +0 -0
  21. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/3.2/ffi_c.so +0 -0
  22. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/3.3/ffi_c.so +0 -0
  23. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/3.4/ffi_c.so +0 -0
  24. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/4.0/ffi_c.so +0 -0
  25. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/autopointer.rb +6 -0
  26. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/compat.rb +11 -0
  27. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/function.rb +23 -0
  28. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/library.rb +19 -3
  29. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/struct_by_reference.rb +1 -1
  30. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/lib/ffi/version.rb +3 -0
  31. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/hello_ractor.rb +9 -1
  32. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/qsort_ractor.rb +9 -1
  33. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/auto_pointer.rbs +1 -1
  34. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/sig/ffi/errno.rbs +8 -0
  35. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.3-x86_64-linux-gnu/sig/ffi/platform.rbs +49 -0
  36. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/struct.rbs +2 -2
  37. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/struct_by_reference.rbs +1 -1
  38. data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi.rbs +4 -1
  39. data/vendor/bundle/ruby/4.0.0/gems/{po_to_json-2.2.1 → po_to_json-3.0.0}/CHANGELOG.md +7 -0
  40. data/vendor/bundle/ruby/4.0.0/gems/{po_to_json-2.2.1 → po_to_json-3.0.0}/README.md +2 -2
  41. data/vendor/bundle/ruby/4.0.0/gems/{po_to_json-2.2.1 → po_to_json-3.0.0}/lib/po_to_json/version.rb +1 -1
  42. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/CONTRIBUTING.md +17 -0
  43. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/README.md +1 -2
  44. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/actions/inject_into_file.rb +35 -2
  45. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/base.rb +2 -1
  46. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/basic.rb +14 -6
  47. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/color.rb +2 -0
  48. data/vendor/bundle/ruby/4.0.0/gems/thor-1.5.0/lib/thor/version.rb +3 -0
  49. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor.rb +34 -1
  50. data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/thor.gemspec +3 -3
  51. data/vendor/bundle/ruby/4.0.0/specifications/{action_text-trix-2.1.15.gemspec → action_text-trix-2.1.16.gemspec} +4 -4
  52. data/vendor/bundle/ruby/4.0.0/specifications/ffi-1.17.3-x86_64-linux-gnu.gemspec +24 -0
  53. data/vendor/bundle/ruby/4.0.0/specifications/{po_to_json-2.2.1.gemspec → po_to_json-3.0.0.gemspec} +3 -3
  54. data/vendor/bundle/ruby/4.0.0/specifications/{thor-1.4.0.gemspec → thor-1.5.0.gemspec} +5 -5
  55. metadata +197 -690
  56. data/vendor/bundle/ruby/4.0.0/cache/action_text-trix-2.1.15.gem +0 -0
  57. data/vendor/bundle/ruby/4.0.0/cache/ffi-1.17.2.gem +0 -0
  58. data/vendor/bundle/ruby/4.0.0/cache/po_to_json-2.2.1.gem +0 -0
  59. data/vendor/bundle/ruby/4.0.0/cache/thor-1.4.0.gem +0 -0
  60. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/ffi-1.17.2/ffi_c.so +0 -0
  61. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/ffi-1.17.2/gem.build_complete +0 -0
  62. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/ffi-1.17.2/gem_make.out +0 -48
  63. data/vendor/bundle/ruby/4.0.0/extensions/x86_64-linux/4.0.0/ffi-1.17.2/mkmf.log +0 -272
  64. data/vendor/bundle/ruby/4.0.0/gems/action_text-trix-2.1.15/lib/action_text/trix/version.rb +0 -3
  65. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/AbstractMemory.c +0 -1129
  66. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/AbstractMemory.h +0 -176
  67. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/ArrayType.c +0 -198
  68. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/ArrayType.h +0 -60
  69. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Buffer.c +0 -417
  70. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Call.c +0 -504
  71. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Call.h +0 -108
  72. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/ClosurePool.c +0 -333
  73. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/ClosurePool.h +0 -59
  74. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/DynamicLibrary.c +0 -397
  75. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/DynamicLibrary.h +0 -98
  76. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Function.c +0 -1081
  77. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Function.h +0 -84
  78. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/FunctionInfo.c +0 -322
  79. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/LastError.c +0 -243
  80. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/LastError.h +0 -47
  81. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/LongDouble.c +0 -65
  82. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/LongDouble.h +0 -47
  83. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Makefile +0 -273
  84. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/MappedType.c +0 -211
  85. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/MappedType.h +0 -57
  86. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/MemoryPointer.c +0 -219
  87. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/MemoryPointer.h +0 -49
  88. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/MethodHandle.c +0 -350
  89. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/MethodHandle.h +0 -56
  90. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Platform.c +0 -78
  91. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Platform.h +0 -45
  92. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Pointer.c +0 -549
  93. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Pointer.h +0 -60
  94. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Struct.c +0 -904
  95. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Struct.h +0 -115
  96. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/StructByValue.c +0 -177
  97. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/StructByValue.h +0 -55
  98. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/StructLayout.c +0 -769
  99. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Thread.c +0 -129
  100. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Thread.h +0 -76
  101. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Type.c +0 -448
  102. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Type.h +0 -63
  103. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Types.c +0 -144
  104. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Types.h +0 -87
  105. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/Variadic.c +0 -348
  106. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/compat.h +0 -82
  107. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/extconf.h +0 -8
  108. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/extconf.rb +0 -115
  109. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/ffi.c +0 -97
  110. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/ChangeLog.old +0 -7407
  111. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/LICENSE +0 -21
  112. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/LICENSE-BUILDTOOLS +0 -353
  113. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/Makefile.am +0 -158
  114. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/Makefile.in +0 -2107
  115. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/README.md +0 -548
  116. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/acinclude.m4 +0 -383
  117. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/autogen.sh +0 -2
  118. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/compile +0 -348
  119. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/config.guess +0 -1812
  120. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/config.sub +0 -1973
  121. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/configure +0 -22807
  122. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/configure.ac +0 -452
  123. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/configure.host +0 -332
  124. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/doc/Makefile.am +0 -3
  125. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/doc/Makefile.in +0 -819
  126. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/doc/libffi.texi +0 -1046
  127. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/doc/version.texi +0 -4
  128. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/fficonfig.h.in +0 -188
  129. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/generate-darwin-source-and-headers.py +0 -312
  130. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/include/Makefile.am +0 -9
  131. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/include/Makefile.in +0 -610
  132. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/include/ffi.h.in +0 -518
  133. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/include/ffi_cfi.h +0 -78
  134. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/include/ffi_common.h +0 -201
  135. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/include/tramp.h +0 -45
  136. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/install-sh +0 -541
  137. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/libffi.map.in +0 -81
  138. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/libffi.pc.in +0 -11
  139. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/libffi.xcodeproj/project.pbxproj +0 -997
  140. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/libtool-ldflags +0 -106
  141. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/libtool-version +0 -29
  142. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/ltmain.sh +0 -11436
  143. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/asmcfi.m4 +0 -13
  144. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_append_flag.m4 +0 -50
  145. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_cc_maxopt.m4 +0 -198
  146. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_cflags_warn_all.m4 +0 -158
  147. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_check_compile_flag.m4 +0 -53
  148. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_compiler_vendor.m4 +0 -119
  149. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_configure_args.m4 +0 -49
  150. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_enable_builddir.m4 +0 -302
  151. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_gcc_archflag.m4 +0 -267
  152. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_gcc_x86_cpuid.m4 +0 -89
  153. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_prepend_flag.m4 +0 -51
  154. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/m4/ax_require_defined.m4 +0 -37
  155. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/make_sunver.pl +0 -333
  156. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/man/Makefile.am +0 -8
  157. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/man/Makefile.in +0 -566
  158. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/man/ffi.3 +0 -41
  159. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/man/ffi_call.3 +0 -103
  160. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/man/ffi_prep_cif.3 +0 -68
  161. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/man/ffi_prep_cif_var.3 +0 -73
  162. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/missing +0 -215
  163. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.sln +0 -33
  164. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj +0 -130
  165. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj.filters +0 -57
  166. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/msvc_build/aarch64/Ffi_staticLib.vcxproj.user +0 -4
  167. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/msvc_build/aarch64/aarch64_include/ffi.h +0 -511
  168. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/msvc_build/aarch64/aarch64_include/fficonfig.h +0 -219
  169. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/msvcc.sh +0 -353
  170. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/aarch64/ffi.c +0 -1145
  171. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/aarch64/ffitarget.h +0 -97
  172. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/aarch64/internal.h +0 -146
  173. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/aarch64/sysv.S +0 -699
  174. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/aarch64/win64_armasm.S +0 -506
  175. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/alpha/ffi.c +0 -521
  176. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/alpha/ffitarget.h +0 -57
  177. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/alpha/internal.h +0 -23
  178. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/alpha/osf.S +0 -282
  179. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arc/arcompact.S +0 -210
  180. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arc/ffi.c +0 -447
  181. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arc/ffitarget.h +0 -67
  182. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arm/ffi.c +0 -921
  183. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arm/ffitarget.h +0 -89
  184. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arm/internal.h +0 -17
  185. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arm/sysv.S +0 -456
  186. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/arm/sysv_msvc_arm32.S +0 -311
  187. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/avr32/ffi.c +0 -423
  188. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/avr32/ffitarget.h +0 -55
  189. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/avr32/sysv.S +0 -208
  190. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/bfin/ffi.c +0 -196
  191. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/bfin/ffitarget.h +0 -43
  192. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/bfin/sysv.S +0 -179
  193. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/closures.c +0 -1107
  194. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/cris/ffi.c +0 -386
  195. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/cris/ffitarget.h +0 -56
  196. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/cris/sysv.S +0 -215
  197. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/csky/ffi.c +0 -395
  198. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/csky/ffitarget.h +0 -63
  199. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/csky/sysv.S +0 -371
  200. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/debug.c +0 -64
  201. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/dlmalloc.c +0 -5172
  202. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/frv/eabi.S +0 -128
  203. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/frv/ffi.c +0 -292
  204. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/frv/ffitarget.h +0 -62
  205. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/ia64/ffi.c +0 -616
  206. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/ia64/ffitarget.h +0 -56
  207. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/ia64/ia64_flags.h +0 -40
  208. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/ia64/unix.S +0 -585
  209. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/java_raw_api.c +0 -374
  210. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/kvx/asm.h +0 -5
  211. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/kvx/ffi.c +0 -273
  212. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/kvx/ffitarget.h +0 -75
  213. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/kvx/sysv.S +0 -127
  214. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/loongarch64/ffi.c +0 -624
  215. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/loongarch64/ffitarget.h +0 -82
  216. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/loongarch64/sysv.S +0 -327
  217. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m32r/ffi.c +0 -249
  218. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m32r/ffitarget.h +0 -53
  219. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m32r/sysv.S +0 -121
  220. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m68k/ffi.c +0 -362
  221. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m68k/ffitarget.h +0 -54
  222. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m68k/sysv.S +0 -357
  223. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m88k/ffi.c +0 -400
  224. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m88k/ffitarget.h +0 -49
  225. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/m88k/obsd.S +0 -209
  226. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/metag/ffi.c +0 -330
  227. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/metag/ffitarget.h +0 -53
  228. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/metag/sysv.S +0 -311
  229. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/microblaze/ffi.c +0 -321
  230. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/microblaze/ffitarget.h +0 -53
  231. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/microblaze/sysv.S +0 -302
  232. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/mips/ffi.c +0 -1317
  233. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/mips/ffitarget.h +0 -249
  234. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/mips/n32.S +0 -827
  235. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/mips/o32.S +0 -565
  236. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/moxie/eabi.S +0 -101
  237. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/moxie/ffi.c +0 -310
  238. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/moxie/ffitarget.h +0 -52
  239. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/or1k/ffi.c +0 -341
  240. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/or1k/ffitarget.h +0 -58
  241. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/or1k/sysv.S +0 -107
  242. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/pa/ffi.c +0 -673
  243. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/pa/ffi64.c +0 -614
  244. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/pa/ffitarget.h +0 -94
  245. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/pa/hpux32.S +0 -417
  246. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/pa/hpux64.S +0 -681
  247. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/pa/linux.S +0 -427
  248. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/aix.S +0 -566
  249. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/aix_closure.S +0 -694
  250. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/asm.h +0 -125
  251. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/darwin.S +0 -378
  252. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +0 -571
  253. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/ffi.c +0 -188
  254. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +0 -1464
  255. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/ffi_linux64.c +0 -1160
  256. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/ffi_powerpc.h +0 -105
  257. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/ffi_sysv.c +0 -933
  258. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/ffitarget.h +0 -204
  259. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/internal.h +0 -10
  260. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/linux64.S +0 -293
  261. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +0 -613
  262. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +0 -421
  263. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/sysv.S +0 -173
  264. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/powerpc/t-aix +0 -5
  265. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/prep_cif.c +0 -280
  266. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/raw_api.c +0 -267
  267. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/riscv/ffi.c +0 -514
  268. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/riscv/ffitarget.h +0 -69
  269. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/riscv/sysv.S +0 -293
  270. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/s390/ffi.c +0 -783
  271. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/s390/ffitarget.h +0 -70
  272. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/s390/internal.h +0 -22
  273. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/s390/sysv.S +0 -363
  274. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sh/ffi.c +0 -717
  275. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sh/ffitarget.h +0 -54
  276. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sh/sysv.S +0 -850
  277. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sh64/ffi.c +0 -469
  278. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sh64/ffitarget.h +0 -58
  279. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sh64/sysv.S +0 -539
  280. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sparc/ffi.c +0 -484
  281. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sparc/ffi64.c +0 -630
  282. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sparc/ffitarget.h +0 -81
  283. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sparc/internal.h +0 -26
  284. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sparc/v8.S +0 -443
  285. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/sparc/v9.S +0 -440
  286. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/tile/ffi.c +0 -355
  287. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/tile/ffitarget.h +0 -65
  288. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/tile/tile.S +0 -360
  289. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/tramp.c +0 -716
  290. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/types.c +0 -106
  291. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/vax/elfbsd.S +0 -195
  292. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/vax/ffi.c +0 -276
  293. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/vax/ffitarget.h +0 -49
  294. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/wasm32/ffi.c +0 -695
  295. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/wasm32/ffitarget.h +0 -62
  296. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/asmnames.h +0 -30
  297. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/ffi.c +0 -835
  298. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/ffi64.c +0 -953
  299. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/ffitarget.h +0 -164
  300. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/ffiw64.c +0 -361
  301. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/internal.h +0 -43
  302. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/internal64.h +0 -36
  303. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/sysv.S +0 -1272
  304. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/sysv_intel.S +0 -998
  305. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/unix64.S +0 -711
  306. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/win64.S +0 -254
  307. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/x86/win64_intel.S +0 -238
  308. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/xtensa/ffi.c +0 -306
  309. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/xtensa/ffitarget.h +0 -57
  310. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/src/xtensa/sysv.S +0 -268
  311. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/stamp-h.in +0 -1
  312. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/Makefile.am +0 -88
  313. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/Makefile.in +0 -618
  314. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/config/default.exp +0 -1
  315. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/emscripten/build-tests.sh +0 -34
  316. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/emscripten/build.sh +0 -46
  317. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/emscripten/conftest.py +0 -86
  318. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/emscripten/node-tests.sh +0 -23
  319. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/emscripten/test.html +0 -7
  320. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/emscripten/test_libffi.py +0 -51
  321. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/lib/libffi.exp +0 -682
  322. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +0 -283
  323. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +0 -45
  324. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.bhaible/Makefile +0 -28
  325. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.bhaible/README +0 -78
  326. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.bhaible/alignof.h +0 -50
  327. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.bhaible/bhaible.exp +0 -63
  328. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-call.c +0 -1746
  329. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.bhaible/test-callback.c +0 -2885
  330. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.bhaible/testcases.c +0 -747
  331. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/align_mixed.c +0 -46
  332. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/align_stdcall.c +0 -46
  333. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/bpo_38748.c +0 -41
  334. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +0 -54
  335. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/callback.c +0 -99
  336. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/callback2.c +0 -108
  337. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/callback3.c +0 -114
  338. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/callback4.c +0 -119
  339. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/err_bad_typedef.c +0 -26
  340. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +0 -163
  341. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/float.c +0 -59
  342. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +0 -60
  343. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +0 -61
  344. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +0 -74
  345. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +0 -62
  346. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/float_va.c +0 -110
  347. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/many.c +0 -59
  348. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/many2.c +0 -57
  349. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/many_double.c +0 -70
  350. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/many_mixed.c +0 -78
  351. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +0 -52
  352. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/offsets.c +0 -46
  353. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/overread.c +0 -54
  354. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/pr1172638.c +0 -127
  355. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +0 -59
  356. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc_tc.c +0 -114
  357. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +0 -36
  358. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +0 -43
  359. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +0 -42
  360. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +0 -35
  361. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +0 -36
  362. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +0 -49
  363. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +0 -42
  364. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +0 -34
  365. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +0 -41
  366. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +0 -48
  367. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +0 -36
  368. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +0 -42
  369. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +0 -38
  370. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +0 -42
  371. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/s55.c +0 -60
  372. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +0 -43
  373. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/strlen2.c +0 -49
  374. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/strlen3.c +0 -49
  375. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/strlen4.c +0 -55
  376. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +0 -67
  377. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct10.c +0 -57
  378. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +0 -67
  379. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +0 -60
  380. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +0 -64
  381. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +0 -66
  382. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +0 -64
  383. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +0 -74
  384. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +0 -81
  385. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +0 -68
  386. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_2.c +0 -63
  387. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_3.c +0 -65
  388. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_3f.c +0 -65
  389. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_4.c +0 -67
  390. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_4f.c +0 -67
  391. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_big.c +0 -93
  392. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_by_value_small.c +0 -61
  393. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_int_float.c +0 -88
  394. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_return_2H.c +0 -63
  395. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/struct_return_8H.c +0 -90
  396. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/uninitialized.c +0 -61
  397. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/va_1.c +0 -78
  398. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/va_2.c +0 -220
  399. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/va_3.c +0 -154
  400. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/va_struct1.c +0 -134
  401. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/va_struct2.c +0 -135
  402. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/va_struct3.c +0 -141
  403. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.call/x32.c +0 -31
  404. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure.exp +0 -67
  405. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn0.c +0 -90
  406. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn1.c +0 -83
  407. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn2.c +0 -83
  408. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn3.c +0 -102
  409. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn4.c +0 -91
  410. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn5.c +0 -94
  411. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_fn6.c +0 -92
  412. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_loc_fn0.c +0 -96
  413. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/closure_simple.c +0 -61
  414. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_12byte.c +0 -112
  415. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_16byte.c +0 -117
  416. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_18byte.c +0 -120
  417. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_19byte.c +0 -131
  418. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_1_1byte.c +0 -93
  419. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_20byte.c +0 -109
  420. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_20byte1.c +0 -113
  421. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_24byte.c +0 -145
  422. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_2byte.c +0 -103
  423. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3_1byte.c +0 -114
  424. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3byte1.c +0 -103
  425. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3byte2.c +0 -103
  426. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_3float.c +0 -113
  427. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_4_1byte.c +0 -120
  428. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_4byte.c +0 -103
  429. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_5_1_byte.c +0 -137
  430. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_5byte.c +0 -116
  431. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_64byte.c +0 -148
  432. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_6_1_byte.c +0 -140
  433. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_6byte.c +0 -121
  434. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_7_1_byte.c +0 -155
  435. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_7byte.c +0 -121
  436. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_8byte.c +0 -102
  437. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_9byte1.c +0 -103
  438. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_9byte2.c +0 -103
  439. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_double.c +0 -111
  440. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_float.c +0 -109
  441. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_longdouble.c +0 -111
  442. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_longdouble_split.c +0 -147
  443. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_longdouble_split2.c +0 -152
  444. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_pointer.c +0 -113
  445. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_sint16.c +0 -108
  446. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_sint32.c +0 -106
  447. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_sint64.c +0 -109
  448. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_uint16.c +0 -108
  449. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_uint32.c +0 -109
  450. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_align_uint64.c +0 -111
  451. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_dbls_struct.c +0 -68
  452. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_double.c +0 -43
  453. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_double_va.c +0 -69
  454. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_float.c +0 -46
  455. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_longdouble.c +0 -115
  456. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_longdouble_va.c +0 -80
  457. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_many_mixed_args.c +0 -70
  458. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_many_mixed_float_double.c +0 -55
  459. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_schar.c +0 -78
  460. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_sshort.c +0 -79
  461. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_sshortchar.c +0 -94
  462. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_uchar.c +0 -99
  463. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_ushort.c +0 -78
  464. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_multi_ushortchar.c +0 -94
  465. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_pointer.c +0 -79
  466. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_pointer_stack.c +0 -152
  467. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_schar.c +0 -47
  468. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_sint.c +0 -44
  469. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_sshort.c +0 -45
  470. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_struct_va1.c +0 -125
  471. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_uchar.c +0 -45
  472. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_uint.c +0 -47
  473. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_uint_va.c +0 -49
  474. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_ulong_va.c +0 -49
  475. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_ulonglong.c +0 -49
  476. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/cls_ushort.c +0 -46
  477. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/err_bad_abi.c +0 -36
  478. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/ffitest.h +0 -1
  479. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/huge_struct.c +0 -343
  480. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct.c +0 -175
  481. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct1.c +0 -161
  482. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct10.c +0 -146
  483. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct11.c +0 -137
  484. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct12.c +0 -86
  485. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct13.c +0 -115
  486. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct2.c +0 -119
  487. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct3.c +0 -120
  488. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct4.c +0 -120
  489. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct5.c +0 -121
  490. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct6.c +0 -142
  491. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct7.c +0 -120
  492. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct8.c +0 -142
  493. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/nested_struct9.c +0 -142
  494. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/problem1.c +0 -90
  495. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/single_entry_structs1.c +0 -86
  496. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/single_entry_structs2.c +0 -102
  497. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/single_entry_structs3.c +0 -101
  498. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/stret_large.c +0 -145
  499. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/stret_large2.c +0 -148
  500. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/stret_medium.c +0 -124
  501. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/stret_medium2.c +0 -125
  502. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/testclosure.c +0 -75
  503. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/unwindtest.cc +0 -118
  504. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.closures/unwindtest_ffi_call.cc +0 -55
  505. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex.inc +0 -91
  506. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_double.c +0 -10
  507. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_float.c +0 -10
  508. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_align_complex_longdouble.c +0 -10
  509. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex.inc +0 -42
  510. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_double.c +0 -10
  511. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_float.c +0 -10
  512. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_longdouble.c +0 -10
  513. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct.inc +0 -71
  514. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_double.c +0 -10
  515. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_float.c +0 -10
  516. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_struct_longdouble.c +0 -10
  517. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va.inc +0 -80
  518. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_double.c +0 -10
  519. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_float.c +0 -16
  520. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/cls_complex_va_longdouble.c +0 -10
  521. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex.exp +0 -36
  522. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex.inc +0 -51
  523. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_double.inc +0 -7
  524. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_float.inc +0 -7
  525. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex_defs_longdouble.inc +0 -7
  526. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex_double.c +0 -10
  527. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex_float.c +0 -10
  528. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex_int.c +0 -86
  529. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/complex_longdouble.c +0 -10
  530. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/ffitest.h +0 -1
  531. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex.inc +0 -78
  532. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_double.c +0 -10
  533. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_float.c +0 -10
  534. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/many_complex_longdouble.c +0 -10
  535. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex.inc +0 -37
  536. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1.inc +0 -41
  537. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_double.c +0 -10
  538. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_float.c +0 -10
  539. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex1_longdouble.c +0 -10
  540. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2.inc +0 -44
  541. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_double.c +0 -10
  542. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_float.c +0 -10
  543. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex2_longdouble.c +0 -10
  544. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_double.c +0 -10
  545. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_float.c +0 -10
  546. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.complex/return_complex_longdouble.c +0 -10
  547. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.go/aa-direct.c +0 -34
  548. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.go/closure1.c +0 -28
  549. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.go/ffitest.h +0 -1
  550. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.go/go.exp +0 -36
  551. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi/testsuite/libffi.go/static-chain.h +0 -19
  552. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi.bsd.mk +0 -40
  553. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi.darwin.mk +0 -105
  554. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi.gnu.mk +0 -32
  555. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi.mk +0 -18
  556. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi.vc.mk +0 -26
  557. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/libffi.vc64.mk +0 -26
  558. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/rbffi.h +0 -55
  559. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/ext/ffi_c/rbffi_endian.h +0 -59
  560. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/lib/ffi/tools/types_generator.rb +0 -137
  561. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/lib/ffi/version.rb +0 -3
  562. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/lib/ffi_c.so +0 -0
  563. data/vendor/bundle/ruby/4.0.0/gems/ffi-1.17.2/rakelib/ffi_gem_helper.rb +0 -65
  564. data/vendor/bundle/ruby/4.0.0/gems/thor-1.4.0/lib/thor/version.rb +0 -3
  565. data/vendor/bundle/ruby/4.0.0/specifications/ffi-1.17.2.gemspec +0 -34
  566. /data/vendor/bundle/ruby/4.0.0/gems/{action_text-trix-2.1.15 → action_text-trix-2.1.16}/LICENSE +0 -0
  567. /data/vendor/bundle/ruby/4.0.0/gems/{action_text-trix-2.1.15 → action_text-trix-2.1.16}/app/assets/stylesheets/trix.css +0 -0
  568. /data/vendor/bundle/ruby/4.0.0/gems/{action_text-trix-2.1.15 → action_text-trix-2.1.16}/lib/action_text/trix/engine.rb +0 -0
  569. /data/vendor/bundle/ruby/4.0.0/gems/{action_text-trix-2.1.15 → action_text-trix-2.1.16}/lib/action_text/trix.rb +0 -0
  570. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/COPYING +0 -0
  571. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/LICENSE +0 -0
  572. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/LICENSE.SPECS +0 -0
  573. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/abstract_memory.rb +0 -0
  574. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/buffer.rb +0 -0
  575. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/callback.rb +0 -0
  576. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/data_converter.rb +0 -0
  577. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/dynamic_library.rb +0 -0
  578. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/enum.rb +0 -0
  579. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/errno.rb +0 -0
  580. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/ffi.rb +0 -0
  581. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/io.rb +0 -0
  582. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/library_path.rb +0 -0
  583. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/managedstruct.rb +0 -0
  584. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/memorypointer.rb +0 -0
  585. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/aarch64-darwin/types.conf +0 -0
  586. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/aarch64-freebsd/types.conf +0 -0
  587. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/aarch64-freebsd12/types.conf +0 -0
  588. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/aarch64-linux/types.conf +0 -0
  589. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/aarch64-openbsd/types.conf +0 -0
  590. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/aarch64-windows/types.conf +0 -0
  591. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/arm-freebsd/types.conf +0 -0
  592. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/arm-freebsd12/types.conf +0 -0
  593. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/arm-linux/types.conf +0 -0
  594. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/hppa1.1-linux/types.conf +0 -0
  595. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/hppa2.0-linux/types.conf +0 -0
  596. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-cygwin/types.conf +0 -0
  597. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-darwin/types.conf +0 -0
  598. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-freebsd/types.conf +0 -0
  599. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-freebsd12/types.conf +0 -0
  600. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-gnu/types.conf +0 -0
  601. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-linux/types.conf +0 -0
  602. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-netbsd/types.conf +0 -0
  603. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-openbsd/types.conf +0 -0
  604. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-solaris/types.conf +0 -0
  605. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/i386-windows/types.conf +0 -0
  606. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/ia64-linux/types.conf +0 -0
  607. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/loongarch64-linux/types.conf +0 -0
  608. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mips-linux/types.conf +0 -0
  609. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mips64-linux/types.conf +0 -0
  610. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mips64el-linux/types.conf +0 -0
  611. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mipsel-linux/types.conf +0 -0
  612. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mipsisa32r6-linux/types.conf +0 -0
  613. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mipsisa32r6el-linux/types.conf +0 -0
  614. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mipsisa64r6-linux/types.conf +0 -0
  615. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/mipsisa64r6el-linux/types.conf +0 -0
  616. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/powerpc-aix/types.conf +0 -0
  617. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/powerpc-darwin/types.conf +0 -0
  618. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/powerpc-linux/types.conf +0 -0
  619. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/powerpc-openbsd/types.conf +0 -0
  620. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/powerpc64-linux/types.conf +0 -0
  621. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/powerpc64le-linux/types.conf +0 -0
  622. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/riscv64-linux/types.conf +0 -0
  623. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/s390-linux/types.conf +0 -0
  624. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/s390x-linux/types.conf +0 -0
  625. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/sparc-linux/types.conf +0 -0
  626. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/sparc-solaris/types.conf +0 -0
  627. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/sparcv9-linux/types.conf +0 -0
  628. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/sparcv9-openbsd/types.conf +0 -0
  629. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/sparcv9-solaris/types.conf +0 -0
  630. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/sw_64-linux/types.conf +0 -0
  631. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-cygwin/types.conf +0 -0
  632. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-darwin/types.conf +0 -0
  633. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-dragonflybsd/types.conf +0 -0
  634. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-freebsd/types.conf +0 -0
  635. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-freebsd12/types.conf +0 -0
  636. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-haiku/types.conf +0 -0
  637. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-linux/types.conf +0 -0
  638. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-msys/types.conf +0 -0
  639. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-netbsd/types.conf +0 -0
  640. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-openbsd/types.conf +0 -0
  641. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-solaris/types.conf +0 -0
  642. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform/x86_64-windows/types.conf +0 -0
  643. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/platform.rb +0 -0
  644. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/pointer.rb +0 -0
  645. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/struct.rb +0 -0
  646. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/struct_layout.rb +0 -0
  647. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/struct_layout_builder.rb +0 -0
  648. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/tools/const_generator.rb +0 -0
  649. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/tools/generator.rb +0 -0
  650. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/tools/generator_task.rb +0 -0
  651. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/tools/struct_generator.rb +0 -0
  652. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/types.rb +0 -0
  653. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/union.rb +0 -0
  654. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi/variadic.rb +0 -0
  655. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/lib/ffi.rb +0 -0
  656. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/getlogin.rb +0 -0
  657. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/getpid.rb +0 -0
  658. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/gettimeofday.rb +0 -0
  659. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/hello.rb +0 -0
  660. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/inotify.rb +0 -0
  661. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/pty.rb +0 -0
  662. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/samples/qsort.rb +0 -0
  663. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/abstract_memory.rbs +0 -0
  664. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/buffer.rbs +0 -0
  665. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/data_converter.rbs +0 -0
  666. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/dynamic_library.rbs +0 -0
  667. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/enum.rbs +0 -0
  668. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/function.rbs +0 -0
  669. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/library.rbs +0 -0
  670. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/native_type.rbs +0 -0
  671. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/pointer.rbs +0 -0
  672. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/struct_by_value.rbs +0 -0
  673. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/struct_layout.rbs +0 -0
  674. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/struct_layout_builder.rbs +0 -0
  675. /data/vendor/bundle/ruby/4.0.0/gems/{ffi-1.17.2 → ffi-1.17.3-x86_64-linux-gnu}/sig/ffi/type.rbs +0 -0
  676. /data/vendor/bundle/ruby/4.0.0/gems/{po_to_json-2.2.1 → po_to_json-3.0.0}/LICENSE +0 -0
  677. /data/vendor/bundle/ruby/4.0.0/gems/{po_to_json-2.2.1 → po_to_json-3.0.0}/lib/po_to_json.rb +0 -0
  678. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/LICENSE.md +0 -0
  679. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/bin/thor +0 -0
  680. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/actions/create_file.rb +0 -0
  681. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/actions/create_link.rb +0 -0
  682. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/actions/directory.rb +0 -0
  683. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/actions/empty_directory.rb +0 -0
  684. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/actions/file_manipulation.rb +0 -0
  685. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/actions.rb +0 -0
  686. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/command.rb +0 -0
  687. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/core_ext/hash_with_indifferent_access.rb +0 -0
  688. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/error.rb +0 -0
  689. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/group.rb +0 -0
  690. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/invocation.rb +0 -0
  691. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/line_editor/basic.rb +0 -0
  692. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/line_editor/readline.rb +0 -0
  693. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/line_editor.rb +0 -0
  694. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/nested_context.rb +0 -0
  695. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/parser/argument.rb +0 -0
  696. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/parser/arguments.rb +0 -0
  697. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/parser/option.rb +0 -0
  698. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/parser/options.rb +0 -0
  699. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/parser.rb +0 -0
  700. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/rake_compat.rb +0 -0
  701. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/runner.rb +0 -0
  702. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/column_printer.rb +0 -0
  703. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/html.rb +0 -0
  704. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/lcs_diff.rb +0 -0
  705. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/table_printer.rb +0 -0
  706. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/terminal.rb +0 -0
  707. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell/wrapped_printer.rb +0 -0
  708. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/shell.rb +0 -0
  709. /data/vendor/bundle/ruby/4.0.0/gems/{thor-1.4.0 → thor-1.5.0}/lib/thor/util.rb +0 -0
@@ -1,921 +0,0 @@
1
- /* -----------------------------------------------------------------------
2
- ffi.c - Copyright (c) 2011 Timothy Wall
3
- Copyright (c) 2011 Plausible Labs Cooperative, Inc.
4
- Copyright (c) 2011 Anthony Green
5
- Copyright (c) 2011 Free Software Foundation
6
- Copyright (c) 1998, 2008, 2011 Red Hat, Inc.
7
-
8
- ARM Foreign Function Interface
9
-
10
- Permission is hereby granted, free of charge, to any person obtaining
11
- a copy of this software and associated documentation files (the
12
- ``Software''), to deal in the Software without restriction, including
13
- without limitation the rights to use, copy, modify, merge, publish,
14
- distribute, sublicense, and/or sell copies of the Software, and to
15
- permit persons to whom the Software is furnished to do so, subject to
16
- the following conditions:
17
-
18
- The above copyright notice and this permission notice shall be included
19
- in all copies or substantial portions of the Software.
20
-
21
- THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND,
22
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
25
- HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
26
- WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
27
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
28
- DEALINGS IN THE SOFTWARE.
29
- ----------------------------------------------------------------------- */
30
-
31
- #if defined(__arm__) || defined(_M_ARM)
32
- #include <fficonfig.h>
33
- #include <ffi.h>
34
- #include <ffi_common.h>
35
- #include <stdint.h>
36
- #include <stdlib.h>
37
- #include <tramp.h>
38
- #include "internal.h"
39
-
40
- #if defined(_WIN32)
41
- #define WIN32_LEAN_AND_MEAN
42
- #include <windows.h>
43
- #endif
44
-
45
- #if FFI_EXEC_TRAMPOLINE_TABLE
46
-
47
- #ifdef __MACH__
48
- #include <mach/machine/vm_param.h>
49
- #endif
50
-
51
- #else
52
- #ifndef _WIN32
53
- extern unsigned int ffi_arm_trampoline[2] FFI_HIDDEN;
54
- #else
55
- // Declare this as an array of char, instead of array of int,
56
- // otherwise Clang optimizes out the "& 0xFFFFFFFE" for clearing
57
- // the thumb bit.
58
- extern unsigned char ffi_arm_trampoline[12] FFI_HIDDEN;
59
- #endif
60
- #endif
61
-
62
- #if defined(__FreeBSD__) && defined(__arm__)
63
- #include <sys/types.h>
64
- #include <machine/sysarch.h>
65
- #endif
66
-
67
- #if defined(__QNX__)
68
- #include <sys/mman.h>
69
- #endif
70
-
71
- /* Forward declares. */
72
- static int vfp_type_p (const ffi_type *);
73
- static void layout_vfp_args (ffi_cif *);
74
-
75
- static void *
76
- ffi_align (ffi_type *ty, void *p)
77
- {
78
- /* Align if necessary */
79
- size_t alignment;
80
- #ifdef _WIN32_WCE
81
- alignment = 4;
82
- #else
83
- alignment = ty->alignment;
84
- if (alignment < 4)
85
- alignment = 4;
86
- #endif
87
- return (void *) FFI_ALIGN (p, alignment);
88
- }
89
-
90
- static size_t
91
- ffi_put_arg (ffi_type *ty, void *src, void *dst)
92
- {
93
- size_t z = ty->size;
94
-
95
- switch (ty->type)
96
- {
97
- case FFI_TYPE_SINT8:
98
- *(UINT32 *)dst = *(SINT8 *)src;
99
- break;
100
- case FFI_TYPE_UINT8:
101
- *(UINT32 *)dst = *(UINT8 *)src;
102
- break;
103
- case FFI_TYPE_SINT16:
104
- *(UINT32 *)dst = *(SINT16 *)src;
105
- break;
106
- case FFI_TYPE_UINT16:
107
- *(UINT32 *)dst = *(UINT16 *)src;
108
- break;
109
-
110
- case FFI_TYPE_INT:
111
- case FFI_TYPE_SINT32:
112
- case FFI_TYPE_UINT32:
113
- case FFI_TYPE_POINTER:
114
- #ifndef _WIN32
115
- case FFI_TYPE_FLOAT:
116
- #endif
117
- *(UINT32 *)dst = *(UINT32 *)src;
118
- break;
119
-
120
- #ifdef _WIN32
121
- // casting a float* to a UINT32* doesn't work on Windows
122
- case FFI_TYPE_FLOAT:
123
- *(uintptr_t *)dst = 0;
124
- *(float *)dst = *(float *)src;
125
- break;
126
- #endif
127
-
128
- case FFI_TYPE_SINT64:
129
- case FFI_TYPE_UINT64:
130
- case FFI_TYPE_DOUBLE:
131
- *(UINT64 *)dst = *(UINT64 *)src;
132
- break;
133
-
134
- case FFI_TYPE_STRUCT:
135
- case FFI_TYPE_COMPLEX:
136
- memcpy (dst, src, z);
137
- break;
138
-
139
- default:
140
- abort();
141
- }
142
-
143
- return FFI_ALIGN (z, 4);
144
- }
145
-
146
- /* ffi_prep_args is called once stack space has been allocated
147
- for the function's arguments.
148
-
149
- The vfp_space parameter is the load area for VFP regs, the return
150
- value is cif->vfp_used (word bitset of VFP regs used for passing
151
- arguments). These are only used for the VFP hard-float ABI.
152
- */
153
- static void
154
- ffi_prep_args_SYSV (ffi_cif *cif, int flags, void *rvalue,
155
- void **avalue, char *argp)
156
- {
157
- ffi_type **arg_types = cif->arg_types;
158
- int i, n;
159
-
160
- if (flags == ARM_TYPE_STRUCT)
161
- {
162
- *(void **) argp = rvalue;
163
- argp += 4;
164
- }
165
-
166
- for (i = 0, n = cif->nargs; i < n; i++)
167
- {
168
- ffi_type *ty = arg_types[i];
169
- argp = ffi_align (ty, argp);
170
- argp += ffi_put_arg (ty, avalue[i], argp);
171
- }
172
- }
173
-
174
- static void
175
- ffi_prep_args_VFP (ffi_cif *cif, int flags, void *rvalue,
176
- void **avalue, char *stack, char *vfp_space)
177
- {
178
- ffi_type **arg_types = cif->arg_types;
179
- int i, n, vi = 0;
180
- char *argp, *regp, *eo_regp;
181
- char stack_used = 0;
182
- char done_with_regs = 0;
183
-
184
- /* The first 4 words on the stack are used for values
185
- passed in core registers. */
186
- regp = stack;
187
- eo_regp = argp = regp + 16;
188
-
189
- /* If the function returns an FFI_TYPE_STRUCT in memory,
190
- that address is passed in r0 to the function. */
191
- if (flags == ARM_TYPE_STRUCT)
192
- {
193
- *(void **) regp = rvalue;
194
- regp += 4;
195
- }
196
-
197
- for (i = 0, n = cif->nargs; i < n; i++)
198
- {
199
- ffi_type *ty = arg_types[i];
200
- void *a = avalue[i];
201
- int is_vfp_type = vfp_type_p (ty);
202
-
203
- /* Allocated in VFP registers. */
204
- if (vi < cif->vfp_nargs && is_vfp_type)
205
- {
206
- char *vfp_slot = vfp_space + cif->vfp_args[vi++] * 4;
207
- ffi_put_arg (ty, a, vfp_slot);
208
- continue;
209
- }
210
- /* Try allocating in core registers. */
211
- else if (!done_with_regs && !is_vfp_type)
212
- {
213
- char *tregp = ffi_align (ty, regp);
214
- size_t size = ty->size;
215
- size = (size < 4) ? 4 : size; // pad
216
- /* Check if there is space left in the aligned register
217
- area to place the argument. */
218
- if (tregp + size <= eo_regp)
219
- {
220
- regp = tregp + ffi_put_arg (ty, a, tregp);
221
- done_with_regs = (regp == argp);
222
- // ensure we did not write into the stack area
223
- FFI_ASSERT (regp <= argp);
224
- continue;
225
- }
226
- /* In case there are no arguments in the stack area yet,
227
- the argument is passed in the remaining core registers
228
- and on the stack. */
229
- else if (!stack_used)
230
- {
231
- stack_used = 1;
232
- done_with_regs = 1;
233
- argp = tregp + ffi_put_arg (ty, a, tregp);
234
- FFI_ASSERT (eo_regp < argp);
235
- continue;
236
- }
237
- }
238
- /* Base case, arguments are passed on the stack */
239
- stack_used = 1;
240
- argp = ffi_align (ty, argp);
241
- argp += ffi_put_arg (ty, a, argp);
242
- }
243
- }
244
-
245
- /* Perform machine dependent cif processing */
246
- ffi_status FFI_HIDDEN
247
- ffi_prep_cif_machdep (ffi_cif *cif)
248
- {
249
- int flags = 0, cabi = cif->abi;
250
- size_t bytes = cif->bytes;
251
-
252
- /* Map out the register placements of VFP register args. The VFP
253
- hard-float calling conventions are slightly more sophisticated
254
- than the base calling conventions, so we do it here instead of
255
- in ffi_prep_args(). */
256
- if (cabi == FFI_VFP)
257
- layout_vfp_args (cif);
258
-
259
- /* Set the return type flag */
260
- switch (cif->rtype->type)
261
- {
262
- case FFI_TYPE_VOID:
263
- flags = ARM_TYPE_VOID;
264
- break;
265
-
266
- case FFI_TYPE_INT:
267
- case FFI_TYPE_UINT8:
268
- case FFI_TYPE_SINT8:
269
- case FFI_TYPE_UINT16:
270
- case FFI_TYPE_SINT16:
271
- case FFI_TYPE_UINT32:
272
- case FFI_TYPE_SINT32:
273
- case FFI_TYPE_POINTER:
274
- flags = ARM_TYPE_INT;
275
- break;
276
-
277
- case FFI_TYPE_SINT64:
278
- case FFI_TYPE_UINT64:
279
- flags = ARM_TYPE_INT64;
280
- break;
281
-
282
- case FFI_TYPE_FLOAT:
283
- flags = (cabi == FFI_VFP ? ARM_TYPE_VFP_S : ARM_TYPE_INT);
284
- break;
285
- case FFI_TYPE_DOUBLE:
286
- flags = (cabi == FFI_VFP ? ARM_TYPE_VFP_D : ARM_TYPE_INT64);
287
- break;
288
-
289
- case FFI_TYPE_STRUCT:
290
- case FFI_TYPE_COMPLEX:
291
- if (cabi == FFI_VFP)
292
- {
293
- int h = vfp_type_p (cif->rtype);
294
-
295
- flags = ARM_TYPE_VFP_N;
296
- if (h == 0x100 + FFI_TYPE_FLOAT)
297
- flags = ARM_TYPE_VFP_S;
298
- if (h == 0x100 + FFI_TYPE_DOUBLE)
299
- flags = ARM_TYPE_VFP_D;
300
- if (h != 0)
301
- break;
302
- }
303
-
304
- /* A Composite Type not larger than 4 bytes is returned in r0.
305
- A Composite Type larger than 4 bytes, or whose size cannot
306
- be determined statically ... is stored in memory at an
307
- address passed [in r0]. */
308
- if (cif->rtype->size <= 4)
309
- flags = ARM_TYPE_INT;
310
- else
311
- {
312
- flags = ARM_TYPE_STRUCT;
313
- bytes += 4;
314
- }
315
- break;
316
-
317
- default:
318
- abort();
319
- }
320
-
321
- /* Round the stack up to a multiple of 8 bytes. This isn't needed
322
- everywhere, but it is on some platforms, and it doesn't harm anything
323
- when it isn't needed. */
324
- bytes = FFI_ALIGN (bytes, 8);
325
-
326
- /* Minimum stack space is the 4 register arguments that we pop. */
327
- if (bytes < 4*4)
328
- bytes = 4*4;
329
-
330
- cif->bytes = bytes;
331
- cif->flags = flags;
332
-
333
- return FFI_OK;
334
- }
335
-
336
- /* Perform machine dependent cif processing for variadic calls */
337
- ffi_status FFI_HIDDEN
338
- ffi_prep_cif_machdep_var (ffi_cif * cif,
339
- unsigned int nfixedargs, unsigned int ntotalargs)
340
- {
341
- /* VFP variadic calls actually use the SYSV ABI */
342
- if (cif->abi == FFI_VFP)
343
- cif->abi = FFI_SYSV;
344
-
345
- return ffi_prep_cif_machdep (cif);
346
- }
347
-
348
- /* Prototypes for assembly functions, in sysv.S. */
349
-
350
- struct call_frame
351
- {
352
- void *fp;
353
- void *lr;
354
- void *rvalue;
355
- int flags;
356
- void *closure;
357
- };
358
-
359
- extern void ffi_call_SYSV (void *stack, struct call_frame *,
360
- void (*fn) (void)) FFI_HIDDEN;
361
- extern void ffi_call_VFP (void *vfp_space, struct call_frame *,
362
- void (*fn) (void), unsigned vfp_used) FFI_HIDDEN;
363
-
364
- static void
365
- ffi_call_int (ffi_cif * cif, void (*fn) (void), void *rvalue,
366
- void **avalue, void *closure)
367
- {
368
- int flags = cif->flags;
369
- ffi_type *rtype = cif->rtype;
370
- size_t bytes, rsize, vfp_size;
371
- char *stack, *vfp_space, *new_rvalue;
372
- struct call_frame *frame;
373
-
374
- rsize = 0;
375
- if (rvalue == NULL)
376
- {
377
- /* If the return value is a struct and we don't have a return
378
- value address then we need to make one. Otherwise the return
379
- value is in registers and we can ignore them. */
380
- if (flags == ARM_TYPE_STRUCT)
381
- rsize = rtype->size;
382
- else
383
- flags = ARM_TYPE_VOID;
384
- }
385
- else if (flags == ARM_TYPE_VFP_N)
386
- {
387
- /* Largest case is double x 4. */
388
- rsize = 32;
389
- }
390
- else if (flags == ARM_TYPE_INT && rtype->type == FFI_TYPE_STRUCT)
391
- rsize = 4;
392
-
393
- /* Largest case. */
394
- vfp_size = (cif->abi == FFI_VFP && cif->vfp_used ? 8*8: 0);
395
-
396
- bytes = cif->bytes;
397
- stack = alloca (vfp_size + bytes + sizeof(struct call_frame) + rsize);
398
-
399
- vfp_space = NULL;
400
- if (vfp_size)
401
- {
402
- vfp_space = stack;
403
- stack += vfp_size;
404
- }
405
-
406
- frame = (struct call_frame *)(stack + bytes);
407
-
408
- new_rvalue = rvalue;
409
- if (rsize)
410
- new_rvalue = (void *)(frame + 1);
411
-
412
- frame->rvalue = new_rvalue;
413
- frame->flags = flags;
414
- frame->closure = closure;
415
-
416
- if (vfp_space)
417
- {
418
- ffi_prep_args_VFP (cif, flags, new_rvalue, avalue, stack, vfp_space);
419
- ffi_call_VFP (vfp_space, frame, fn, cif->vfp_used);
420
- }
421
- else
422
- {
423
- ffi_prep_args_SYSV (cif, flags, new_rvalue, avalue, stack);
424
- ffi_call_SYSV (stack, frame, fn);
425
- }
426
-
427
- if (rvalue && rvalue != new_rvalue)
428
- memcpy (rvalue, new_rvalue, rtype->size);
429
- }
430
-
431
- void
432
- ffi_call (ffi_cif *cif, void (*fn) (void), void *rvalue, void **avalue)
433
- {
434
- ffi_call_int (cif, fn, rvalue, avalue, NULL);
435
- }
436
-
437
- #ifdef FFI_GO_CLOSURES
438
- void
439
- ffi_call_go (ffi_cif *cif, void (*fn) (void), void *rvalue,
440
- void **avalue, void *closure)
441
- {
442
- ffi_call_int (cif, fn, rvalue, avalue, closure);
443
- }
444
- #endif
445
-
446
- static void *
447
- ffi_prep_incoming_args_SYSV (ffi_cif *cif, void *rvalue,
448
- char *argp, void **avalue)
449
- {
450
- ffi_type **arg_types = cif->arg_types;
451
- int i, n;
452
-
453
- if (cif->flags == ARM_TYPE_STRUCT)
454
- {
455
- rvalue = *(void **) argp;
456
- argp += 4;
457
- }
458
- else
459
- {
460
- if (cif->rtype->size && cif->rtype->size < 4)
461
- *(uint32_t *) rvalue = 0;
462
- }
463
-
464
- for (i = 0, n = cif->nargs; i < n; i++)
465
- {
466
- ffi_type *ty = arg_types[i];
467
- size_t z = ty->size;
468
-
469
- argp = ffi_align (ty, argp);
470
- avalue[i] = (void *) argp;
471
- argp += z;
472
- }
473
-
474
- return rvalue;
475
- }
476
-
477
- static void *
478
- ffi_prep_incoming_args_VFP (ffi_cif *cif, void *rvalue, char *stack,
479
- char *vfp_space, void **avalue)
480
- {
481
- ffi_type **arg_types = cif->arg_types;
482
- int i, n, vi = 0;
483
- char *argp, *regp, *eo_regp;
484
- char done_with_regs = 0;
485
- char stack_used = 0;
486
-
487
- regp = stack;
488
- eo_regp = argp = regp + 16;
489
-
490
- if (cif->flags == ARM_TYPE_STRUCT)
491
- {
492
- rvalue = *(void **) regp;
493
- regp += 4;
494
- }
495
-
496
- for (i = 0, n = cif->nargs; i < n; i++)
497
- {
498
- ffi_type *ty = arg_types[i];
499
- int is_vfp_type = vfp_type_p (ty);
500
- size_t z = ty->size;
501
-
502
- if (vi < cif->vfp_nargs && is_vfp_type)
503
- {
504
- avalue[i] = vfp_space + cif->vfp_args[vi++] * 4;
505
- continue;
506
- }
507
- else if (!done_with_regs && !is_vfp_type)
508
- {
509
- char *tregp = ffi_align (ty, regp);
510
-
511
- z = (z < 4) ? 4 : z; // pad
512
-
513
- /* If the arguments either fits into the registers or uses registers
514
- and stack, while we haven't read other things from the stack */
515
- if (tregp + z <= eo_regp || !stack_used)
516
- {
517
- /* Because we're little endian, this is what it turns into. */
518
- avalue[i] = (void *) tregp;
519
- regp = tregp + z;
520
-
521
- /* If we read past the last core register, make sure we
522
- have not read from the stack before and continue
523
- reading after regp. */
524
- if (regp > eo_regp)
525
- {
526
- FFI_ASSERT (!stack_used);
527
- argp = regp;
528
- }
529
- if (regp >= eo_regp)
530
- {
531
- done_with_regs = 1;
532
- stack_used = 1;
533
- }
534
- continue;
535
- }
536
- }
537
-
538
- stack_used = 1;
539
- argp = ffi_align (ty, argp);
540
- avalue[i] = (void *) argp;
541
- argp += z;
542
- }
543
-
544
- return rvalue;
545
- }
546
-
547
- #if FFI_CLOSURES
548
-
549
- struct closure_frame
550
- {
551
- char vfp_space[8*8] __attribute__((aligned(8)));
552
- char result[8*4];
553
- char argp[];
554
- };
555
-
556
- int FFI_HIDDEN
557
- ffi_closure_inner_SYSV (ffi_cif *cif,
558
- void (*fun) (ffi_cif *, void *, void **, void *),
559
- void *user_data,
560
- struct closure_frame *frame)
561
- {
562
- void **avalue = (void **) alloca (cif->nargs * sizeof (void *));
563
- void *rvalue = ffi_prep_incoming_args_SYSV (cif, frame->result,
564
- frame->argp, avalue);
565
- fun (cif, rvalue, avalue, user_data);
566
- return cif->flags;
567
- }
568
-
569
- int FFI_HIDDEN
570
- ffi_closure_inner_VFP (ffi_cif *cif,
571
- void (*fun) (ffi_cif *, void *, void **, void *),
572
- void *user_data,
573
- struct closure_frame *frame)
574
- {
575
- void **avalue = (void **) alloca (cif->nargs * sizeof (void *));
576
- void *rvalue = ffi_prep_incoming_args_VFP (cif, frame->result, frame->argp,
577
- frame->vfp_space, avalue);
578
- fun (cif, rvalue, avalue, user_data);
579
- return cif->flags;
580
- }
581
-
582
- void ffi_closure_SYSV (void) FFI_HIDDEN;
583
- void ffi_closure_VFP (void) FFI_HIDDEN;
584
- #if defined(FFI_EXEC_STATIC_TRAMP)
585
- void ffi_closure_SYSV_alt (void) FFI_HIDDEN;
586
- void ffi_closure_VFP_alt (void) FFI_HIDDEN;
587
- #endif
588
-
589
- #ifdef FFI_GO_CLOSURES
590
- void ffi_go_closure_SYSV (void) FFI_HIDDEN;
591
- void ffi_go_closure_VFP (void) FFI_HIDDEN;
592
- #endif
593
-
594
- /* the cif must already be prep'ed */
595
-
596
- #if defined(__FreeBSD__) && defined(__arm__)
597
- #define __clear_cache(start, end) do { \
598
- struct arm_sync_icache_args ua; \
599
- \
600
- ua.addr = (uintptr_t)(start); \
601
- ua.len = (char *)(end) - (char *)start; \
602
- sysarch(ARM_SYNC_ICACHE, &ua); \
603
- } while (0);
604
- #endif
605
-
606
- ffi_status
607
- ffi_prep_closure_loc (ffi_closure * closure,
608
- ffi_cif * cif,
609
- void (*fun) (ffi_cif *, void *, void **, void *),
610
- void *user_data, void *codeloc)
611
- {
612
- void (*closure_func) (void) = ffi_closure_SYSV;
613
-
614
- if (cif->abi == FFI_VFP)
615
- {
616
- /* We only need take the vfp path if there are vfp arguments. */
617
- if (cif->vfp_used)
618
- closure_func = ffi_closure_VFP;
619
- }
620
- else if (cif->abi != FFI_SYSV)
621
- return FFI_BAD_ABI;
622
-
623
- #if FFI_EXEC_TRAMPOLINE_TABLE
624
- void **config = (void **)((uint8_t *)codeloc - PAGE_MAX_SIZE);
625
- config[0] = closure;
626
- config[1] = closure_func;
627
- #else
628
-
629
- # if defined(FFI_EXEC_STATIC_TRAMP)
630
- if (ffi_tramp_is_present(closure))
631
- {
632
- /* Initialize the static trampoline's parameters. */
633
- if (closure_func == ffi_closure_SYSV)
634
- closure_func = ffi_closure_SYSV_alt;
635
- else
636
- closure_func = ffi_closure_VFP_alt;
637
- ffi_tramp_set_parms (closure->ftramp, closure_func, closure);
638
- goto out;
639
- }
640
- # endif
641
-
642
- /* Initialize the dynamic trampoline. */
643
- # ifndef _WIN32
644
- memcpy(closure->tramp, ffi_arm_trampoline, 8);
645
- # else
646
- // cast away function type so MSVC doesn't set the lower bit of the function pointer
647
- memcpy(closure->tramp, (void*)((uintptr_t)ffi_arm_trampoline & 0xFFFFFFFE), FFI_TRAMPOLINE_CLOSURE_OFFSET);
648
- # endif
649
-
650
- # if defined(__QNX__)
651
- msync (closure->tramp, 8, MS_INVALIDATE_ICACHE); /* clear data map */
652
- msync (codeloc, 8, MS_INVALIDATE_ICACHE); /* clear insn map */
653
- # elif defined(_WIN32)
654
- FlushInstructionCache(GetCurrentProcess(), closure->tramp, FFI_TRAMPOLINE_SIZE);
655
- # else
656
- __clear_cache(closure->tramp, closure->tramp + 8); /* clear data map */
657
- __clear_cache(codeloc, codeloc + 8); /* clear insn map */
658
- # endif
659
- # ifdef _WIN32
660
- *(void(**)(void))(closure->tramp + FFI_TRAMPOLINE_CLOSURE_FUNCTION) = closure_func;
661
- # else
662
- *(void (**)(void))(closure->tramp + 8) = closure_func;
663
- # endif
664
- # if defined(FFI_EXEC_STATIC_TRAMP)
665
- out:
666
- # endif
667
- #endif
668
-
669
- closure->cif = cif;
670
- closure->fun = fun;
671
- closure->user_data = user_data;
672
-
673
- return FFI_OK;
674
- }
675
-
676
- #ifdef FFI_GO_CLOSURES
677
- ffi_status
678
- ffi_prep_go_closure (ffi_go_closure *closure, ffi_cif *cif,
679
- void (*fun) (ffi_cif *, void *, void **, void *))
680
- {
681
- void (*closure_func) (void) = ffi_go_closure_SYSV;
682
-
683
- if (cif->abi == FFI_VFP)
684
- {
685
- /* We only need take the vfp path if there are vfp arguments. */
686
- if (cif->vfp_used)
687
- closure_func = ffi_go_closure_VFP;
688
- }
689
- else if (cif->abi != FFI_SYSV)
690
- return FFI_BAD_ABI;
691
-
692
- closure->tramp = closure_func;
693
- closure->cif = cif;
694
- closure->fun = fun;
695
-
696
- return FFI_OK;
697
- }
698
- #endif
699
-
700
- #endif /* FFI_CLOSURES */
701
-
702
- /* Below are routines for VFP hard-float support. */
703
-
704
- /* A subroutine of vfp_type_p. Given a structure type, return the type code
705
- of the first non-structure element. Recurse for structure elements.
706
- Return -1 if the structure is in fact empty, i.e. no nested elements. */
707
-
708
- static int
709
- is_hfa0 (const ffi_type *ty)
710
- {
711
- ffi_type **elements = ty->elements;
712
- int i, ret = -1;
713
-
714
- if (elements != NULL)
715
- for (i = 0; elements[i]; ++i)
716
- {
717
- ret = elements[i]->type;
718
- if (ret == FFI_TYPE_STRUCT || ret == FFI_TYPE_COMPLEX)
719
- {
720
- ret = is_hfa0 (elements[i]);
721
- if (ret < 0)
722
- continue;
723
- }
724
- break;
725
- }
726
-
727
- return ret;
728
- }
729
-
730
- /* A subroutine of vfp_type_p. Given a structure type, return true if all
731
- of the non-structure elements are the same as CANDIDATE. */
732
-
733
- static int
734
- is_hfa1 (const ffi_type *ty, int candidate)
735
- {
736
- ffi_type **elements = ty->elements;
737
- int i;
738
-
739
- if (elements != NULL)
740
- for (i = 0; elements[i]; ++i)
741
- {
742
- int t = elements[i]->type;
743
- if (t == FFI_TYPE_STRUCT || t == FFI_TYPE_COMPLEX)
744
- {
745
- if (!is_hfa1 (elements[i], candidate))
746
- return 0;
747
- }
748
- else if (t != candidate)
749
- return 0;
750
- }
751
-
752
- return 1;
753
- }
754
-
755
- /* Determine if TY is an homogenous floating point aggregate (HFA).
756
- That is, a structure consisting of 1 to 4 members of all the same type,
757
- where that type is a floating point scalar.
758
-
759
- Returns non-zero iff TY is an HFA. The result is an encoded value where
760
- bits 0-7 contain the type code, and bits 8-10 contain the element count. */
761
-
762
- static int
763
- vfp_type_p (const ffi_type *ty)
764
- {
765
- ffi_type **elements;
766
- int candidate, i;
767
- size_t size, ele_count;
768
-
769
- /* Quickest tests first. */
770
- candidate = ty->type;
771
- switch (ty->type)
772
- {
773
- default:
774
- return 0;
775
- case FFI_TYPE_FLOAT:
776
- case FFI_TYPE_DOUBLE:
777
- ele_count = 1;
778
- goto done;
779
- case FFI_TYPE_COMPLEX:
780
- candidate = ty->elements[0]->type;
781
- if (candidate != FFI_TYPE_FLOAT && candidate != FFI_TYPE_DOUBLE)
782
- return 0;
783
- ele_count = 2;
784
- goto done;
785
- case FFI_TYPE_STRUCT:
786
- break;
787
- }
788
-
789
- /* No HFA types are smaller than 4 bytes, or larger than 32 bytes. */
790
- size = ty->size;
791
- if (size < 4 || size > 32)
792
- return 0;
793
-
794
- /* Find the type of the first non-structure member. */
795
- elements = ty->elements;
796
- candidate = elements[0]->type;
797
- if (candidate == FFI_TYPE_STRUCT || candidate == FFI_TYPE_COMPLEX)
798
- {
799
- for (i = 0; ; ++i)
800
- {
801
- candidate = is_hfa0 (elements[i]);
802
- if (candidate >= 0)
803
- break;
804
- }
805
- }
806
-
807
- /* If the first member is not a floating point type, it's not an HFA.
808
- Also quickly re-check the size of the structure. */
809
- switch (candidate)
810
- {
811
- case FFI_TYPE_FLOAT:
812
- ele_count = size / sizeof(float);
813
- if (size != ele_count * sizeof(float))
814
- return 0;
815
- break;
816
- case FFI_TYPE_DOUBLE:
817
- ele_count = size / sizeof(double);
818
- if (size != ele_count * sizeof(double))
819
- return 0;
820
- break;
821
- default:
822
- return 0;
823
- }
824
- if (ele_count > 4)
825
- return 0;
826
-
827
- /* Finally, make sure that all scalar elements are the same type. */
828
- for (i = 0; elements[i]; ++i)
829
- {
830
- int t = elements[i]->type;
831
- if (t == FFI_TYPE_STRUCT || t == FFI_TYPE_COMPLEX)
832
- {
833
- if (!is_hfa1 (elements[i], candidate))
834
- return 0;
835
- }
836
- else if (t != candidate)
837
- return 0;
838
- }
839
-
840
- /* All tests succeeded. Encode the result. */
841
- done:
842
- return (ele_count << 8) | candidate;
843
- }
844
-
845
- static int
846
- place_vfp_arg (ffi_cif *cif, int h)
847
- {
848
- unsigned short reg = cif->vfp_reg_free;
849
- int align = 1, nregs = h >> 8;
850
-
851
- if ((h & 0xff) == FFI_TYPE_DOUBLE)
852
- align = 2, nregs *= 2;
853
-
854
- /* Align register number. */
855
- if ((reg & 1) && align == 2)
856
- reg++;
857
-
858
- while (reg + nregs <= 16)
859
- {
860
- int s, new_used = 0;
861
- for (s = reg; s < reg + nregs; s++)
862
- {
863
- new_used |= (1 << s);
864
- if (cif->vfp_used & (1 << s))
865
- {
866
- reg += align;
867
- goto next_reg;
868
- }
869
- }
870
- /* Found regs to allocate. */
871
- cif->vfp_used |= new_used;
872
- cif->vfp_args[cif->vfp_nargs++] = (signed char)reg;
873
-
874
- /* Update vfp_reg_free. */
875
- if (cif->vfp_used & (1 << cif->vfp_reg_free))
876
- {
877
- reg += nregs;
878
- while (cif->vfp_used & (1 << reg))
879
- reg += 1;
880
- cif->vfp_reg_free = reg;
881
- }
882
- return 0;
883
- next_reg:;
884
- }
885
- // done, mark all regs as used
886
- cif->vfp_reg_free = 16;
887
- cif->vfp_used = 0xFFFF;
888
- return 1;
889
- }
890
-
891
- static void
892
- layout_vfp_args (ffi_cif * cif)
893
- {
894
- unsigned int i;
895
- /* Init VFP fields */
896
- cif->vfp_used = 0;
897
- cif->vfp_nargs = 0;
898
- cif->vfp_reg_free = 0;
899
- memset (cif->vfp_args, -1, 16); /* Init to -1. */
900
-
901
- for (i = 0; i < cif->nargs; i++)
902
- {
903
- int h = vfp_type_p (cif->arg_types[i]);
904
- if (h && place_vfp_arg (cif, h) == 1)
905
- break;
906
- }
907
- }
908
-
909
- #if defined(FFI_EXEC_STATIC_TRAMP)
910
- void *
911
- ffi_tramp_arch (size_t *tramp_size, size_t *map_size)
912
- {
913
- extern void *trampoline_code_table;
914
-
915
- *tramp_size = ARM_TRAMP_SIZE;
916
- *map_size = ARM_TRAMP_MAP_SIZE;
917
- return &trampoline_code_table;
918
- }
919
- #endif
920
-
921
- #endif /* __arm__ or _M_ARM */