wasmtime 36.0.0 → 36.0.1

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 (2302) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +88 -86
  3. data/Cargo.toml +1 -1
  4. data/ext/Cargo.toml +3 -3
  5. data/ext/cargo-vendor/addr2line-0.24.2/.cargo-checksum.json +1 -1
  6. data/ext/cargo-vendor/addr2line-0.25.0/.cargo-checksum.json +1 -1
  7. data/ext/cargo-vendor/adler2-2.0.0/.cargo-checksum.json +1 -1
  8. data/ext/cargo-vendor/aho-corasick-1.1.3/.cargo-checksum.json +1 -1
  9. data/ext/cargo-vendor/allocator-api2-0.2.21/.cargo-checksum.json +1 -1
  10. data/ext/cargo-vendor/ambient-authority-0.0.2/.cargo-checksum.json +1 -1
  11. data/ext/cargo-vendor/android_system_properties-0.1.5/.cargo-checksum.json +1 -1
  12. data/ext/cargo-vendor/anyhow-1.0.98/.cargo-checksum.json +1 -1
  13. data/ext/cargo-vendor/arbitrary-1.4.1/.cargo-checksum.json +1 -1
  14. data/ext/cargo-vendor/async-timer-1.0.0-beta.15/.cargo-checksum.json +1 -1
  15. data/ext/cargo-vendor/async-trait-0.1.88/.cargo-checksum.json +1 -1
  16. data/ext/cargo-vendor/backtrace-0.3.75/.cargo-checksum.json +1 -1
  17. data/ext/cargo-vendor/base64-0.22.1/.cargo-checksum.json +1 -1
  18. data/ext/cargo-vendor/bindgen-0.69.5/.cargo-checksum.json +1 -1
  19. data/ext/cargo-vendor/bitflags-2.9.1/.cargo-checksum.json +1 -1
  20. data/ext/cargo-vendor/block-buffer-0.10.4/.cargo-checksum.json +1 -1
  21. data/ext/cargo-vendor/bumpalo-3.17.0/.cargo-checksum.json +1 -1
  22. data/ext/cargo-vendor/byteorder-1.5.0/.cargo-checksum.json +1 -1
  23. data/ext/cargo-vendor/bytes-1.10.1/.cargo-checksum.json +1 -1
  24. data/ext/cargo-vendor/cap-fs-ext-3.4.6/.cargo-checksum.json +1 -0
  25. data/ext/cargo-vendor/cap-fs-ext-3.4.6/.cargo_vcs_info.json +6 -0
  26. data/ext/cargo-vendor/cap-fs-ext-3.4.6/Cargo.lock +794 -0
  27. data/ext/cargo-vendor/cap-fs-ext-3.4.6/Cargo.toml +104 -0
  28. data/ext/cargo-vendor/cap-fs-ext-3.4.6/Cargo.toml.orig +41 -0
  29. data/ext/cargo-vendor/cap-net-ext-3.4.6/.cargo-checksum.json +1 -0
  30. data/ext/cargo-vendor/cap-net-ext-3.4.6/.cargo_vcs_info.json +6 -0
  31. data/ext/cargo-vendor/cap-net-ext-3.4.6/Cargo.lock +249 -0
  32. data/ext/cargo-vendor/cap-net-ext-3.4.6/Cargo.toml +48 -0
  33. data/ext/cargo-vendor/cap-net-ext-3.4.6/Cargo.toml.orig +19 -0
  34. data/ext/cargo-vendor/cap-primitives-3.4.6/.cargo-checksum.json +1 -0
  35. data/ext/cargo-vendor/cap-primitives-3.4.6/.cargo_vcs_info.json +6 -0
  36. data/ext/cargo-vendor/cap-primitives-3.4.6/Cargo.lock +275 -0
  37. data/ext/cargo-vendor/cap-primitives-3.4.6/Cargo.toml +96 -0
  38. data/ext/cargo-vendor/cap-primitives-3.4.6/Cargo.toml.orig +47 -0
  39. data/ext/cargo-vendor/cap-primitives-3.4.6/src/fs/manually/open.rs +562 -0
  40. data/ext/cargo-vendor/cap-primitives-3.4.6/src/fs/via_parent/open_parent.rs +126 -0
  41. data/ext/cargo-vendor/cap-primitives-3.4.6/src/rustix/linux/fs/stat_impl.rs +56 -0
  42. data/ext/cargo-vendor/cap-rand-3.4.6/.cargo-checksum.json +1 -0
  43. data/ext/cargo-vendor/cap-rand-3.4.6/.cargo_vcs_info.json +6 -0
  44. data/ext/cargo-vendor/cap-rand-3.4.6/Cargo.lock +140 -0
  45. data/ext/cargo-vendor/cap-rand-3.4.6/Cargo.toml +48 -0
  46. data/ext/cargo-vendor/cap-rand-3.4.6/Cargo.toml.orig +21 -0
  47. data/ext/cargo-vendor/cap-std-3.4.6/.cargo-checksum.json +1 -0
  48. data/ext/cargo-vendor/cap-std-3.4.6/.cargo_vcs_info.json +6 -0
  49. data/ext/cargo-vendor/cap-std-3.4.6/Cargo.lock +248 -0
  50. data/ext/cargo-vendor/cap-std-3.4.6/Cargo.toml +77 -0
  51. data/ext/cargo-vendor/cap-std-3.4.6/Cargo.toml.orig +32 -0
  52. data/ext/cargo-vendor/cap-std-3.4.6/src/net/tcp_listener.rs +248 -0
  53. data/ext/cargo-vendor/cap-std-3.4.6/src/os/unix/net/unix_listener.rs +156 -0
  54. data/ext/cargo-vendor/cap-time-ext-3.4.6/.cargo-checksum.json +1 -0
  55. data/ext/cargo-vendor/cap-time-ext-3.4.6/.cargo_vcs_info.json +6 -0
  56. data/ext/cargo-vendor/cap-time-ext-3.4.6/Cargo.lock +474 -0
  57. data/ext/cargo-vendor/cap-time-ext-3.4.6/Cargo.toml +58 -0
  58. data/ext/cargo-vendor/cap-time-ext-3.4.6/Cargo.toml.orig +26 -0
  59. data/ext/cargo-vendor/cc-1.2.25/.cargo-checksum.json +1 -1
  60. data/ext/cargo-vendor/cexpr-0.6.0/.cargo-checksum.json +1 -1
  61. data/ext/cargo-vendor/cfg-if-1.0.0/.cargo-checksum.json +1 -1
  62. data/ext/cargo-vendor/clang-sys-1.8.1/.cargo-checksum.json +1 -1
  63. data/ext/cargo-vendor/cobs-0.2.3/.cargo-checksum.json +1 -1
  64. data/ext/cargo-vendor/core-foundation-sys-0.8.7/.cargo-checksum.json +1 -1
  65. data/ext/cargo-vendor/cpp_demangle-0.4.4/.cargo-checksum.json +1 -1
  66. data/ext/cargo-vendor/cpufeatures-0.2.17/.cargo-checksum.json +1 -1
  67. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.19/.cargo-checksum.json +1 -0
  68. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.19/.cargo_vcs_info.json +6 -0
  69. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.19/Cargo.lock +133 -0
  70. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.19/Cargo.toml +97 -0
  71. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.19/Cargo.toml.orig +25 -0
  72. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.19/.cargo-checksum.json +1 -0
  73. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.19/.cargo_vcs_info.json +6 -0
  74. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.19/Cargo.lock +16 -0
  75. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.19/Cargo.toml +72 -0
  76. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.19/Cargo.toml.orig +13 -0
  77. data/ext/cargo-vendor/cranelift-bforest-0.123.19/.cargo-checksum.json +1 -0
  78. data/ext/cargo-vendor/cranelift-bforest-0.123.19/.cargo_vcs_info.json +6 -0
  79. data/ext/cargo-vendor/cranelift-bforest-0.123.19/Cargo.lock +25 -0
  80. data/ext/cargo-vendor/cranelift-bforest-0.123.19/Cargo.toml +78 -0
  81. data/ext/cargo-vendor/cranelift-bforest-0.123.19/Cargo.toml.orig +19 -0
  82. data/ext/cargo-vendor/cranelift-bitset-0.123.19/.cargo-checksum.json +1 -0
  83. data/ext/cargo-vendor/cranelift-bitset-0.123.19/.cargo_vcs_info.json +6 -0
  84. data/ext/cargo-vendor/cranelift-bitset-0.123.19/Cargo.lock +73 -0
  85. data/ext/cargo-vendor/cranelift-bitset-0.123.19/Cargo.toml +93 -0
  86. data/ext/cargo-vendor/cranelift-bitset-0.123.19/Cargo.toml.orig +22 -0
  87. data/ext/cargo-vendor/cranelift-codegen-0.123.19/.cargo-checksum.json +1 -0
  88. data/ext/cargo-vendor/cranelift-codegen-0.123.19/.cargo_vcs_info.json +6 -0
  89. data/ext/cargo-vendor/cranelift-codegen-0.123.19/Cargo.lock +1279 -0
  90. data/ext/cargo-vendor/cranelift-codegen-0.123.19/Cargo.toml +251 -0
  91. data/ext/cargo-vendor/cranelift-codegen-0.123.19/Cargo.toml.orig +130 -0
  92. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/ir/dfg.rs +1853 -0
  93. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/isa/aarch64/inst/emit.rs +3638 -0
  94. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/isa/aarch64/inst/mod.rs +3059 -0
  95. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/isa/aarch64/inst.isle +5141 -0
  96. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/isa/aarch64/lower/isle.rs +855 -0
  97. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/isa/x64/inst.isle +4085 -0
  98. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/isa/x64/lower.isle +5059 -0
  99. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/lib.rs +123 -0
  100. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/opts/icmp.isle +299 -0
  101. data/ext/cargo-vendor/cranelift-codegen-0.123.19/src/timing.rs +336 -0
  102. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.19/.cargo-checksum.json +1 -0
  103. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.19/.cargo_vcs_info.json +6 -0
  104. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.19/Cargo.lock +110 -0
  105. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.19/Cargo.toml +89 -0
  106. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.19/Cargo.toml.orig +26 -0
  107. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.19/.cargo-checksum.json +1 -0
  108. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.19/.cargo_vcs_info.json +6 -0
  109. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.19/Cargo.lock +7 -0
  110. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.19/Cargo.toml +34 -0
  111. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.19/Cargo.toml.orig +14 -0
  112. data/ext/cargo-vendor/cranelift-control-0.123.19/.cargo-checksum.json +1 -0
  113. data/ext/cargo-vendor/cranelift-control-0.123.19/.cargo_vcs_info.json +6 -0
  114. data/ext/cargo-vendor/cranelift-control-0.123.19/Cargo.lock +16 -0
  115. data/ext/cargo-vendor/cranelift-control-0.123.19/Cargo.toml +45 -0
  116. data/ext/cargo-vendor/cranelift-control-0.123.19/Cargo.toml.orig +25 -0
  117. data/ext/cargo-vendor/cranelift-entity-0.123.19/.cargo-checksum.json +1 -0
  118. data/ext/cargo-vendor/cranelift-entity-0.123.19/.cargo_vcs_info.json +6 -0
  119. data/ext/cargo-vendor/cranelift-entity-0.123.19/Cargo.lock +77 -0
  120. data/ext/cargo-vendor/cranelift-entity-0.123.19/Cargo.toml +94 -0
  121. data/ext/cargo-vendor/cranelift-entity-0.123.19/Cargo.toml.orig +24 -0
  122. data/ext/cargo-vendor/cranelift-frontend-0.123.19/.cargo-checksum.json +1 -0
  123. data/ext/cargo-vendor/cranelift-frontend-0.123.19/.cargo_vcs_info.json +6 -0
  124. data/ext/cargo-vendor/cranelift-frontend-0.123.19/Cargo.lock +531 -0
  125. data/ext/cargo-vendor/cranelift-frontend-0.123.19/Cargo.toml +116 -0
  126. data/ext/cargo-vendor/cranelift-frontend-0.123.19/Cargo.toml.orig +32 -0
  127. data/ext/cargo-vendor/cranelift-isle-0.123.19/.cargo-checksum.json +1 -0
  128. data/ext/cargo-vendor/cranelift-isle-0.123.19/.cargo_vcs_info.json +6 -0
  129. data/ext/cargo-vendor/cranelift-isle-0.123.19/Cargo.lock +249 -0
  130. data/ext/cargo-vendor/cranelift-isle-0.123.19/Cargo.toml +88 -0
  131. data/ext/cargo-vendor/cranelift-isle-0.123.19/Cargo.toml.orig +26 -0
  132. data/ext/cargo-vendor/cranelift-native-0.123.19/.cargo-checksum.json +1 -0
  133. data/ext/cargo-vendor/cranelift-native-0.123.19/.cargo_vcs_info.json +6 -0
  134. data/ext/cargo-vendor/cranelift-native-0.123.19/Cargo.lock +305 -0
  135. data/ext/cargo-vendor/cranelift-native-0.123.19/Cargo.toml +54 -0
  136. data/ext/cargo-vendor/cranelift-native-0.123.19/Cargo.toml.orig +24 -0
  137. data/ext/cargo-vendor/cranelift-srcgen-0.123.19/.cargo-checksum.json +1 -0
  138. data/ext/cargo-vendor/cranelift-srcgen-0.123.19/.cargo_vcs_info.json +6 -0
  139. data/ext/cargo-vendor/cranelift-srcgen-0.123.19/Cargo.lock +7 -0
  140. data/ext/cargo-vendor/cranelift-srcgen-0.123.19/Cargo.toml +69 -0
  141. data/ext/cargo-vendor/cranelift-srcgen-0.123.19/Cargo.toml.orig +14 -0
  142. data/ext/cargo-vendor/crc32fast-1.4.2/.cargo-checksum.json +1 -1
  143. data/ext/cargo-vendor/crossbeam-deque-0.8.6/.cargo-checksum.json +1 -1
  144. data/ext/cargo-vendor/crossbeam-epoch-0.9.18/.cargo-checksum.json +1 -1
  145. data/ext/cargo-vendor/crossbeam-utils-0.8.21/.cargo-checksum.json +1 -1
  146. data/ext/cargo-vendor/crypto-common-0.1.6/.cargo-checksum.json +1 -1
  147. data/ext/cargo-vendor/debugid-0.8.0/.cargo-checksum.json +1 -1
  148. data/ext/cargo-vendor/deterministic-wasi-ctx-3.0.1/.cargo-checksum.json +1 -1
  149. data/ext/cargo-vendor/digest-0.10.7/.cargo-checksum.json +1 -1
  150. data/ext/cargo-vendor/directories-next-2.0.0/.cargo-checksum.json +1 -1
  151. data/ext/cargo-vendor/dirs-sys-next-0.1.2/.cargo-checksum.json +1 -1
  152. data/ext/cargo-vendor/displaydoc-0.2.5/.cargo-checksum.json +1 -1
  153. data/ext/cargo-vendor/either-1.15.0/.cargo-checksum.json +1 -1
  154. data/ext/cargo-vendor/embedded-io-0.4.0/.cargo-checksum.json +1 -1
  155. data/ext/cargo-vendor/embedded-io-0.6.1/.cargo-checksum.json +1 -1
  156. data/ext/cargo-vendor/encoding_rs-0.8.35/.cargo-checksum.json +1 -1
  157. data/ext/cargo-vendor/equivalent-1.0.2/.cargo-checksum.json +1 -1
  158. data/ext/cargo-vendor/errno-0.3.12/.cargo-checksum.json +1 -1
  159. data/ext/cargo-vendor/error-code-3.3.2/.cargo-checksum.json +1 -1
  160. data/ext/cargo-vendor/fallible-iterator-0.3.0/.cargo-checksum.json +1 -1
  161. data/ext/cargo-vendor/fd-lock-4.0.4/.cargo-checksum.json +1 -1
  162. data/ext/cargo-vendor/foldhash-0.1.5/.cargo-checksum.json +1 -1
  163. data/ext/cargo-vendor/form_urlencoded-1.2.1/.cargo-checksum.json +1 -1
  164. data/ext/cargo-vendor/fs-set-times-0.20.3/.cargo-checksum.json +1 -1
  165. data/ext/cargo-vendor/futures-0.3.31/.cargo-checksum.json +1 -1
  166. data/ext/cargo-vendor/futures-channel-0.3.31/.cargo-checksum.json +1 -1
  167. data/ext/cargo-vendor/futures-core-0.3.31/.cargo-checksum.json +1 -1
  168. data/ext/cargo-vendor/futures-io-0.3.31/.cargo-checksum.json +1 -1
  169. data/ext/cargo-vendor/futures-sink-0.3.31/.cargo-checksum.json +1 -1
  170. data/ext/cargo-vendor/futures-task-0.3.31/.cargo-checksum.json +1 -1
  171. data/ext/cargo-vendor/futures-util-0.3.31/.cargo-checksum.json +1 -1
  172. data/ext/cargo-vendor/fxhash-0.2.1/.cargo-checksum.json +1 -1
  173. data/ext/cargo-vendor/fxprof-processed-profile-0.6.0/.cargo-checksum.json +1 -1
  174. data/ext/cargo-vendor/generic-array-0.14.7/.cargo-checksum.json +1 -1
  175. data/ext/cargo-vendor/getrandom-0.2.16/.cargo-checksum.json +1 -1
  176. data/ext/cargo-vendor/getrandom-0.3.3/.cargo-checksum.json +1 -1
  177. data/ext/cargo-vendor/gimli-0.31.1/.cargo-checksum.json +1 -1
  178. data/ext/cargo-vendor/gimli-0.32.2/.cargo-checksum.json +1 -1
  179. data/ext/cargo-vendor/glob-0.3.2/.cargo-checksum.json +1 -1
  180. data/ext/cargo-vendor/hashbrown-0.15.3/.cargo-checksum.json +1 -1
  181. data/ext/cargo-vendor/heck-0.5.0/.cargo-checksum.json +1 -1
  182. data/ext/cargo-vendor/iana-time-zone-0.1.63/.cargo-checksum.json +1 -1
  183. data/ext/cargo-vendor/iana-time-zone-haiku-0.1.2/.cargo-checksum.json +1 -1
  184. data/ext/cargo-vendor/icu_collections-2.0.0/.cargo-checksum.json +1 -1
  185. data/ext/cargo-vendor/icu_locale_core-2.0.0/.cargo-checksum.json +1 -1
  186. data/ext/cargo-vendor/icu_normalizer-2.0.0/.cargo-checksum.json +1 -1
  187. data/ext/cargo-vendor/icu_normalizer_data-2.0.0/.cargo-checksum.json +1 -1
  188. data/ext/cargo-vendor/icu_properties-2.0.1/.cargo-checksum.json +1 -1
  189. data/ext/cargo-vendor/icu_properties_data-2.0.1/.cargo-checksum.json +1 -1
  190. data/ext/cargo-vendor/icu_provider-2.0.0/.cargo-checksum.json +1 -1
  191. data/ext/cargo-vendor/id-arena-2.2.1/.cargo-checksum.json +1 -1
  192. data/ext/cargo-vendor/idna-1.0.3/.cargo-checksum.json +1 -1
  193. data/ext/cargo-vendor/idna_adapter-1.2.1/.cargo-checksum.json +1 -1
  194. data/ext/cargo-vendor/indexmap-2.9.0/.cargo-checksum.json +1 -1
  195. data/ext/cargo-vendor/io-extras-0.18.4/.cargo-checksum.json +1 -1
  196. data/ext/cargo-vendor/io-lifetimes-2.0.4/.cargo-checksum.json +1 -1
  197. data/ext/cargo-vendor/io-uring-0.7.9/.cargo-checksum.json +1 -1
  198. data/ext/cargo-vendor/ipnet-2.11.0/.cargo-checksum.json +1 -1
  199. data/ext/cargo-vendor/itertools-0.12.1/.cargo-checksum.json +1 -1
  200. data/ext/cargo-vendor/itertools-0.14.0/.cargo-checksum.json +1 -1
  201. data/ext/cargo-vendor/itoa-1.0.15/.cargo-checksum.json +1 -1
  202. data/ext/cargo-vendor/ittapi-0.4.0/.cargo-checksum.json +1 -1
  203. data/ext/cargo-vendor/ittapi-sys-0.4.0/.cargo-checksum.json +1 -1
  204. data/ext/cargo-vendor/jobserver-0.1.33/.cargo-checksum.json +1 -1
  205. data/ext/cargo-vendor/js-sys-0.3.77/.cargo-checksum.json +1 -1
  206. data/ext/cargo-vendor/lazy_static-1.5.0/.cargo-checksum.json +1 -1
  207. data/ext/cargo-vendor/lazycell-1.3.0/.cargo-checksum.json +1 -1
  208. data/ext/cargo-vendor/leb128-0.2.5/.cargo-checksum.json +1 -1
  209. data/ext/cargo-vendor/leb128fmt-0.1.0/.cargo-checksum.json +1 -1
  210. data/ext/cargo-vendor/libc-0.2.172/.cargo-checksum.json +1 -1
  211. data/ext/cargo-vendor/libloading-0.8.8/.cargo-checksum.json +1 -1
  212. data/ext/cargo-vendor/libm-0.2.15/.cargo-checksum.json +1 -1
  213. data/ext/cargo-vendor/libredox-0.1.3/.cargo-checksum.json +1 -1
  214. data/ext/cargo-vendor/linux-raw-sys-0.4.15/.cargo-checksum.json +1 -1
  215. data/ext/cargo-vendor/linux-raw-sys-0.9.4/.cargo-checksum.json +1 -1
  216. data/ext/cargo-vendor/litemap-0.8.0/.cargo-checksum.json +1 -1
  217. data/ext/cargo-vendor/log-0.4.27/.cargo-checksum.json +1 -1
  218. data/ext/cargo-vendor/mach2-0.4.2/.cargo-checksum.json +1 -1
  219. data/ext/cargo-vendor/magnus-0.7.1/.cargo-checksum.json +1 -1
  220. data/ext/cargo-vendor/magnus-macros-0.6.0/.cargo-checksum.json +1 -1
  221. data/ext/cargo-vendor/maybe-owned-0.3.4/.cargo-checksum.json +1 -1
  222. data/ext/cargo-vendor/memchr-2.7.4/.cargo-checksum.json +1 -1
  223. data/ext/cargo-vendor/memfd-0.6.4/.cargo-checksum.json +1 -1
  224. data/ext/cargo-vendor/minimal-lexical-0.2.1/.cargo-checksum.json +1 -1
  225. data/ext/cargo-vendor/miniz_oxide-0.8.8/.cargo-checksum.json +1 -1
  226. data/ext/cargo-vendor/mio-1.0.4/.cargo-checksum.json +1 -1
  227. data/ext/cargo-vendor/nom-7.1.3/.cargo-checksum.json +1 -1
  228. data/ext/cargo-vendor/object-0.36.7/.cargo-checksum.json +1 -1
  229. data/ext/cargo-vendor/object-0.37.3/.cargo-checksum.json +1 -1
  230. data/ext/cargo-vendor/once_cell-1.21.3/.cargo-checksum.json +1 -1
  231. data/ext/cargo-vendor/percent-encoding-2.3.1/.cargo-checksum.json +1 -1
  232. data/ext/cargo-vendor/pin-project-lite-0.2.16/.cargo-checksum.json +1 -1
  233. data/ext/cargo-vendor/pin-utils-0.1.0/.cargo-checksum.json +1 -1
  234. data/ext/cargo-vendor/pkg-config-0.3.32/.cargo-checksum.json +1 -1
  235. data/ext/cargo-vendor/postcard-1.1.1/.cargo-checksum.json +1 -1
  236. data/ext/cargo-vendor/potential_utf-0.1.2/.cargo-checksum.json +1 -1
  237. data/ext/cargo-vendor/ppv-lite86-0.2.21/.cargo-checksum.json +1 -1
  238. data/ext/cargo-vendor/proc-macro2-1.0.95/.cargo-checksum.json +1 -1
  239. data/ext/cargo-vendor/pulley-interpreter-36.0.19/.cargo-checksum.json +1 -0
  240. data/ext/cargo-vendor/pulley-interpreter-36.0.19/.cargo_vcs_info.json +6 -0
  241. data/ext/cargo-vendor/pulley-interpreter-36.0.19/Cargo.lock +426 -0
  242. data/ext/cargo-vendor/pulley-interpreter-36.0.19/Cargo.toml +143 -0
  243. data/ext/cargo-vendor/pulley-interpreter-36.0.19/src/lib.rs +1419 -0
  244. data/ext/cargo-vendor/pulley-macros-36.0.19/.cargo-checksum.json +1 -0
  245. data/ext/cargo-vendor/pulley-macros-36.0.19/.cargo_vcs_info.json +6 -0
  246. data/ext/cargo-vendor/pulley-macros-36.0.19/Cargo.lock +47 -0
  247. data/ext/cargo-vendor/pulley-macros-36.0.19/Cargo.toml +42 -0
  248. data/ext/cargo-vendor/quote-1.0.40/.cargo-checksum.json +1 -1
  249. data/ext/cargo-vendor/r-efi-5.2.0/.cargo-checksum.json +1 -1
  250. data/ext/cargo-vendor/rand-0.8.5/.cargo-checksum.json +1 -1
  251. data/ext/cargo-vendor/rand_chacha-0.3.1/.cargo-checksum.json +1 -1
  252. data/ext/cargo-vendor/rand_core-0.6.4/.cargo-checksum.json +1 -1
  253. data/ext/cargo-vendor/rand_pcg-0.3.1/.cargo-checksum.json +1 -1
  254. data/ext/cargo-vendor/rayon-1.10.0/.cargo-checksum.json +1 -1
  255. data/ext/cargo-vendor/rayon-core-1.12.1/.cargo-checksum.json +1 -1
  256. data/ext/cargo-vendor/rb-sys-0.9.117/.cargo-checksum.json +1 -1
  257. data/ext/cargo-vendor/rb-sys-build-0.9.117/.cargo-checksum.json +1 -1
  258. data/ext/cargo-vendor/rb-sys-env-0.1.2/.cargo-checksum.json +1 -1
  259. data/ext/cargo-vendor/rb-sys-env-0.2.2/.cargo-checksum.json +1 -1
  260. data/ext/cargo-vendor/redox_users-0.4.6/.cargo-checksum.json +1 -1
  261. data/ext/cargo-vendor/regalloc2-0.12.2/.cargo-checksum.json +1 -1
  262. data/ext/cargo-vendor/regex-1.11.1/.cargo-checksum.json +1 -1
  263. data/ext/cargo-vendor/regex-automata-0.4.9/.cargo-checksum.json +1 -1
  264. data/ext/cargo-vendor/regex-syntax-0.8.5/.cargo-checksum.json +1 -1
  265. data/ext/cargo-vendor/rustc-demangle-0.1.24/.cargo-checksum.json +1 -1
  266. data/ext/cargo-vendor/rustc-hash-1.1.0/.cargo-checksum.json +1 -1
  267. data/ext/cargo-vendor/rustc-hash-2.1.1/.cargo-checksum.json +1 -1
  268. data/ext/cargo-vendor/rustix-0.38.44/.cargo-checksum.json +1 -1
  269. data/ext/cargo-vendor/rustix-1.0.7/.cargo-checksum.json +1 -1
  270. data/ext/cargo-vendor/rustix-linux-procfs-0.1.1/.cargo-checksum.json +1 -1
  271. data/ext/cargo-vendor/rustversion-1.0.21/.cargo-checksum.json +1 -1
  272. data/ext/cargo-vendor/ryu-1.0.20/.cargo-checksum.json +1 -1
  273. data/ext/cargo-vendor/semver-1.0.26/.cargo-checksum.json +1 -1
  274. data/ext/cargo-vendor/seq-macro-0.3.6/.cargo-checksum.json +1 -1
  275. data/ext/cargo-vendor/serde-1.0.219/.cargo-checksum.json +1 -1
  276. data/ext/cargo-vendor/serde_derive-1.0.219/.cargo-checksum.json +1 -1
  277. data/ext/cargo-vendor/serde_json-1.0.140/.cargo-checksum.json +1 -1
  278. data/ext/cargo-vendor/serde_spanned-0.6.8/.cargo-checksum.json +1 -1
  279. data/ext/cargo-vendor/sha2-0.10.9/.cargo-checksum.json +1 -1
  280. data/ext/cargo-vendor/shell-words-1.1.0/.cargo-checksum.json +1 -1
  281. data/ext/cargo-vendor/shlex-1.3.0/.cargo-checksum.json +1 -1
  282. data/ext/cargo-vendor/slab-0.4.10/.cargo-checksum.json +1 -1
  283. data/ext/cargo-vendor/smallvec-1.15.0/.cargo-checksum.json +1 -1
  284. data/ext/cargo-vendor/socket2-0.6.0/.cargo-checksum.json +1 -1
  285. data/ext/cargo-vendor/stable_deref_trait-1.2.0/.cargo-checksum.json +1 -1
  286. data/ext/cargo-vendor/static_assertions-1.1.0/.cargo-checksum.json +1 -1
  287. data/ext/cargo-vendor/syn-2.0.101/.cargo-checksum.json +1 -1
  288. data/ext/cargo-vendor/synstructure-0.13.2/.cargo-checksum.json +1 -1
  289. data/ext/cargo-vendor/system-interface-0.27.3/.cargo-checksum.json +1 -1
  290. data/ext/cargo-vendor/target-lexicon-0.13.2/.cargo-checksum.json +1 -1
  291. data/ext/cargo-vendor/termcolor-1.4.1/.cargo-checksum.json +1 -1
  292. data/ext/cargo-vendor/thiserror-1.0.69/.cargo-checksum.json +1 -1
  293. data/ext/cargo-vendor/thiserror-2.0.12/.cargo-checksum.json +1 -1
  294. data/ext/cargo-vendor/thiserror-impl-1.0.69/.cargo-checksum.json +1 -1
  295. data/ext/cargo-vendor/thiserror-impl-2.0.12/.cargo-checksum.json +1 -1
  296. data/ext/cargo-vendor/tinystr-0.8.1/.cargo-checksum.json +1 -1
  297. data/ext/cargo-vendor/tokio-1.47.1/.cargo-checksum.json +1 -1
  298. data/ext/cargo-vendor/toml-0.8.22/.cargo-checksum.json +1 -1
  299. data/ext/cargo-vendor/toml_datetime-0.6.9/.cargo-checksum.json +1 -1
  300. data/ext/cargo-vendor/toml_edit-0.22.26/.cargo-checksum.json +1 -1
  301. data/ext/cargo-vendor/toml_write-0.1.1/.cargo-checksum.json +1 -1
  302. data/ext/cargo-vendor/tracing-0.1.41/.cargo-checksum.json +1 -1
  303. data/ext/cargo-vendor/tracing-attributes-0.1.28/.cargo-checksum.json +1 -1
  304. data/ext/cargo-vendor/tracing-core-0.1.33/.cargo-checksum.json +1 -1
  305. data/ext/cargo-vendor/typenum-1.18.0/.cargo-checksum.json +1 -1
  306. data/ext/cargo-vendor/unicode-ident-1.0.18/.cargo-checksum.json +1 -1
  307. data/ext/cargo-vendor/unicode-width-0.2.0/.cargo-checksum.json +1 -1
  308. data/ext/cargo-vendor/unicode-xid-0.2.6/.cargo-checksum.json +1 -1
  309. data/ext/cargo-vendor/url-2.5.4/.cargo-checksum.json +1 -1
  310. data/ext/cargo-vendor/utf8_iter-1.0.4/.cargo-checksum.json +1 -1
  311. data/ext/cargo-vendor/uuid-1.17.0/.cargo-checksum.json +1 -1
  312. data/ext/cargo-vendor/version_check-0.9.5/.cargo-checksum.json +1 -1
  313. data/ext/cargo-vendor/wasi-0.11.0+wasi-snapshot-preview1/.cargo-checksum.json +1 -1
  314. data/ext/cargo-vendor/wasi-0.14.2+wasi-0.2.4/.cargo-checksum.json +1 -1
  315. data/ext/cargo-vendor/wasm-bindgen-0.2.100/.cargo-checksum.json +1 -1
  316. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.100/.cargo-checksum.json +1 -1
  317. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.100/.cargo-checksum.json +1 -1
  318. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.100/.cargo-checksum.json +1 -1
  319. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.100/.cargo-checksum.json +1 -1
  320. data/ext/cargo-vendor/wasm-encoder-0.236.0/.cargo-checksum.json +1 -1
  321. data/ext/cargo-vendor/wasmparser-0.236.0/.cargo-checksum.json +1 -1
  322. data/ext/cargo-vendor/wasmprinter-0.236.0/.cargo-checksum.json +1 -1
  323. data/ext/cargo-vendor/wasmtime-36.0.19/.cargo-checksum.json +1 -0
  324. data/ext/cargo-vendor/wasmtime-36.0.19/.cargo_vcs_info.json +6 -0
  325. data/ext/cargo-vendor/wasmtime-36.0.19/Cargo.lock +2171 -0
  326. data/ext/cargo-vendor/wasmtime-36.0.19/Cargo.toml +542 -0
  327. data/ext/cargo-vendor/wasmtime-36.0.19/Cargo.toml.orig +408 -0
  328. data/ext/cargo-vendor/wasmtime-36.0.19/src/lib.rs +436 -0
  329. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/concurrent.rs +4658 -0
  330. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/func/options.rs +660 -0
  331. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/func/typed.rs +2881 -0
  332. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/func.rs +937 -0
  333. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/instance.rs +1051 -0
  334. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/linker.rs +909 -0
  335. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/resource_table.rs +407 -0
  336. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/resources.rs +1182 -0
  337. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/store.rs +308 -0
  338. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/component/values.rs +1171 -0
  339. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/coredump.rs +350 -0
  340. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/externals/global.rs +429 -0
  341. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/externals/table.rs +572 -0
  342. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/externals/tag.rs +117 -0
  343. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/func.rs +2688 -0
  344. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/gc/enabled/arrayref.rs +1071 -0
  345. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/gc/enabled/exnref.rs +793 -0
  346. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/gc/enabled/structref.rs +866 -0
  347. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/instance.rs +1033 -0
  348. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/linker.rs +1575 -0
  349. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/memory.rs +1116 -0
  350. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/module/registry.rs +410 -0
  351. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/store.rs +2563 -0
  352. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/trampoline/table.rs +45 -0
  353. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/trampoline/tag.rs +50 -0
  354. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/vm/component/resources.rs +580 -0
  355. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/vm/component.rs +1011 -0
  356. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/vm/cow.rs +1109 -0
  357. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +1076 -0
  358. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/vm/memory.rs +749 -0
  359. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/vm/table.rs +1244 -0
  360. data/ext/cargo-vendor/wasmtime-36.0.19/src/runtime/vm.rs +539 -0
  361. data/ext/cargo-vendor/wasmtime-36.0.19/tests/pooling_alloc_near_oom.rs +119 -0
  362. data/ext/cargo-vendor/wasmtime-environ-36.0.19/.cargo-checksum.json +1 -0
  363. data/ext/cargo-vendor/wasmtime-environ-36.0.19/.cargo_vcs_info.json +6 -0
  364. data/ext/cargo-vendor/wasmtime-environ-36.0.19/Cargo.lock +650 -0
  365. data/ext/cargo-vendor/wasmtime-environ-36.0.19/Cargo.toml +233 -0
  366. data/ext/cargo-vendor/wasmtime-environ-36.0.19/src/fact/trampoline.rs +4025 -0
  367. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.19/.cargo-checksum.json +1 -0
  368. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.19/.cargo_vcs_info.json +6 -0
  369. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.19/Cargo.lock +16 -0
  370. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.19/Cargo.toml +35 -0
  371. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.19/.cargo-checksum.json +1 -0
  372. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.19/.cargo_vcs_info.json +6 -0
  373. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.19/Cargo.lock +840 -0
  374. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.19/Cargo.toml +127 -0
  375. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.19/.cargo-checksum.json +1 -0
  376. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.19/.cargo_vcs_info.json +6 -0
  377. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.19/Cargo.lock +285 -0
  378. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.19/Cargo.toml +145 -0
  379. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.19/tests/expanded/resources-export_concurrent.rs +798 -0
  380. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.19/tests/expanded/resources-import_concurrent.rs +1170 -0
  381. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.19/tests/expanded/unstable-features_concurrent.rs +479 -0
  382. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.19/.cargo-checksum.json +1 -0
  383. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.19/.cargo_vcs_info.json +6 -0
  384. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.19/Cargo.lock +7 -0
  385. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.19/Cargo.toml +38 -0
  386. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.19/.cargo-checksum.json +1 -0
  387. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.19/.cargo_vcs_info.json +6 -0
  388. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.19/Cargo.lock +697 -0
  389. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.19/Cargo.toml +181 -0
  390. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.19/src/lib.rs +482 -0
  391. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.19/src/translate/code_translator.rs +4152 -0
  392. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.19/.cargo-checksum.json +1 -0
  393. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.19/.cargo_vcs_info.json +6 -0
  394. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.19/Cargo.lock +353 -0
  395. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.19/Cargo.toml +110 -0
  396. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.19/.cargo-checksum.json +1 -0
  397. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.19/.cargo_vcs_info.json +6 -0
  398. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.19/Cargo.lock +203 -0
  399. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.19/Cargo.toml +109 -0
  400. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.19/.cargo-checksum.json +1 -0
  401. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.19/.cargo_vcs_info.json +6 -0
  402. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.19/Cargo.lock +104 -0
  403. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.19/Cargo.toml +90 -0
  404. data/ext/cargo-vendor/wasmtime-internal-math-36.0.19/.cargo-checksum.json +1 -0
  405. data/ext/cargo-vendor/wasmtime-internal-math-36.0.19/.cargo_vcs_info.json +6 -0
  406. data/ext/cargo-vendor/wasmtime-internal-math-36.0.19/Cargo.lock +16 -0
  407. data/ext/cargo-vendor/wasmtime-internal-math-36.0.19/Cargo.toml +77 -0
  408. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.19/.cargo-checksum.json +1 -0
  409. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.19/.cargo_vcs_info.json +6 -0
  410. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.19/Cargo.lock +7 -0
  411. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.19/Cargo.toml +69 -0
  412. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.19/.cargo-checksum.json +1 -0
  413. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.19/.cargo_vcs_info.json +6 -0
  414. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.19/Cargo.lock +328 -0
  415. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.19/Cargo.toml +105 -0
  416. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.19/.cargo-checksum.json +1 -0
  417. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.19/.cargo_vcs_info.json +6 -0
  418. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.19/Cargo.lock +47 -0
  419. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.19/Cargo.toml +43 -0
  420. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.19/.cargo-checksum.json +1 -0
  421. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.19/.cargo_vcs_info.json +6 -0
  422. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.19/Cargo.lock +634 -0
  423. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.19/Cargo.toml +127 -0
  424. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.19/.cargo-checksum.json +1 -0
  425. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.19/.cargo_vcs_info.json +6 -0
  426. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.19/Cargo.lock +193 -0
  427. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.19/Cargo.toml +89 -0
  428. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.19/src/lib.rs +3467 -0
  429. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/.cargo-checksum.json +1 -0
  430. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/.cargo_vcs_info.json +6 -0
  431. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/Cargo.lock +2512 -0
  432. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/Cargo.toml +269 -0
  433. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/Cargo.toml.orig +86 -0
  434. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/cli/file.rs +150 -0
  435. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/cli/stdout.rs +99 -0
  436. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/ctx.rs +570 -0
  437. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/create_dir.rs +14 -0
  438. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/dir_entry.rs +67 -0
  439. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/dir_options.rs +34 -0
  440. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/errors.rs +14 -0
  441. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/file_type.rs +124 -0
  442. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/follow_symlinks.rs +16 -0
  443. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/hard_link.rs +19 -0
  444. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/manually/canonical_path.rs +55 -0
  445. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/manually/cow_component.rs +44 -0
  446. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/manually/mod.rs +13 -0
  447. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/manually/open.rs +510 -0
  448. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/manually/read_link_one.rs +36 -0
  449. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/maybe_owned_file.rs +75 -0
  450. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/metadata.rs +241 -0
  451. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/mod.rs +86 -0
  452. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/open.rs +14 -0
  453. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/open_dir.rs +49 -0
  454. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/open_options.rs +327 -0
  455. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/open_unchecked_error.rs +37 -0
  456. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/read_dir.rs +38 -0
  457. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/read_link.rs +36 -0
  458. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/remove_dir.rs +14 -0
  459. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/remove_file.rs +14 -0
  460. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rename.rs +19 -0
  461. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/fs/check.rs +40 -0
  462. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/fs/mod.rs +13 -0
  463. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/fs/open_impl.rs +29 -0
  464. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/fs/remove_dir_impl.rs +16 -0
  465. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/fs/remove_file_impl.rs +12 -0
  466. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/fs/set_times_impl.rs +46 -0
  467. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/fs/stat_impl.rs +22 -0
  468. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/freebsd/mod.rs +1 -0
  469. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/create_dir_unchecked.rs +19 -0
  470. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/cvt.rs +19 -0
  471. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/dir_entry_inner.rs +41 -0
  472. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/dir_options_ext.rs +14 -0
  473. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/dir_utils.rs +198 -0
  474. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/errors.rs +21 -0
  475. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/file_type_ext.rs +114 -0
  476. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/hard_link_unchecked.rs +24 -0
  477. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/is_same_file.rs +33 -0
  478. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/metadata_ext.rs +181 -0
  479. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/mod.rs +87 -0
  480. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/oflags.rs +101 -0
  481. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/open_options_ext.rs +20 -0
  482. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/open_unchecked.rs +57 -0
  483. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/read_dir_inner.rs +87 -0
  484. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/read_link_unchecked.rs +19 -0
  485. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/remove_dir_unchecked.rs +9 -0
  486. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/remove_file_unchecked.rs +9 -0
  487. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/rename_unchecked.rs +14 -0
  488. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/set_times_impl.rs +52 -0
  489. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/stat_unchecked.rs +79 -0
  490. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/symlink_unchecked.rs +13 -0
  491. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/fs/times.rs +57 -0
  492. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/linux/fs/file_metadata.rs +27 -0
  493. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/linux/fs/mod.rs +21 -0
  494. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/linux/fs/open_impl.rs +126 -0
  495. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/linux/fs/procfs.rs +43 -0
  496. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/linux/fs/set_times_impl.rs +44 -0
  497. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/linux/fs/stat_impl.rs +58 -0
  498. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/linux/mod.rs +6 -0
  499. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/rustix/mod.rs +9 -0
  500. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/set_times.rs +33 -0
  501. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/stat.rs +13 -0
  502. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/symlink.rs +64 -0
  503. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/cap_basics.rs +244 -0
  504. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/file_type_ext.rs +39 -0
  505. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/fs.rs +1239 -0
  506. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/fs_additional.rs +1360 -0
  507. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/helpers/mod.rs +152 -0
  508. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/metadata_ext.rs +90 -0
  509. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/mod.rs +19 -0
  510. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/paths_containing_nul.rs +77 -0
  511. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/readdir.rs +79 -0
  512. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/rename.rs +238 -0
  513. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/rename_directory.rs +33 -0
  514. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/reopendir.rs +72 -0
  515. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/set_times.rs +156 -0
  516. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/symlinks.rs +568 -0
  517. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/sys_common/io.rs +6 -0
  518. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/sys_common/mod.rs +96 -0
  519. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/sys_common/symlink_junction.rs +144 -0
  520. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/windows_open.rs +208 -0
  521. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/tests/windows_symlinks.rs +84 -0
  522. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/create_dir.rs +21 -0
  523. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/hard_link.rs +26 -0
  524. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/mod.rs +31 -0
  525. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/open_parent.rs +126 -0
  526. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/read_link.rs +21 -0
  527. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/remove_dir.rs +14 -0
  528. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/remove_file.rs +14 -0
  529. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/rename.rs +68 -0
  530. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/set_times_nofollow.rs +19 -0
  531. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/via_parent/symlink.rs +48 -0
  532. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/create_dir_unchecked.rs +18 -0
  533. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/create_file_at_w.rs +280 -0
  534. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/dir_entry_inner.rs +31 -0
  535. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/dir_options_ext.rs +8 -0
  536. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/dir_utils.rs +190 -0
  537. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/errors.rs +22 -0
  538. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/file_type_ext.rs +92 -0
  539. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/get_path.rs +31 -0
  540. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/hard_link_unchecked.rs +16 -0
  541. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/metadata_ext.rs +65 -0
  542. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/mod.rs +66 -0
  543. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/oflags.rs +48 -0
  544. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/open_impl.rs +66 -0
  545. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/open_options_ext.rs +111 -0
  546. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/open_unchecked.rs +215 -0
  547. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/read_dir_inner.rs +41 -0
  548. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/read_link_impl.rs +20 -0
  549. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/read_link_unchecked.rs +14 -0
  550. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/remove_dir_unchecked.rs +10 -0
  551. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/remove_file_unchecked.rs +10 -0
  552. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/rename_unchecked.rs +16 -0
  553. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/set_times_impl.rs +52 -0
  554. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/stat_unchecked.rs +36 -0
  555. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/fs/symlink_unchecked.rs +25 -0
  556. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem/primitives/windows/mod.rs +4 -0
  557. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/filesystem.rs +34 -0
  558. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/lib.rs +64 -0
  559. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/p2/filesystem.rs +576 -0
  560. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/p2/host/filesystem.rs +1348 -0
  561. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/p2/host/random.rs +43 -0
  562. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/p2/host/udp.rs +713 -0
  563. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/p2/pipe.rs +890 -0
  564. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/p2/tcp.rs +970 -0
  565. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/preview0.rs +987 -0
  566. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/preview1.rs +2701 -0
  567. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/src/random.rs +109 -0
  568. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/tests/all/p2/async_.rs +514 -0
  569. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/tests/all/p2/mod.rs +126 -0
  570. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/tests/all/p2/preview1.rs +337 -0
  571. data/ext/cargo-vendor/wasmtime-wasi-36.0.19/tests/all/p2/sync.rs +426 -0
  572. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.19/.cargo-checksum.json +1 -0
  573. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.19/.cargo_vcs_info.json +6 -0
  574. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.19/Cargo.lock +1208 -0
  575. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.19/Cargo.toml +104 -0
  576. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.19/src/impls.rs +292 -0
  577. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.19/src/streams.rs +294 -0
  578. data/ext/cargo-vendor/wast-236.0.0/.cargo-checksum.json +1 -1
  579. data/ext/cargo-vendor/wast-35.0.2/.cargo-checksum.json +1 -1
  580. data/ext/cargo-vendor/wat-1.236.0/.cargo-checksum.json +1 -1
  581. data/ext/cargo-vendor/web-time-1.1.0/.cargo-checksum.json +1 -1
  582. data/ext/cargo-vendor/wiggle-36.0.19/.cargo-checksum.json +1 -0
  583. data/ext/cargo-vendor/wiggle-36.0.19/.cargo_vcs_info.json +6 -0
  584. data/ext/cargo-vendor/wiggle-36.0.19/Cargo.lock +1168 -0
  585. data/ext/cargo-vendor/wiggle-36.0.19/Cargo.toml +138 -0
  586. data/ext/cargo-vendor/wiggle-generate-36.0.19/.cargo-checksum.json +1 -0
  587. data/ext/cargo-vendor/wiggle-generate-36.0.19/.cargo_vcs_info.json +6 -0
  588. data/ext/cargo-vendor/wiggle-generate-36.0.19/Cargo.lock +115 -0
  589. data/ext/cargo-vendor/wiggle-generate-36.0.19/Cargo.toml +101 -0
  590. data/ext/cargo-vendor/wiggle-generate-36.0.19/src/module_trait.rs +96 -0
  591. data/ext/cargo-vendor/wiggle-generate-36.0.19/src/wasmtime.rs +176 -0
  592. data/ext/cargo-vendor/wiggle-macro-36.0.19/.cargo-checksum.json +1 -0
  593. data/ext/cargo-vendor/wiggle-macro-36.0.19/.cargo_vcs_info.json +6 -0
  594. data/ext/cargo-vendor/wiggle-macro-36.0.19/Cargo.lock +127 -0
  595. data/ext/cargo-vendor/wiggle-macro-36.0.19/Cargo.toml +97 -0
  596. data/ext/cargo-vendor/winapi-0.3.9/.cargo-checksum.json +1 -1
  597. data/ext/cargo-vendor/winapi-i686-pc-windows-gnu-0.4.0/.cargo-checksum.json +1 -1
  598. data/ext/cargo-vendor/winapi-util-0.1.9/.cargo-checksum.json +1 -1
  599. data/ext/cargo-vendor/winapi-x86_64-pc-windows-gnu-0.4.0/.cargo-checksum.json +1 -1
  600. data/ext/cargo-vendor/winch-codegen-36.0.19/.cargo-checksum.json +1 -0
  601. data/ext/cargo-vendor/winch-codegen-36.0.19/.cargo_vcs_info.json +6 -0
  602. data/ext/cargo-vendor/winch-codegen-36.0.19/Cargo.lock +606 -0
  603. data/ext/cargo-vendor/winch-codegen-36.0.19/Cargo.toml +132 -0
  604. data/ext/cargo-vendor/winch-codegen-36.0.19/src/codegen/bounds.rs +249 -0
  605. data/ext/cargo-vendor/winch-codegen-36.0.19/src/codegen/env.rs +429 -0
  606. data/ext/cargo-vendor/winch-codegen-36.0.19/src/codegen/error.rs +207 -0
  607. data/ext/cargo-vendor/winch-codegen-36.0.19/src/codegen/mod.rs +1645 -0
  608. data/ext/cargo-vendor/winch-codegen-36.0.19/src/isa/aarch64/asm.rs +1328 -0
  609. data/ext/cargo-vendor/winch-codegen-36.0.19/src/isa/aarch64/masm.rs +1617 -0
  610. data/ext/cargo-vendor/winch-codegen-36.0.19/src/isa/x64/masm.rs +3603 -0
  611. data/ext/cargo-vendor/winch-codegen-36.0.19/src/masm.rs +2339 -0
  612. data/ext/cargo-vendor/winch-codegen-36.0.19/src/visitor.rs +4653 -0
  613. data/ext/cargo-vendor/windows-core-0.61.2/.cargo-checksum.json +1 -1
  614. data/ext/cargo-vendor/windows-implement-0.60.0/.cargo-checksum.json +1 -1
  615. data/ext/cargo-vendor/windows-interface-0.59.1/.cargo-checksum.json +1 -1
  616. data/ext/cargo-vendor/windows-link-0.1.3/.cargo-checksum.json +1 -1
  617. data/ext/cargo-vendor/windows-result-0.3.4/.cargo-checksum.json +1 -1
  618. data/ext/cargo-vendor/windows-strings-0.4.2/.cargo-checksum.json +1 -1
  619. data/ext/cargo-vendor/windows-sys-0.59.0/.cargo-checksum.json +1 -1
  620. data/ext/cargo-vendor/windows-sys-0.60.2/.cargo-checksum.json +1 -1
  621. data/ext/cargo-vendor/windows-targets-0.52.6/.cargo-checksum.json +1 -1
  622. data/ext/cargo-vendor/windows-targets-0.53.3/.cargo-checksum.json +1 -1
  623. data/ext/cargo-vendor/windows_aarch64_gnullvm-0.52.6/.cargo-checksum.json +1 -1
  624. data/ext/cargo-vendor/windows_aarch64_gnullvm-0.53.0/.cargo-checksum.json +1 -1
  625. data/ext/cargo-vendor/windows_aarch64_msvc-0.52.6/.cargo-checksum.json +1 -1
  626. data/ext/cargo-vendor/windows_aarch64_msvc-0.53.0/.cargo-checksum.json +1 -1
  627. data/ext/cargo-vendor/windows_i686_gnu-0.52.6/.cargo-checksum.json +1 -1
  628. data/ext/cargo-vendor/windows_i686_gnu-0.53.0/.cargo-checksum.json +1 -1
  629. data/ext/cargo-vendor/windows_i686_gnullvm-0.52.6/.cargo-checksum.json +1 -1
  630. data/ext/cargo-vendor/windows_i686_gnullvm-0.53.0/.cargo-checksum.json +1 -1
  631. data/ext/cargo-vendor/windows_i686_msvc-0.52.6/.cargo-checksum.json +1 -1
  632. data/ext/cargo-vendor/windows_i686_msvc-0.53.0/.cargo-checksum.json +1 -1
  633. data/ext/cargo-vendor/windows_x86_64_gnu-0.52.6/.cargo-checksum.json +1 -1
  634. data/ext/cargo-vendor/windows_x86_64_gnu-0.53.0/.cargo-checksum.json +1 -1
  635. data/ext/cargo-vendor/windows_x86_64_gnullvm-0.52.6/.cargo-checksum.json +1 -1
  636. data/ext/cargo-vendor/windows_x86_64_gnullvm-0.53.0/.cargo-checksum.json +1 -1
  637. data/ext/cargo-vendor/windows_x86_64_msvc-0.52.6/.cargo-checksum.json +1 -1
  638. data/ext/cargo-vendor/windows_x86_64_msvc-0.53.0/.cargo-checksum.json +1 -1
  639. data/ext/cargo-vendor/winnow-0.7.10/.cargo-checksum.json +1 -1
  640. data/ext/cargo-vendor/winx-0.36.4/.cargo-checksum.json +1 -1
  641. data/ext/cargo-vendor/wit-bindgen-rt-0.39.0/.cargo-checksum.json +1 -1
  642. data/ext/cargo-vendor/wit-parser-0.236.0/.cargo-checksum.json +1 -1
  643. data/ext/cargo-vendor/witx-0.9.1/.cargo-checksum.json +1 -1
  644. data/ext/cargo-vendor/writeable-0.6.1/.cargo-checksum.json +1 -1
  645. data/ext/cargo-vendor/yoke-0.8.0/.cargo-checksum.json +1 -1
  646. data/ext/cargo-vendor/yoke-derive-0.8.0/.cargo-checksum.json +1 -1
  647. data/ext/cargo-vendor/zerocopy-0.8.25/.cargo-checksum.json +1 -1
  648. data/ext/cargo-vendor/zerocopy-derive-0.8.25/.cargo-checksum.json +1 -1
  649. data/ext/cargo-vendor/zerofrom-0.1.6/.cargo-checksum.json +1 -1
  650. data/ext/cargo-vendor/zerofrom-derive-0.1.6/.cargo-checksum.json +1 -1
  651. data/ext/cargo-vendor/zerotrie-0.2.2/.cargo-checksum.json +1 -1
  652. data/ext/cargo-vendor/zerovec-0.11.2/.cargo-checksum.json +1 -1
  653. data/ext/cargo-vendor/zerovec-derive-0.11.1/.cargo-checksum.json +1 -1
  654. data/ext/cargo-vendor/zstd-0.13.3/.cargo-checksum.json +1 -1
  655. data/ext/cargo-vendor/zstd-safe-7.2.4/.cargo-checksum.json +1 -1
  656. data/ext/cargo-vendor/zstd-sys-2.0.15+zstd.1.5.7/.cargo-checksum.json +1 -1
  657. data/ext/src/ruby_api/component/convert.rs +1 -1
  658. data/ext/src/ruby_api/convert.rs +35 -27
  659. data/ext/src/ruby_api/engine.rs +1 -1
  660. data/ext/src/ruby_api/externref.rs +93 -0
  661. data/ext/src/ruby_api/func.rs +35 -20
  662. data/ext/src/ruby_api/global.rs +13 -26
  663. data/ext/src/ruby_api/instance.rs +1 -4
  664. data/ext/src/ruby_api/mod.rs +1 -0
  665. data/ext/src/ruby_api/params.rs +12 -6
  666. data/ext/src/ruby_api/store.rs +20 -7
  667. data/ext/src/ruby_api/table.rs +45 -44
  668. data/lib/wasmtime/version.rb +1 -1
  669. metadata +1748 -1634
  670. data/ext/cargo-vendor/cap-fs-ext-3.4.4/.cargo-checksum.json +0 -1
  671. data/ext/cargo-vendor/cap-fs-ext-3.4.4/.cargo_vcs_info.json +0 -6
  672. data/ext/cargo-vendor/cap-fs-ext-3.4.4/Cargo.lock +0 -802
  673. data/ext/cargo-vendor/cap-fs-ext-3.4.4/Cargo.toml +0 -104
  674. data/ext/cargo-vendor/cap-fs-ext-3.4.4/Cargo.toml.orig +0 -41
  675. data/ext/cargo-vendor/cap-net-ext-3.4.4/.cargo-checksum.json +0 -1
  676. data/ext/cargo-vendor/cap-net-ext-3.4.4/.cargo_vcs_info.json +0 -6
  677. data/ext/cargo-vendor/cap-net-ext-3.4.4/Cargo.lock +0 -234
  678. data/ext/cargo-vendor/cap-net-ext-3.4.4/Cargo.toml +0 -48
  679. data/ext/cargo-vendor/cap-net-ext-3.4.4/Cargo.toml.orig +0 -19
  680. data/ext/cargo-vendor/cap-primitives-3.4.4/.cargo-checksum.json +0 -1
  681. data/ext/cargo-vendor/cap-primitives-3.4.4/.cargo_vcs_info.json +0 -6
  682. data/ext/cargo-vendor/cap-primitives-3.4.4/Cargo.lock +0 -260
  683. data/ext/cargo-vendor/cap-primitives-3.4.4/Cargo.toml +0 -96
  684. data/ext/cargo-vendor/cap-primitives-3.4.4/Cargo.toml.orig +0 -47
  685. data/ext/cargo-vendor/cap-primitives-3.4.4/src/fs/manually/open.rs +0 -573
  686. data/ext/cargo-vendor/cap-primitives-3.4.4/src/fs/via_parent/open_parent.rs +0 -126
  687. data/ext/cargo-vendor/cap-primitives-3.4.4/src/rustix/linux/fs/stat_impl.rs +0 -55
  688. data/ext/cargo-vendor/cap-rand-3.4.4/.cargo-checksum.json +0 -1
  689. data/ext/cargo-vendor/cap-rand-3.4.4/.cargo_vcs_info.json +0 -6
  690. data/ext/cargo-vendor/cap-rand-3.4.4/Cargo.lock +0 -140
  691. data/ext/cargo-vendor/cap-rand-3.4.4/Cargo.toml +0 -48
  692. data/ext/cargo-vendor/cap-rand-3.4.4/Cargo.toml.orig +0 -21
  693. data/ext/cargo-vendor/cap-std-3.4.4/.cargo-checksum.json +0 -1
  694. data/ext/cargo-vendor/cap-std-3.4.4/.cargo_vcs_info.json +0 -6
  695. data/ext/cargo-vendor/cap-std-3.4.4/Cargo.lock +0 -233
  696. data/ext/cargo-vendor/cap-std-3.4.4/Cargo.toml +0 -77
  697. data/ext/cargo-vendor/cap-std-3.4.4/Cargo.toml.orig +0 -32
  698. data/ext/cargo-vendor/cap-std-3.4.4/src/net/tcp_listener.rs +0 -248
  699. data/ext/cargo-vendor/cap-std-3.4.4/src/os/unix/net/unix_listener.rs +0 -156
  700. data/ext/cargo-vendor/cap-time-ext-3.4.4/.cargo-checksum.json +0 -1
  701. data/ext/cargo-vendor/cap-time-ext-3.4.4/.cargo_vcs_info.json +0 -6
  702. data/ext/cargo-vendor/cap-time-ext-3.4.4/Cargo.lock +0 -471
  703. data/ext/cargo-vendor/cap-time-ext-3.4.4/Cargo.toml +0 -58
  704. data/ext/cargo-vendor/cap-time-ext-3.4.4/Cargo.toml.orig +0 -26
  705. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.2/.cargo-checksum.json +0 -1
  706. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.2/.cargo_vcs_info.json +0 -6
  707. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.2/Cargo.lock +0 -133
  708. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.2/Cargo.toml +0 -97
  709. data/ext/cargo-vendor/cranelift-assembler-x64-0.123.2/Cargo.toml.orig +0 -25
  710. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.2/.cargo-checksum.json +0 -1
  711. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.2/.cargo_vcs_info.json +0 -6
  712. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.2/Cargo.lock +0 -16
  713. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.2/Cargo.toml +0 -72
  714. data/ext/cargo-vendor/cranelift-assembler-x64-meta-0.123.2/Cargo.toml.orig +0 -13
  715. data/ext/cargo-vendor/cranelift-bforest-0.123.2/.cargo-checksum.json +0 -1
  716. data/ext/cargo-vendor/cranelift-bforest-0.123.2/.cargo_vcs_info.json +0 -6
  717. data/ext/cargo-vendor/cranelift-bforest-0.123.2/Cargo.lock +0 -25
  718. data/ext/cargo-vendor/cranelift-bforest-0.123.2/Cargo.toml +0 -78
  719. data/ext/cargo-vendor/cranelift-bforest-0.123.2/Cargo.toml.orig +0 -19
  720. data/ext/cargo-vendor/cranelift-bitset-0.123.2/.cargo-checksum.json +0 -1
  721. data/ext/cargo-vendor/cranelift-bitset-0.123.2/.cargo_vcs_info.json +0 -6
  722. data/ext/cargo-vendor/cranelift-bitset-0.123.2/Cargo.lock +0 -73
  723. data/ext/cargo-vendor/cranelift-bitset-0.123.2/Cargo.toml +0 -93
  724. data/ext/cargo-vendor/cranelift-bitset-0.123.2/Cargo.toml.orig +0 -22
  725. data/ext/cargo-vendor/cranelift-codegen-0.123.0/.cargo-checksum.json +0 -1
  726. data/ext/cargo-vendor/cranelift-codegen-0.123.0/.cargo_vcs_info.json +0 -6
  727. data/ext/cargo-vendor/cranelift-codegen-0.123.0/Cargo.lock +0 -1279
  728. data/ext/cargo-vendor/cranelift-codegen-0.123.0/Cargo.toml +0 -251
  729. data/ext/cargo-vendor/cranelift-codegen-0.123.0/Cargo.toml.orig +0 -130
  730. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/ir/dfg.rs +0 -1884
  731. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/isa/aarch64/inst/emit.rs +0 -3634
  732. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/isa/aarch64/inst/mod.rs +0 -3071
  733. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/isa/aarch64/inst.isle +0 -5137
  734. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/isa/aarch64/lower/isle.rs +0 -855
  735. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/isa/x64/inst.isle +0 -4074
  736. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/isa/x64/lower.isle +0 -5055
  737. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/lib.rs +0 -123
  738. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/opts/icmp.isle +0 -292
  739. data/ext/cargo-vendor/cranelift-codegen-0.123.0/src/timing.rs +0 -305
  740. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.0/.cargo-checksum.json +0 -1
  741. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.0/.cargo_vcs_info.json +0 -6
  742. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.0/Cargo.lock +0 -110
  743. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.0/Cargo.toml +0 -89
  744. data/ext/cargo-vendor/cranelift-codegen-meta-0.123.0/Cargo.toml.orig +0 -26
  745. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.2/.cargo-checksum.json +0 -1
  746. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.2/.cargo_vcs_info.json +0 -6
  747. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.2/Cargo.lock +0 -7
  748. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.2/Cargo.toml +0 -34
  749. data/ext/cargo-vendor/cranelift-codegen-shared-0.123.2/Cargo.toml.orig +0 -14
  750. data/ext/cargo-vendor/cranelift-control-0.123.2/.cargo-checksum.json +0 -1
  751. data/ext/cargo-vendor/cranelift-control-0.123.2/.cargo_vcs_info.json +0 -6
  752. data/ext/cargo-vendor/cranelift-control-0.123.2/Cargo.lock +0 -16
  753. data/ext/cargo-vendor/cranelift-control-0.123.2/Cargo.toml +0 -45
  754. data/ext/cargo-vendor/cranelift-control-0.123.2/Cargo.toml.orig +0 -25
  755. data/ext/cargo-vendor/cranelift-entity-0.123.2/.cargo-checksum.json +0 -1
  756. data/ext/cargo-vendor/cranelift-entity-0.123.2/.cargo_vcs_info.json +0 -6
  757. data/ext/cargo-vendor/cranelift-entity-0.123.2/Cargo.lock +0 -77
  758. data/ext/cargo-vendor/cranelift-entity-0.123.2/Cargo.toml +0 -94
  759. data/ext/cargo-vendor/cranelift-entity-0.123.2/Cargo.toml.orig +0 -24
  760. data/ext/cargo-vendor/cranelift-frontend-0.123.0/.cargo-checksum.json +0 -1
  761. data/ext/cargo-vendor/cranelift-frontend-0.123.0/.cargo_vcs_info.json +0 -6
  762. data/ext/cargo-vendor/cranelift-frontend-0.123.0/Cargo.lock +0 -531
  763. data/ext/cargo-vendor/cranelift-frontend-0.123.0/Cargo.toml +0 -116
  764. data/ext/cargo-vendor/cranelift-frontend-0.123.0/Cargo.toml.orig +0 -32
  765. data/ext/cargo-vendor/cranelift-isle-0.123.0/.cargo-checksum.json +0 -1
  766. data/ext/cargo-vendor/cranelift-isle-0.123.0/.cargo_vcs_info.json +0 -6
  767. data/ext/cargo-vendor/cranelift-isle-0.123.0/Cargo.lock +0 -249
  768. data/ext/cargo-vendor/cranelift-isle-0.123.0/Cargo.toml +0 -88
  769. data/ext/cargo-vendor/cranelift-isle-0.123.0/Cargo.toml.orig +0 -26
  770. data/ext/cargo-vendor/cranelift-native-0.123.0/.cargo-checksum.json +0 -1
  771. data/ext/cargo-vendor/cranelift-native-0.123.0/.cargo_vcs_info.json +0 -6
  772. data/ext/cargo-vendor/cranelift-native-0.123.0/Cargo.lock +0 -305
  773. data/ext/cargo-vendor/cranelift-native-0.123.0/Cargo.toml +0 -54
  774. data/ext/cargo-vendor/cranelift-native-0.123.0/Cargo.toml.orig +0 -24
  775. data/ext/cargo-vendor/cranelift-srcgen-0.123.2/.cargo-checksum.json +0 -1
  776. data/ext/cargo-vendor/cranelift-srcgen-0.123.2/.cargo_vcs_info.json +0 -6
  777. data/ext/cargo-vendor/cranelift-srcgen-0.123.2/Cargo.lock +0 -7
  778. data/ext/cargo-vendor/cranelift-srcgen-0.123.2/Cargo.toml +0 -69
  779. data/ext/cargo-vendor/cranelift-srcgen-0.123.2/Cargo.toml.orig +0 -14
  780. data/ext/cargo-vendor/ittapi-sys-0.4.0/c-library/.gitignore +0 -2
  781. data/ext/cargo-vendor/ittapi-sys-0.4.0/c-library/src/ittnotify_refcol/.gitignore +0 -2
  782. data/ext/cargo-vendor/pulley-interpreter-36.0.0/.cargo-checksum.json +0 -1
  783. data/ext/cargo-vendor/pulley-interpreter-36.0.0/.cargo_vcs_info.json +0 -6
  784. data/ext/cargo-vendor/pulley-interpreter-36.0.0/Cargo.lock +0 -426
  785. data/ext/cargo-vendor/pulley-interpreter-36.0.0/Cargo.toml +0 -143
  786. data/ext/cargo-vendor/pulley-interpreter-36.0.0/src/lib.rs +0 -1419
  787. data/ext/cargo-vendor/pulley-macros-36.0.0/.cargo-checksum.json +0 -1
  788. data/ext/cargo-vendor/pulley-macros-36.0.0/.cargo_vcs_info.json +0 -6
  789. data/ext/cargo-vendor/pulley-macros-36.0.0/Cargo.lock +0 -47
  790. data/ext/cargo-vendor/pulley-macros-36.0.0/Cargo.toml +0 -42
  791. data/ext/cargo-vendor/regex-1.11.1/record/old-bench-log/.gitignore +0 -1
  792. data/ext/cargo-vendor/unicode-ident-1.0.18/tests/fst/.gitignore +0 -1
  793. data/ext/cargo-vendor/wasmparser-0.236.0/benches/.gitignore +0 -1
  794. data/ext/cargo-vendor/wasmtime-36.0.0/.cargo-checksum.json +0 -1
  795. data/ext/cargo-vendor/wasmtime-36.0.0/.cargo_vcs_info.json +0 -6
  796. data/ext/cargo-vendor/wasmtime-36.0.0/Cargo.lock +0 -2171
  797. data/ext/cargo-vendor/wasmtime-36.0.0/Cargo.toml +0 -537
  798. data/ext/cargo-vendor/wasmtime-36.0.0/Cargo.toml.orig +0 -404
  799. data/ext/cargo-vendor/wasmtime-36.0.0/src/lib.rs +0 -436
  800. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/concurrent.rs +0 -4657
  801. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/func/options.rs +0 -619
  802. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/func/typed.rs +0 -2881
  803. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/func.rs +0 -936
  804. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/instance.rs +0 -1035
  805. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/linker.rs +0 -902
  806. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/resource_table.rs +0 -353
  807. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/resources.rs +0 -1180
  808. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/store.rs +0 -143
  809. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/component/values.rs +0 -1146
  810. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/coredump.rs +0 -344
  811. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/externals/global.rs +0 -426
  812. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/externals/table.rs +0 -564
  813. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/externals/tag.rs +0 -112
  814. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/func.rs +0 -2684
  815. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/gc/enabled/arrayref.rs +0 -1066
  816. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/gc/enabled/exnref.rs +0 -788
  817. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/gc/enabled/structref.rs +0 -861
  818. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/instance.rs +0 -959
  819. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/linker.rs +0 -1539
  820. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/memory.rs +0 -1113
  821. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/module/registry.rs +0 -358
  822. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/store.rs +0 -2543
  823. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/trampoline/table.rs +0 -43
  824. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/trampoline/tag.rs +0 -41
  825. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/vm/component/resources.rs +0 -512
  826. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/vm/component.rs +0 -1011
  827. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/vm/cow.rs +0 -1167
  828. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +0 -1020
  829. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/vm/memory.rs +0 -772
  830. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/vm/table.rs +0 -1232
  831. data/ext/cargo-vendor/wasmtime-36.0.0/src/runtime/vm.rs +0 -518
  832. data/ext/cargo-vendor/wasmtime-environ-36.0.0/.cargo-checksum.json +0 -1
  833. data/ext/cargo-vendor/wasmtime-environ-36.0.0/.cargo_vcs_info.json +0 -6
  834. data/ext/cargo-vendor/wasmtime-environ-36.0.0/Cargo.lock +0 -650
  835. data/ext/cargo-vendor/wasmtime-environ-36.0.0/Cargo.toml +0 -233
  836. data/ext/cargo-vendor/wasmtime-environ-36.0.0/src/fact/trampoline.rs +0 -3996
  837. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.0/.cargo-checksum.json +0 -1
  838. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.0/.cargo_vcs_info.json +0 -6
  839. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.0/Cargo.lock +0 -16
  840. data/ext/cargo-vendor/wasmtime-internal-asm-macros-36.0.0/Cargo.toml +0 -35
  841. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.0/.cargo-checksum.json +0 -1
  842. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.0/.cargo_vcs_info.json +0 -6
  843. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.0/Cargo.lock +0 -840
  844. data/ext/cargo-vendor/wasmtime-internal-cache-36.0.0/Cargo.toml +0 -127
  845. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.0/.cargo-checksum.json +0 -1
  846. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.0/.cargo_vcs_info.json +0 -6
  847. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.0/Cargo.lock +0 -285
  848. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.0/Cargo.toml +0 -145
  849. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.0/tests/expanded/resources-export_concurrent.rs +0 -798
  850. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.0/tests/expanded/resources-import_concurrent.rs +0 -1170
  851. data/ext/cargo-vendor/wasmtime-internal-component-macro-36.0.0/tests/expanded/unstable-features_concurrent.rs +0 -479
  852. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.0/.cargo-checksum.json +0 -1
  853. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.0/.cargo_vcs_info.json +0 -6
  854. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.0/Cargo.lock +0 -7
  855. data/ext/cargo-vendor/wasmtime-internal-component-util-36.0.0/Cargo.toml +0 -38
  856. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.0/.cargo-checksum.json +0 -1
  857. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.0/.cargo_vcs_info.json +0 -6
  858. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.0/Cargo.lock +0 -697
  859. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.0/Cargo.toml +0 -181
  860. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.0/src/lib.rs +0 -468
  861. data/ext/cargo-vendor/wasmtime-internal-cranelift-36.0.0/src/translate/code_translator.rs +0 -4140
  862. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.0/.cargo-checksum.json +0 -1
  863. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.0/.cargo_vcs_info.json +0 -6
  864. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.0/Cargo.lock +0 -353
  865. data/ext/cargo-vendor/wasmtime-internal-fiber-36.0.0/Cargo.toml +0 -110
  866. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.0/.cargo-checksum.json +0 -1
  867. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.0/.cargo_vcs_info.json +0 -6
  868. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.0/Cargo.lock +0 -203
  869. data/ext/cargo-vendor/wasmtime-internal-jit-debug-36.0.0/Cargo.toml +0 -109
  870. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.0/.cargo-checksum.json +0 -1
  871. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.0/.cargo_vcs_info.json +0 -6
  872. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.0/Cargo.lock +0 -104
  873. data/ext/cargo-vendor/wasmtime-internal-jit-icache-coherence-36.0.0/Cargo.toml +0 -90
  874. data/ext/cargo-vendor/wasmtime-internal-math-36.0.0/.cargo-checksum.json +0 -1
  875. data/ext/cargo-vendor/wasmtime-internal-math-36.0.0/.cargo_vcs_info.json +0 -6
  876. data/ext/cargo-vendor/wasmtime-internal-math-36.0.0/Cargo.lock +0 -16
  877. data/ext/cargo-vendor/wasmtime-internal-math-36.0.0/Cargo.toml +0 -77
  878. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.0/.cargo-checksum.json +0 -1
  879. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.0/.cargo_vcs_info.json +0 -6
  880. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.0/Cargo.lock +0 -7
  881. data/ext/cargo-vendor/wasmtime-internal-slab-36.0.0/Cargo.toml +0 -69
  882. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.0/.cargo-checksum.json +0 -1
  883. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.0/.cargo_vcs_info.json +0 -6
  884. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.0/Cargo.lock +0 -328
  885. data/ext/cargo-vendor/wasmtime-internal-unwinder-36.0.0/Cargo.toml +0 -105
  886. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.0/.cargo-checksum.json +0 -1
  887. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.0/.cargo_vcs_info.json +0 -6
  888. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.0/Cargo.lock +0 -47
  889. data/ext/cargo-vendor/wasmtime-internal-versioned-export-macros-36.0.0/Cargo.toml +0 -43
  890. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.0/.cargo-checksum.json +0 -1
  891. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.0/.cargo_vcs_info.json +0 -6
  892. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.0/Cargo.lock +0 -634
  893. data/ext/cargo-vendor/wasmtime-internal-winch-36.0.0/Cargo.toml +0 -127
  894. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.0/.cargo-checksum.json +0 -1
  895. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.0/.cargo_vcs_info.json +0 -6
  896. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.0/Cargo.lock +0 -193
  897. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.0/Cargo.toml +0 -89
  898. data/ext/cargo-vendor/wasmtime-internal-wit-bindgen-36.0.0/src/lib.rs +0 -3467
  899. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/.cargo-checksum.json +0 -1
  900. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/.cargo_vcs_info.json +0 -6
  901. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/Cargo.lock +0 -2510
  902. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/Cargo.toml +0 -252
  903. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/Cargo.toml.orig +0 -71
  904. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/cli/file.rs +0 -150
  905. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/cli/stdout.rs +0 -99
  906. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/ctx.rs +0 -536
  907. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/filesystem.rs +0 -32
  908. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/lib.rs +0 -46
  909. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/p2/filesystem.rs +0 -573
  910. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/p2/host/filesystem.rs +0 -1057
  911. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/p2/host/random.rs +0 -36
  912. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/p2/host/udp.rs +0 -711
  913. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/p2/pipe.rs +0 -885
  914. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/p2/tcp.rs +0 -970
  915. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/preview0.rs +0 -983
  916. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/preview1.rs +0 -2617
  917. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/src/random.rs +0 -102
  918. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/tests/all/p2/async_.rs +0 -401
  919. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/tests/all/p2/mod.rs +0 -88
  920. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/tests/all/p2/preview1.rs +0 -251
  921. data/ext/cargo-vendor/wasmtime-wasi-36.0.0/tests/all/p2/sync.rs +0 -335
  922. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.0/.cargo-checksum.json +0 -1
  923. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.0/.cargo_vcs_info.json +0 -6
  924. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.0/Cargo.lock +0 -1208
  925. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.0/Cargo.toml +0 -104
  926. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.0/src/impls.rs +0 -290
  927. data/ext/cargo-vendor/wasmtime-wasi-io-36.0.0/src/streams.rs +0 -312
  928. data/ext/cargo-vendor/wast-236.0.0/tests/.gitattributes +0 -1
  929. data/ext/cargo-vendor/wast-236.0.0/tests/.gitignore +0 -1
  930. data/ext/cargo-vendor/wiggle-36.0.0/.cargo-checksum.json +0 -1
  931. data/ext/cargo-vendor/wiggle-36.0.0/.cargo_vcs_info.json +0 -6
  932. data/ext/cargo-vendor/wiggle-36.0.0/Cargo.lock +0 -1168
  933. data/ext/cargo-vendor/wiggle-36.0.0/Cargo.toml +0 -138
  934. data/ext/cargo-vendor/wiggle-generate-36.0.0/.cargo-checksum.json +0 -1
  935. data/ext/cargo-vendor/wiggle-generate-36.0.0/.cargo_vcs_info.json +0 -6
  936. data/ext/cargo-vendor/wiggle-generate-36.0.0/Cargo.lock +0 -115
  937. data/ext/cargo-vendor/wiggle-generate-36.0.0/Cargo.toml +0 -101
  938. data/ext/cargo-vendor/wiggle-generate-36.0.0/src/module_trait.rs +0 -89
  939. data/ext/cargo-vendor/wiggle-generate-36.0.0/src/wasmtime.rs +0 -173
  940. data/ext/cargo-vendor/wiggle-macro-36.0.0/.cargo-checksum.json +0 -1
  941. data/ext/cargo-vendor/wiggle-macro-36.0.0/.cargo_vcs_info.json +0 -6
  942. data/ext/cargo-vendor/wiggle-macro-36.0.0/Cargo.lock +0 -127
  943. data/ext/cargo-vendor/wiggle-macro-36.0.0/Cargo.toml +0 -97
  944. data/ext/cargo-vendor/winch-codegen-36.0.0/.cargo-checksum.json +0 -1
  945. data/ext/cargo-vendor/winch-codegen-36.0.0/.cargo_vcs_info.json +0 -6
  946. data/ext/cargo-vendor/winch-codegen-36.0.0/Cargo.lock +0 -606
  947. data/ext/cargo-vendor/winch-codegen-36.0.0/Cargo.toml +0 -132
  948. data/ext/cargo-vendor/winch-codegen-36.0.0/src/codegen/bounds.rs +0 -233
  949. data/ext/cargo-vendor/winch-codegen-36.0.0/src/codegen/env.rs +0 -417
  950. data/ext/cargo-vendor/winch-codegen-36.0.0/src/codegen/error.rs +0 -197
  951. data/ext/cargo-vendor/winch-codegen-36.0.0/src/codegen/mod.rs +0 -1631
  952. data/ext/cargo-vendor/winch-codegen-36.0.0/src/isa/aarch64/asm.rs +0 -1301
  953. data/ext/cargo-vendor/winch-codegen-36.0.0/src/isa/aarch64/masm.rs +0 -1602
  954. data/ext/cargo-vendor/winch-codegen-36.0.0/src/isa/x64/masm.rs +0 -3578
  955. data/ext/cargo-vendor/winch-codegen-36.0.0/src/masm.rs +0 -2326
  956. data/ext/cargo-vendor/winch-codegen-36.0.0/src/visitor.rs +0 -4640
  957. data/ext/cargo-vendor/wit-parser-0.236.0/tests/.gitignore +0 -2
  958. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/COPYRIGHT +0 -0
  959. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/LICENSE-APACHE +0 -0
  960. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -0
  961. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/LICENSE-MIT +0 -0
  962. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/README.md +0 -0
  963. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/build.rs +0 -0
  964. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/dir_entry_ext.rs +0 -0
  965. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/dir_ext.rs +0 -0
  966. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/file_type_ext.rs +0 -0
  967. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/is_file_read_write.rs +0 -0
  968. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/lib.rs +0 -0
  969. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/metadata_ext.rs +0 -0
  970. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/open_options_follow_ext.rs +0 -0
  971. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/open_options_maybe_dir_ext.rs +0 -0
  972. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/open_options_sync_ext.rs +0 -0
  973. /data/ext/cargo-vendor/{cap-fs-ext-3.4.4 → cap-fs-ext-3.4.6}/src/reopen.rs +0 -0
  974. /data/ext/cargo-vendor/{cap-net-ext-3.4.4 → cap-net-ext-3.4.6}/COPYRIGHT +0 -0
  975. /data/ext/cargo-vendor/{cap-net-ext-3.4.4 → cap-net-ext-3.4.6}/LICENSE-APACHE +0 -0
  976. /data/ext/cargo-vendor/{cap-net-ext-3.4.4 → cap-net-ext-3.4.6}/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -0
  977. /data/ext/cargo-vendor/{cap-net-ext-3.4.4 → cap-net-ext-3.4.6}/LICENSE-MIT +0 -0
  978. /data/ext/cargo-vendor/{cap-net-ext-3.4.4 → cap-net-ext-3.4.6}/README.md +0 -0
  979. /data/ext/cargo-vendor/{cap-net-ext-3.4.4 → cap-net-ext-3.4.6}/src/lib.rs +0 -0
  980. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/COPYRIGHT +0 -0
  981. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/LICENSE-APACHE +0 -0
  982. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -0
  983. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/LICENSE-MIT +0 -0
  984. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/README.md +0 -0
  985. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/build.rs +0 -0
  986. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/access.rs +0 -0
  987. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/assert_same_file.rs +0 -0
  988. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/canonicalize.rs +0 -0
  989. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/copy.rs +0 -0
  990. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/create_dir.rs +0 -0
  991. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/dir_builder.rs +0 -0
  992. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/dir_entry.rs +0 -0
  993. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/dir_options.rs +0 -0
  994. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/errors.rs +0 -0
  995. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/file.rs +0 -0
  996. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/file_path_by_searching.rs +0 -0
  997. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/file_type.rs +0 -0
  998. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/follow_symlinks.rs +0 -0
  999. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/hard_link.rs +0 -0
  1000. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/is_file_read_write.rs +0 -0
  1001. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/manually/canonical_path.rs +0 -0
  1002. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/manually/canonicalize.rs +0 -0
  1003. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/manually/cow_component.rs +0 -0
  1004. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/manually/mod.rs +0 -0
  1005. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/manually/open_entry.rs +0 -0
  1006. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/manually/read_link_one.rs +0 -0
  1007. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/maybe_owned_file.rs +0 -0
  1008. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/metadata.rs +0 -0
  1009. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/mod.rs +0 -0
  1010. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/open.rs +0 -0
  1011. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/open_ambient.rs +0 -0
  1012. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/open_dir.rs +0 -0
  1013. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/open_options.rs +0 -0
  1014. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/open_unchecked_error.rs +0 -0
  1015. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/permissions.rs +0 -0
  1016. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/read_dir.rs +0 -0
  1017. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/read_link.rs +0 -0
  1018. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/remove_dir.rs +0 -0
  1019. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/remove_dir_all.rs +0 -0
  1020. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/remove_file.rs +0 -0
  1021. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/remove_open_dir.rs +0 -0
  1022. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/rename.rs +0 -0
  1023. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/reopen.rs +0 -0
  1024. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/set_permissions.rs +0 -0
  1025. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/set_times.rs +0 -0
  1026. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/stat.rs +0 -0
  1027. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/symlink.rs +0 -0
  1028. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/system_time_spec.rs +0 -0
  1029. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/access.rs +0 -0
  1030. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/create_dir.rs +0 -0
  1031. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/hard_link.rs +0 -0
  1032. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/mod.rs +0 -0
  1033. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/read_link.rs +0 -0
  1034. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/remove_dir.rs +0 -0
  1035. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/remove_file.rs +0 -0
  1036. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/rename.rs +0 -0
  1037. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/set_permissions.rs +0 -0
  1038. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/set_symlink_permissions.rs +0 -0
  1039. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/set_times_nofollow.rs +0 -0
  1040. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/fs/via_parent/symlink.rs +0 -0
  1041. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/lib.rs +0 -0
  1042. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/net/mod.rs +0 -0
  1043. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/net/pool.rs +0 -0
  1044. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/darwin/fs/file_path.rs +0 -0
  1045. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/darwin/fs/mod.rs +0 -0
  1046. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/darwin/mod.rs +0 -0
  1047. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/check.rs +0 -0
  1048. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/mod.rs +0 -0
  1049. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/open_entry_impl.rs +0 -0
  1050. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/open_impl.rs +0 -0
  1051. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/remove_dir_impl.rs +0 -0
  1052. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/remove_file_impl.rs +0 -0
  1053. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/set_permissions_impl.rs +0 -0
  1054. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/set_times_impl.rs +0 -0
  1055. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/fs/stat_impl.rs +0 -0
  1056. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/freebsd/mod.rs +0 -0
  1057. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/access_unchecked.rs +0 -0
  1058. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/copy_impl.rs +0 -0
  1059. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/create_dir_unchecked.rs +0 -0
  1060. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/cvt.rs +0 -0
  1061. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/dir_entry_inner.rs +0 -0
  1062. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/dir_options_ext.rs +0 -0
  1063. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/dir_utils.rs +0 -0
  1064. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/errors.rs +0 -0
  1065. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/file_path.rs +0 -0
  1066. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/file_type_ext.rs +0 -0
  1067. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/hard_link_unchecked.rs +0 -0
  1068. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/is_file_read_write_impl.rs +0 -0
  1069. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/is_root_dir.rs +0 -0
  1070. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/is_same_file.rs +0 -0
  1071. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/metadata_ext.rs +0 -0
  1072. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/mod.rs +0 -0
  1073. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/oflags.rs +0 -0
  1074. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/open_options_ext.rs +0 -0
  1075. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/open_unchecked.rs +0 -0
  1076. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/permissions_ext.rs +0 -0
  1077. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/read_dir_inner.rs +0 -0
  1078. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/read_link_unchecked.rs +0 -0
  1079. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/remove_dir_all_impl.rs +0 -0
  1080. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/remove_dir_unchecked.rs +0 -0
  1081. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/remove_file_unchecked.rs +0 -0
  1082. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/remove_open_dir_by_searching.rs +0 -0
  1083. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/rename_unchecked.rs +0 -0
  1084. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/reopen_impl.rs +0 -0
  1085. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/set_permissions_impl.rs +0 -0
  1086. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/set_symlink_permissions_unchecked.rs +0 -0
  1087. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/set_times_impl.rs +0 -0
  1088. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/stat_unchecked.rs +0 -0
  1089. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/symlink_unchecked.rs +0 -0
  1090. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/fs/times.rs +0 -0
  1091. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/canonicalize_impl.rs +0 -0
  1092. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/file_metadata.rs +0 -0
  1093. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/file_path.rs +0 -0
  1094. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/mod.rs +0 -0
  1095. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/open_entry_impl.rs +0 -0
  1096. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/open_impl.rs +0 -0
  1097. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/procfs.rs +0 -0
  1098. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/set_permissions_impl.rs +0 -0
  1099. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/fs/set_times_impl.rs +0 -0
  1100. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/linux/mod.rs +0 -0
  1101. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/rustix/mod.rs +0 -0
  1102. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/time/instant.rs +0 -0
  1103. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/time/mod.rs +0 -0
  1104. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/time/monotonic_clock.rs +0 -0
  1105. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/time/system_clock.rs +0 -0
  1106. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/time/system_time.rs +0 -0
  1107. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/access_unchecked.rs +0 -0
  1108. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/copy.rs +0 -0
  1109. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/create_dir_unchecked.rs +0 -0
  1110. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/create_file_at_w.rs +0 -0
  1111. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/dir_entry_inner.rs +0 -0
  1112. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/dir_options_ext.rs +0 -0
  1113. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/dir_utils.rs +0 -0
  1114. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/errors.rs +0 -0
  1115. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/file_type_ext.rs +0 -0
  1116. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/get_path.rs +0 -0
  1117. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/hard_link_unchecked.rs +0 -0
  1118. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/is_file_read_write_impl.rs +0 -0
  1119. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/is_same_file.rs +0 -0
  1120. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/metadata_ext.rs +0 -0
  1121. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/mod.rs +0 -0
  1122. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/oflags.rs +0 -0
  1123. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/open_impl.rs +0 -0
  1124. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/open_options_ext.rs +0 -0
  1125. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/open_unchecked.rs +0 -0
  1126. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/read_dir_inner.rs +0 -0
  1127. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/read_link_impl.rs +0 -0
  1128. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/read_link_unchecked.rs +0 -0
  1129. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/remove_dir_all_impl.rs +0 -0
  1130. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/remove_dir_unchecked.rs +0 -0
  1131. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/remove_file_unchecked.rs +0 -0
  1132. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/remove_open_dir_impl.rs +0 -0
  1133. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/rename_unchecked.rs +0 -0
  1134. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/reopen_impl.rs +0 -0
  1135. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/set_permissions_unchecked.rs +0 -0
  1136. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/set_symlink_permissions_unchecked.rs +0 -0
  1137. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/set_times_impl.rs +0 -0
  1138. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/stat_unchecked.rs +0 -0
  1139. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/fs/symlink_unchecked.rs +0 -0
  1140. /data/ext/cargo-vendor/{cap-primitives-3.4.4 → cap-primitives-3.4.6}/src/windows/mod.rs +0 -0
  1141. /data/ext/cargo-vendor/{cap-rand-3.4.4 → cap-rand-3.4.6}/COPYRIGHT +0 -0
  1142. /data/ext/cargo-vendor/{cap-rand-3.4.4 → cap-rand-3.4.6}/LICENSE-APACHE +0 -0
  1143. /data/ext/cargo-vendor/{cap-rand-3.4.4 → cap-rand-3.4.6}/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -0
  1144. /data/ext/cargo-vendor/{cap-rand-3.4.4 → cap-rand-3.4.6}/LICENSE-MIT +0 -0
  1145. /data/ext/cargo-vendor/{cap-rand-3.4.4 → cap-rand-3.4.6}/README.md +0 -0
  1146. /data/ext/cargo-vendor/{cap-rand-3.4.4 → cap-rand-3.4.6}/src/lib.rs +0 -0
  1147. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/COPYRIGHT +0 -0
  1148. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/LICENSE-APACHE +0 -0
  1149. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -0
  1150. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/LICENSE-MIT +0 -0
  1151. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/README.md +0 -0
  1152. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/build.rs +0 -0
  1153. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs/dir.rs +0 -0
  1154. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs/dir_entry.rs +0 -0
  1155. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs/file.rs +0 -0
  1156. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs/mod.rs +0 -0
  1157. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs/read_dir.rs +0 -0
  1158. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs_utf8/dir.rs +0 -0
  1159. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs_utf8/dir_entry.rs +0 -0
  1160. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs_utf8/file.rs +0 -0
  1161. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs_utf8/mod.rs +0 -0
  1162. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/fs_utf8/read_dir.rs +0 -0
  1163. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/lib.rs +0 -0
  1164. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/net/incoming.rs +0 -0
  1165. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/net/mod.rs +0 -0
  1166. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/net/pool.rs +0 -0
  1167. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/net/tcp_stream.rs +0 -0
  1168. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/net/udp_socket.rs +0 -0
  1169. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/os/mod.rs +0 -0
  1170. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/os/unix/mod.rs +0 -0
  1171. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/os/unix/net/incoming.rs +0 -0
  1172. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/os/unix/net/mod.rs +0 -0
  1173. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/os/unix/net/unix_datagram.rs +0 -0
  1174. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/os/unix/net/unix_stream.rs +0 -0
  1175. /data/ext/cargo-vendor/{cap-std-3.4.4 → cap-std-3.4.6}/src/time/mod.rs +0 -0
  1176. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/COPYRIGHT +0 -0
  1177. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/LICENSE-APACHE +0 -0
  1178. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -0
  1179. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/LICENSE-MIT +0 -0
  1180. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/README.md +0 -0
  1181. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/src/lib.rs +0 -0
  1182. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/src/monotonic_clock.rs +0 -0
  1183. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/src/system_clock.rs +0 -0
  1184. /data/ext/cargo-vendor/{cap-time-ext-3.4.4 → cap-time-ext-3.4.6}/src/timezone.rs +0 -0
  1185. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/README.md +0 -0
  1186. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/build.rs +0 -0
  1187. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/api.rs +0 -0
  1188. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/custom.rs +0 -0
  1189. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/evex.rs +0 -0
  1190. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/fixed.rs +0 -0
  1191. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/fuzz.rs +0 -0
  1192. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/gpr.rs +0 -0
  1193. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/imm.rs +0 -0
  1194. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/inst.rs +0 -0
  1195. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/lib.rs +0 -0
  1196. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/main.rs +0 -0
  1197. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/mem.rs +0 -0
  1198. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/rex.rs +0 -0
  1199. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/vex.rs +0 -0
  1200. /data/ext/cargo-vendor/{cranelift-assembler-x64-0.123.2 → cranelift-assembler-x64-0.123.19}/src/xmm.rs +0 -0
  1201. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/README.md +0 -0
  1202. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/dsl/custom.rs +0 -0
  1203. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/dsl/encoding.rs +0 -0
  1204. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/dsl/features.rs +0 -0
  1205. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/dsl/format.rs +0 -0
  1206. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/dsl.rs +0 -0
  1207. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/generate/features.rs +0 -0
  1208. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/generate/format.rs +0 -0
  1209. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/generate/inst.rs +0 -0
  1210. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/generate/operand.rs +0 -0
  1211. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/generate.rs +0 -0
  1212. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/abs.rs +0 -0
  1213. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/add.rs +0 -0
  1214. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/align.rs +0 -0
  1215. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/and.rs +0 -0
  1216. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/atomic.rs +0 -0
  1217. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/avg.rs +0 -0
  1218. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/bitmanip.rs +0 -0
  1219. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/cmov.rs +0 -0
  1220. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/cmp.rs +0 -0
  1221. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/cvt.rs +0 -0
  1222. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/div.rs +0 -0
  1223. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/fma.rs +0 -0
  1224. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/jmp.rs +0 -0
  1225. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/lanes.rs +0 -0
  1226. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/max.rs +0 -0
  1227. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/min.rs +0 -0
  1228. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/misc.rs +0 -0
  1229. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/mov.rs +0 -0
  1230. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/mul.rs +0 -0
  1231. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/neg.rs +0 -0
  1232. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/nop.rs +0 -0
  1233. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/or.rs +0 -0
  1234. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/pack.rs +0 -0
  1235. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/pma.rs +0 -0
  1236. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/recip.rs +0 -0
  1237. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/round.rs +0 -0
  1238. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/setcc.rs +0 -0
  1239. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/shift.rs +0 -0
  1240. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/sqrt.rs +0 -0
  1241. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/stack.rs +0 -0
  1242. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/sub.rs +0 -0
  1243. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/unpack.rs +0 -0
  1244. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions/xor.rs +0 -0
  1245. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/instructions.rs +0 -0
  1246. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/lib.rs +0 -0
  1247. /data/ext/cargo-vendor/{cranelift-assembler-x64-meta-0.123.2 → cranelift-assembler-x64-meta-0.123.19}/src/main.rs +0 -0
  1248. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/LICENSE +0 -0
  1249. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/README.md +0 -0
  1250. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/src/lib.rs +0 -0
  1251. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/src/map.rs +0 -0
  1252. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/src/node.rs +0 -0
  1253. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/src/path.rs +0 -0
  1254. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/src/pool.rs +0 -0
  1255. /data/ext/cargo-vendor/{cranelift-bforest-0.123.2 → cranelift-bforest-0.123.19}/src/set.rs +0 -0
  1256. /data/ext/cargo-vendor/{cranelift-bitset-0.123.2 → cranelift-bitset-0.123.19}/src/compound.rs +0 -0
  1257. /data/ext/cargo-vendor/{cranelift-bitset-0.123.2 → cranelift-bitset-0.123.19}/src/lib.rs +0 -0
  1258. /data/ext/cargo-vendor/{cranelift-bitset-0.123.2 → cranelift-bitset-0.123.19}/src/scalar.rs +0 -0
  1259. /data/ext/cargo-vendor/{cranelift-bitset-0.123.2 → cranelift-bitset-0.123.19}/tests/bitset.rs +0 -0
  1260. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/LICENSE +0 -0
  1261. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/README.md +0 -0
  1262. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/build.rs +0 -0
  1263. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/alias_analysis.rs +0 -0
  1264. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/binemit/mod.rs +0 -0
  1265. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/cfg_printer.rs +0 -0
  1266. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/constant_hash.rs +0 -0
  1267. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/context.rs +0 -0
  1268. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ctxhash.rs +0 -0
  1269. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/cursor.rs +0 -0
  1270. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/data_value.rs +0 -0
  1271. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/dbg.rs +0 -0
  1272. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/dominator_tree/simple.rs +0 -0
  1273. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/dominator_tree.rs +0 -0
  1274. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/egraph/cost.rs +0 -0
  1275. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/egraph/elaborate.rs +0 -0
  1276. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/egraph.rs +0 -0
  1277. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/flowgraph.rs +0 -0
  1278. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/incremental_cache.rs +0 -0
  1279. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/inline.rs +0 -0
  1280. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/inst_predicates.rs +0 -0
  1281. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/inst_specs.isle +0 -0
  1282. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/atomic_rmw_op.rs +0 -0
  1283. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/builder.rs +0 -0
  1284. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/condcodes.rs +0 -0
  1285. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/constant.rs +0 -0
  1286. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/dynamic_type.rs +0 -0
  1287. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/entities.rs +0 -0
  1288. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/exception_table.rs +0 -0
  1289. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/extfunc.rs +0 -0
  1290. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/extname.rs +0 -0
  1291. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/function.rs +0 -0
  1292. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/globalvalue.rs +0 -0
  1293. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/immediates.rs +0 -0
  1294. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/instructions.rs +0 -0
  1295. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/jumptable.rs +0 -0
  1296. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/known_symbol.rs +0 -0
  1297. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/layout.rs +0 -0
  1298. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/libcall.rs +0 -0
  1299. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/memflags.rs +0 -0
  1300. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/memtype.rs +0 -0
  1301. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/mod.rs +0 -0
  1302. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/pcc.rs +0 -0
  1303. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/progpoint.rs +0 -0
  1304. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/sourceloc.rs +0 -0
  1305. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/stackslot.rs +0 -0
  1306. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/trapcode.rs +0 -0
  1307. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/types.rs +0 -0
  1308. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ir/user_stack_maps.rs +0 -0
  1309. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/abi.rs +0 -0
  1310. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/inst/args.rs +0 -0
  1311. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/inst/emit_tests.rs +0 -0
  1312. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/inst/imms.rs +0 -0
  1313. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/inst/regs.rs +0 -0
  1314. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/inst/unwind/systemv.rs +0 -0
  1315. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/inst/unwind.rs +0 -0
  1316. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/inst_neon.isle +0 -0
  1317. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/lower/isle/generated_code.rs +0 -0
  1318. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/lower.isle +0 -0
  1319. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/lower.rs +0 -0
  1320. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/lower_dynamic_neon.isle +0 -0
  1321. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/mod.rs +0 -0
  1322. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/pcc.rs +0 -0
  1323. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/aarch64/settings.rs +0 -0
  1324. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/call_conv.rs +0 -0
  1325. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/mod.rs +0 -0
  1326. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley32.rs +0 -0
  1327. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley64.rs +0 -0
  1328. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/abi.rs +0 -0
  1329. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/inst/args.rs +0 -0
  1330. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/inst/emit.rs +0 -0
  1331. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/inst/mod.rs +0 -0
  1332. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/inst/regs.rs +0 -0
  1333. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/inst.isle +0 -0
  1334. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/lower/isle/generated_code.rs +0 -0
  1335. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/lower/isle.rs +0 -0
  1336. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/lower.isle +0 -0
  1337. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/lower.rs +0 -0
  1338. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/mod.rs +0 -0
  1339. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/pulley_shared/settings.rs +0 -0
  1340. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/abi.rs +0 -0
  1341. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/args.rs +0 -0
  1342. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/emit.rs +0 -0
  1343. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/emit_tests.rs +0 -0
  1344. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/encode.rs +0 -0
  1345. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/imms.rs +0 -0
  1346. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/mod.rs +0 -0
  1347. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/regs.rs +0 -0
  1348. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/unwind/systemv.rs +0 -0
  1349. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/unwind.rs +0 -0
  1350. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst/vector.rs +0 -0
  1351. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst.isle +0 -0
  1352. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/inst_vector.isle +0 -0
  1353. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/lower/isle/generated_code.rs +0 -0
  1354. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/lower/isle.rs +0 -0
  1355. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/lower.isle +0 -0
  1356. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/lower.rs +0 -0
  1357. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/mod.rs +0 -0
  1358. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/riscv64/settings.rs +0 -0
  1359. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/abi.rs +0 -0
  1360. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/args.rs +0 -0
  1361. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/emit.rs +0 -0
  1362. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/emit_tests.rs +0 -0
  1363. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/imms.rs +0 -0
  1364. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/mod.rs +0 -0
  1365. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/regs.rs +0 -0
  1366. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/unwind/systemv.rs +0 -0
  1367. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst/unwind.rs +0 -0
  1368. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/inst.isle +0 -0
  1369. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/lower/isle/generated_code.rs +0 -0
  1370. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/lower/isle.rs +0 -0
  1371. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/lower.isle +0 -0
  1372. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/lower.rs +0 -0
  1373. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/mod.rs +0 -0
  1374. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/s390x/settings.rs +0 -0
  1375. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/unwind/systemv.rs +0 -0
  1376. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/unwind/winarm64.rs +0 -0
  1377. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/unwind/winx64.rs +0 -0
  1378. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/unwind.rs +0 -0
  1379. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/winch.rs +0 -0
  1380. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/abi.rs +0 -0
  1381. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/args.rs +0 -0
  1382. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/emit.rs +0 -0
  1383. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/emit_state.rs +0 -0
  1384. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/emit_tests.rs +0 -0
  1385. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/external.rs +0 -0
  1386. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/mod.rs +0 -0
  1387. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/regs.rs +0 -0
  1388. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/stack_switch.rs +0 -0
  1389. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/unwind/systemv.rs +0 -0
  1390. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/unwind/winx64.rs +0 -0
  1391. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/inst/unwind.rs +0 -0
  1392. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/lower/isle/generated_code.rs +0 -0
  1393. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/lower/isle.rs +0 -0
  1394. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/lower.rs +0 -0
  1395. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/mod.rs +0 -0
  1396. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/pcc.rs +0 -0
  1397. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isa/x64/settings.rs +0 -0
  1398. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/isle_prelude.rs +0 -0
  1399. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/legalizer/branch_to_trap.rs +0 -0
  1400. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/legalizer/globalvalue.rs +0 -0
  1401. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/legalizer/mod.rs +0 -0
  1402. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/loop_analysis.rs +0 -0
  1403. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/abi.rs +0 -0
  1404. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/blockorder.rs +0 -0
  1405. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/buffer.rs +0 -0
  1406. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/compile.rs +0 -0
  1407. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/helpers.rs +0 -0
  1408. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/inst_common.rs +0 -0
  1409. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/isle.rs +0 -0
  1410. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/lower.rs +0 -0
  1411. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/mod.rs +0 -0
  1412. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/pcc.rs +0 -0
  1413. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/reg.rs +0 -0
  1414. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/valueregs.rs +0 -0
  1415. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/machinst/vcode.rs +0 -0
  1416. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/nan_canonicalization.rs +0 -0
  1417. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/README.md +0 -0
  1418. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/arithmetic.isle +0 -0
  1419. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/bitops.isle +0 -0
  1420. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/cprop.isle +0 -0
  1421. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/div_const.rs +0 -0
  1422. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/extends.isle +0 -0
  1423. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/generated_code.rs +0 -0
  1424. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/remat.isle +0 -0
  1425. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/selects.isle +0 -0
  1426. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/shifts.isle +0 -0
  1427. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/skeleton.isle +0 -0
  1428. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/spaceship.isle +0 -0
  1429. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/spectre.isle +0 -0
  1430. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts/vector.isle +0 -0
  1431. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/opts.rs +0 -0
  1432. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/prelude.isle +0 -0
  1433. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/prelude_lower.isle +0 -0
  1434. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/prelude_opt.isle +0 -0
  1435. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/print_errors.rs +0 -0
  1436. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/ranges.rs +0 -0
  1437. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/remove_constant_phis.rs +0 -0
  1438. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/result.rs +0 -0
  1439. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/scoped_hash_map.rs +0 -0
  1440. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/settings.rs +0 -0
  1441. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/souper_harvest.rs +0 -0
  1442. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/take_and_replace.rs +0 -0
  1443. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/traversals.rs +0 -0
  1444. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/unreachable_code.rs +0 -0
  1445. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/value_label.rs +0 -0
  1446. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/verifier/mod.rs +0 -0
  1447. /data/ext/cargo-vendor/{cranelift-codegen-0.123.0 → cranelift-codegen-0.123.19}/src/write.rs +0 -0
  1448. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/LICENSE +0 -0
  1449. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/README.md +0 -0
  1450. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/formats.rs +0 -0
  1451. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/instructions.rs +0 -0
  1452. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/isa.rs +0 -0
  1453. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/mod.rs +0 -0
  1454. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/operands.rs +0 -0
  1455. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/settings.rs +0 -0
  1456. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/types.rs +0 -0
  1457. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/cdsl/typevar.rs +0 -0
  1458. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/constant_hash.rs +0 -0
  1459. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/gen_asm.rs +0 -0
  1460. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/gen_inst.rs +0 -0
  1461. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/gen_isle.rs +0 -0
  1462. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/gen_settings.rs +0 -0
  1463. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/gen_types.rs +0 -0
  1464. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/isa/arm64.rs +0 -0
  1465. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/isa/mod.rs +0 -0
  1466. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/isa/pulley.rs +0 -0
  1467. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/isa/riscv64.rs +0 -0
  1468. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/isa/s390x.rs +0 -0
  1469. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/isa/x86.rs +0 -0
  1470. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/isle.rs +0 -0
  1471. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/lib.rs +0 -0
  1472. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/pulley.rs +0 -0
  1473. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/shared/entities.rs +0 -0
  1474. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/shared/formats.rs +0 -0
  1475. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/shared/immediates.rs +0 -0
  1476. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/shared/instructions.rs +0 -0
  1477. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/shared/mod.rs +0 -0
  1478. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/shared/settings.rs +0 -0
  1479. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/shared/types.rs +0 -0
  1480. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.123.0 → cranelift-codegen-meta-0.123.19}/src/unique_table.rs +0 -0
  1481. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.123.2 → cranelift-codegen-shared-0.123.19}/LICENSE +0 -0
  1482. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.123.2 → cranelift-codegen-shared-0.123.19}/README.md +0 -0
  1483. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.123.2 → cranelift-codegen-shared-0.123.19}/src/constant_hash.rs +0 -0
  1484. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.123.2 → cranelift-codegen-shared-0.123.19}/src/constants.rs +0 -0
  1485. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.123.2 → cranelift-codegen-shared-0.123.19}/src/lib.rs +0 -0
  1486. /data/ext/cargo-vendor/{cranelift-control-0.123.2 → cranelift-control-0.123.19}/LICENSE +0 -0
  1487. /data/ext/cargo-vendor/{cranelift-control-0.123.2 → cranelift-control-0.123.19}/README.md +0 -0
  1488. /data/ext/cargo-vendor/{cranelift-control-0.123.2 → cranelift-control-0.123.19}/src/chaos.rs +0 -0
  1489. /data/ext/cargo-vendor/{cranelift-control-0.123.2 → cranelift-control-0.123.19}/src/lib.rs +0 -0
  1490. /data/ext/cargo-vendor/{cranelift-control-0.123.2 → cranelift-control-0.123.19}/src/zero_sized.rs +0 -0
  1491. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/LICENSE +0 -0
  1492. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/README.md +0 -0
  1493. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/boxed_slice.rs +0 -0
  1494. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/iter.rs +0 -0
  1495. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/keys.rs +0 -0
  1496. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/lib.rs +0 -0
  1497. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/list.rs +0 -0
  1498. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/map.rs +0 -0
  1499. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/packed_option.rs +0 -0
  1500. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/primary.rs +0 -0
  1501. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/set.rs +0 -0
  1502. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/signed.rs +0 -0
  1503. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/sparse.rs +0 -0
  1504. /data/ext/cargo-vendor/{cranelift-entity-0.123.2 → cranelift-entity-0.123.19}/src/unsigned.rs +0 -0
  1505. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/LICENSE +0 -0
  1506. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/README.md +0 -0
  1507. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/src/frontend/safepoints.rs +0 -0
  1508. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/src/frontend.rs +0 -0
  1509. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/src/lib.rs +0 -0
  1510. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/src/ssa.rs +0 -0
  1511. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/src/switch.rs +0 -0
  1512. /data/ext/cargo-vendor/{cranelift-frontend-0.123.0 → cranelift-frontend-0.123.19}/src/variable.rs +0 -0
  1513. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/README.md +0 -0
  1514. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/build.rs +0 -0
  1515. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/bad_converters.isle +0 -0
  1516. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/bound_var_type_mismatch.isle +0 -0
  1517. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/converter_extractor_constructor.isle +0 -0
  1518. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/error1.isle +0 -0
  1519. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/extra_parens.isle +0 -0
  1520. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/impure_expression.isle +0 -0
  1521. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/impure_rhs.isle +0 -0
  1522. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/multi_internal_etor.isle +0 -0
  1523. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/fail/multi_prio.isle +0 -0
  1524. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/borrows.isle +0 -0
  1525. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/borrows_main.rs +0 -0
  1526. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/iflets.isle +0 -0
  1527. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/iflets_main.rs +0 -0
  1528. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/multi_constructor.isle +0 -0
  1529. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/multi_constructor_main.rs +0 -0
  1530. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/multi_extractor.isle +0 -0
  1531. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/multi_extractor_main.rs +0 -0
  1532. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/test.isle +0 -0
  1533. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/link/test_main.rs +0 -0
  1534. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/bound_var.isle +0 -0
  1535. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/construct_and_extract.isle +0 -0
  1536. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/conversions.isle +0 -0
  1537. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/conversions_extern.isle +0 -0
  1538. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/let.isle +0 -0
  1539. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/nodebug.isle +0 -0
  1540. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/prio_trie_bug.isle +0 -0
  1541. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/test2.isle +0 -0
  1542. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/test3.isle +0 -0
  1543. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/test4.isle +0 -0
  1544. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/tutorial.isle +0 -0
  1545. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/pass/veri_spec.isle +0 -0
  1546. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/run/iconst.isle +0 -0
  1547. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/run/iconst_main.rs +0 -0
  1548. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/run/let_shadowing.isle +0 -0
  1549. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/isle_examples/run/let_shadowing_main.rs +0 -0
  1550. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/ast.rs +0 -0
  1551. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/codegen.rs +0 -0
  1552. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/compile.rs +0 -0
  1553. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/disjointsets.rs +0 -0
  1554. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/error.rs +0 -0
  1555. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/files.rs +0 -0
  1556. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/lexer.rs +0 -0
  1557. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/lib.rs +0 -0
  1558. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/log.rs +0 -0
  1559. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/overlap.rs +0 -0
  1560. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/parser.rs +0 -0
  1561. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/printer.rs +0 -0
  1562. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/sema.rs +0 -0
  1563. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/serialize.rs +0 -0
  1564. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/stablemapset.rs +0 -0
  1565. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/src/trie_again.rs +0 -0
  1566. /data/ext/cargo-vendor/{cranelift-isle-0.123.0 → cranelift-isle-0.123.19}/tests/run_tests.rs +0 -0
  1567. /data/ext/cargo-vendor/{cranelift-native-0.123.0 → cranelift-native-0.123.19}/LICENSE +0 -0
  1568. /data/ext/cargo-vendor/{cranelift-native-0.123.0 → cranelift-native-0.123.19}/README.md +0 -0
  1569. /data/ext/cargo-vendor/{cranelift-native-0.123.0 → cranelift-native-0.123.19}/src/lib.rs +0 -0
  1570. /data/ext/cargo-vendor/{cranelift-native-0.123.0 → cranelift-native-0.123.19}/src/riscv.rs +0 -0
  1571. /data/ext/cargo-vendor/{cranelift-srcgen-0.123.2 → cranelift-srcgen-0.123.19}/src/error.rs +0 -0
  1572. /data/ext/cargo-vendor/{cranelift-srcgen-0.123.2 → cranelift-srcgen-0.123.19}/src/lib.rs +0 -0
  1573. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/CONTRIBUTING.md +0 -0
  1574. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/Cargo.toml.orig +0 -0
  1575. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/README.md +0 -0
  1576. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/examples/profiler-html.rs +0 -0
  1577. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/decode.rs +0 -0
  1578. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/disas.rs +0 -0
  1579. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/encode.rs +0 -0
  1580. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/imms.rs +0 -0
  1581. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/interp/debug.rs +0 -0
  1582. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/interp/match_loop.rs +0 -0
  1583. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/interp/tail_loop.rs +0 -0
  1584. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/interp.rs +0 -0
  1585. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/op.rs +0 -0
  1586. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/opcode.rs +0 -0
  1587. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/profile.rs +0 -0
  1588. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/profile_disabled.rs +0 -0
  1589. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/src/regs.rs +0 -0
  1590. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/tests/all/disas.rs +0 -0
  1591. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/tests/all/interp.rs +0 -0
  1592. /data/ext/cargo-vendor/{pulley-interpreter-36.0.0 → pulley-interpreter-36.0.19}/tests/all/main.rs +0 -0
  1593. /data/ext/cargo-vendor/{pulley-macros-36.0.0 → pulley-macros-36.0.19}/Cargo.toml.orig +0 -0
  1594. /data/ext/cargo-vendor/{pulley-macros-36.0.0 → pulley-macros-36.0.19}/src/interp_disable_if_cfg.rs +0 -0
  1595. /data/ext/cargo-vendor/{pulley-macros-36.0.0 → pulley-macros-36.0.19}/src/lib.rs +0 -0
  1596. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/LICENSE +0 -0
  1597. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/README.md +0 -0
  1598. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/build.rs +0 -0
  1599. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/proptest-regressions/runtime/vm/instance/allocator/pooling/memory_pool.txt +0 -0
  1600. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/compile/call_graph.rs +0 -0
  1601. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/compile/code_builder.rs +0 -0
  1602. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/compile/runtime.rs +0 -0
  1603. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/compile/scc.rs +0 -0
  1604. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/compile/stratify.rs +0 -0
  1605. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/compile.rs +0 -0
  1606. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/config.rs +0 -0
  1607. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/engine/serialization.rs +0 -0
  1608. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/engine.rs +0 -0
  1609. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/profiling_agent/jitdump.rs +0 -0
  1610. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/profiling_agent/perfmap.rs +0 -0
  1611. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/profiling_agent/pulley.rs +0 -0
  1612. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/profiling_agent/vtune.rs +0 -0
  1613. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/profiling_agent.rs +0 -0
  1614. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/code.rs +0 -0
  1615. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/code_memory.rs +0 -0
  1616. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_0_hello_world.rs +0 -0
  1617. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_1_world_imports.rs +0 -0
  1618. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_2_world_exports.rs +0 -0
  1619. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_3_interface_imports.rs +0 -0
  1620. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_4_imported_resources.rs +0 -0
  1621. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_5_all_world_export_kinds.rs +0 -0
  1622. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_6_exported_resources.rs +0 -0
  1623. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/_7_async.rs +0 -0
  1624. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/bindgen_examples/mod.rs +0 -0
  1625. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/component.rs +0 -0
  1626. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent/abort.rs +0 -0
  1627. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent/error_contexts.rs +0 -0
  1628. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent/futures_and_streams/buffers.rs +0 -0
  1629. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent/futures_and_streams.rs +0 -0
  1630. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent/states.rs +0 -0
  1631. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent/table.rs +0 -0
  1632. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent/tls.rs +0 -0
  1633. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/concurrent_disabled.rs +0 -0
  1634. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/func/host.rs +0 -0
  1635. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/has_data.rs +0 -0
  1636. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/matching.rs +0 -0
  1637. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/mod.rs +0 -0
  1638. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/storage.rs +0 -0
  1639. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/component/types.rs +0 -0
  1640. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/debug.rs +0 -0
  1641. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/externals.rs +0 -0
  1642. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/fiber.rs +0 -0
  1643. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/func/typed.rs +0 -0
  1644. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/anyref.rs +0 -0
  1645. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/arrayref.rs +0 -0
  1646. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/eqref.rs +0 -0
  1647. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/exnref.rs +0 -0
  1648. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/externref.rs +0 -0
  1649. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/i31.rs +0 -0
  1650. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/rooting.rs +0 -0
  1651. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled/structref.rs +0 -0
  1652. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/disabled.rs +0 -0
  1653. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/enabled/anyref.rs +0 -0
  1654. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/enabled/eqref.rs +0 -0
  1655. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/enabled/externref.rs +0 -0
  1656. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/enabled/i31.rs +0 -0
  1657. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/enabled/rooting.rs +0 -0
  1658. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/enabled.rs +0 -0
  1659. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/noextern.rs +0 -0
  1660. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc/none_ref.rs +0 -0
  1661. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/gc.rs +0 -0
  1662. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/instantiate.rs +0 -0
  1663. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/limits.rs +0 -0
  1664. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/module.rs +0 -0
  1665. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/profiling.rs +0 -0
  1666. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/resources.rs +0 -0
  1667. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/stack.rs +0 -0
  1668. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/store/async_.rs +0 -0
  1669. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/store/context.rs +0 -0
  1670. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/store/data.rs +0 -0
  1671. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/store/func_refs.rs +0 -0
  1672. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/store/gc.rs +0 -0
  1673. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/store/token.rs +0 -0
  1674. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/trampoline/func.rs +0 -0
  1675. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/trampoline/global.rs +0 -0
  1676. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/trampoline/memory.rs +0 -0
  1677. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/trampoline.rs +0 -0
  1678. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/trap.rs +0 -0
  1679. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/type_registry.rs +0 -0
  1680. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/types/matching.rs +0 -0
  1681. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/types.rs +0 -0
  1682. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/uninhabited.rs +0 -0
  1683. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/unix.rs +0 -0
  1684. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/v128.rs +0 -0
  1685. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/values.rs +0 -0
  1686. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/async_yield.rs +0 -0
  1687. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/byte_count.rs +0 -0
  1688. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/component/libcalls.rs +0 -0
  1689. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/const_expr.rs +0 -0
  1690. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/cow_disabled.rs +0 -0
  1691. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/debug_builtins.rs +0 -0
  1692. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/export.rs +0 -0
  1693. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/disabled.rs +0 -0
  1694. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/arrayref.rs +0 -0
  1695. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/data.rs +0 -0
  1696. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/drc.rs +0 -0
  1697. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/exnref.rs +0 -0
  1698. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/externref.rs +0 -0
  1699. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/free_list.rs +0 -0
  1700. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/null.rs +0 -0
  1701. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled/structref.rs +0 -0
  1702. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/enabled.rs +0 -0
  1703. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/func_ref.rs +0 -0
  1704. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/gc_ref.rs +0 -0
  1705. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/gc_runtime.rs +0 -0
  1706. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/host_data.rs +0 -0
  1707. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc/i31.rs +0 -0
  1708. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/gc.rs +0 -0
  1709. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/helpers.c +0 -0
  1710. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/imports.rs +0 -0
  1711. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/on_demand.rs +0 -0
  1712. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/pooling/decommit_queue.rs +0 -0
  1713. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/pooling/gc_heap_pool.rs +0 -0
  1714. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/pooling/generic_stack_pool.rs +0 -0
  1715. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/pooling/index_allocator.rs +0 -0
  1716. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/pooling/table_pool.rs +0 -0
  1717. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/pooling/unix_stack_pool.rs +0 -0
  1718. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator/pooling.rs +0 -0
  1719. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance/allocator.rs +0 -0
  1720. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/instance.rs +0 -0
  1721. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/interpreter.rs +0 -0
  1722. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/interpreter_disabled.rs +0 -0
  1723. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/libcalls.rs +0 -0
  1724. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/memory/malloc.rs +0 -0
  1725. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/memory/mmap.rs +0 -0
  1726. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/memory/shared_memory.rs +0 -0
  1727. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/memory/shared_memory_disabled.rs +0 -0
  1728. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/memory/static_.rs +0 -0
  1729. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/mmap.rs +0 -0
  1730. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/mmap_vec.rs +0 -0
  1731. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/module_id.rs +0 -0
  1732. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/mpk/disabled.rs +0 -0
  1733. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/mpk/enabled.rs +0 -0
  1734. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/mpk/mod.rs +0 -0
  1735. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/mpk/pkru.rs +0 -0
  1736. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/mpk/sys.rs +0 -0
  1737. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/parking_spot.rs +0 -0
  1738. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/provenance.rs +0 -0
  1739. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/send_sync_ptr.rs +0 -0
  1740. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/send_sync_unsafe_cell.rs +0 -0
  1741. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/stack_switching/stack/dummy.rs +0 -0
  1742. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/stack_switching/stack/unix/x86_64.rs +0 -0
  1743. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/stack_switching/stack/unix.rs +0 -0
  1744. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/stack_switching/stack.rs +0 -0
  1745. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/stack_switching.rs +0 -0
  1746. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/store_box.rs +0 -0
  1747. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/custom/capi.rs +0 -0
  1748. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/custom/mmap.rs +0 -0
  1749. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/custom/mod.rs +0 -0
  1750. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/custom/traphandlers.rs +0 -0
  1751. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/custom/unwind.rs +0 -0
  1752. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/custom/vm.rs +0 -0
  1753. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/miri/mmap.rs +0 -0
  1754. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/miri/mod.rs +0 -0
  1755. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/miri/traphandlers.rs +0 -0
  1756. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/miri/unwind.rs +0 -0
  1757. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/miri/vm.rs +0 -0
  1758. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/mod.rs +0 -0
  1759. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/unix/machports.rs +0 -0
  1760. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/unix/mmap.rs +0 -0
  1761. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/unix/mod.rs +0 -0
  1762. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/unix/signals.rs +0 -0
  1763. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/unix/traphandlers.rs +0 -0
  1764. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/unix/unwind.rs +0 -0
  1765. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/unix/vm.rs +0 -0
  1766. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/windows/mmap.rs +0 -0
  1767. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/windows/mod.rs +0 -0
  1768. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/windows/traphandlers.rs +0 -0
  1769. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/windows/unwind64.rs +0 -0
  1770. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/windows/vectored_exceptions.rs +0 -0
  1771. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/sys/windows/vm.rs +0 -0
  1772. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/traphandlers/backtrace.rs +0 -0
  1773. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/traphandlers/coredump_disabled.rs +0 -0
  1774. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/traphandlers/coredump_enabled.rs +0 -0
  1775. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/traphandlers/signals.rs +0 -0
  1776. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/traphandlers.rs +0 -0
  1777. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/vmcontext/vm_host_func_context.rs +0 -0
  1778. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/vm/vmcontext.rs +0 -0
  1779. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/wave/component.rs +0 -0
  1780. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/wave/core.rs +0 -0
  1781. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/wave.rs +0 -0
  1782. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime/windows.rs +0 -0
  1783. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/runtime.rs +0 -0
  1784. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/sync_nostd.rs +0 -0
  1785. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/src/sync_std.rs +0 -0
  1786. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/tests/custom_signal_handler.rs +0 -0
  1787. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/tests/host_segfault.rs +0 -0
  1788. /data/ext/cargo-vendor/{wasmtime-36.0.0 → wasmtime-36.0.19}/tests/unload-engine.rs +0 -0
  1789. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/Cargo.toml.orig +0 -0
  1790. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/LICENSE +0 -0
  1791. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/examples/factc.rs +0 -0
  1792. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/address_map.rs +0 -0
  1793. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/builtin.rs +0 -0
  1794. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/compile/address_map.rs +0 -0
  1795. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/compile/mod.rs +0 -0
  1796. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/compile/module_artifacts.rs +0 -0
  1797. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/compile/module_environ.rs +0 -0
  1798. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/compile/module_types.rs +0 -0
  1799. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/compile/stack_maps.rs +0 -0
  1800. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/compile/trap_encoding.rs +0 -0
  1801. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/artifacts.rs +0 -0
  1802. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/compiler.rs +0 -0
  1803. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/dfg.rs +0 -0
  1804. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/info.rs +0 -0
  1805. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/names.rs +0 -0
  1806. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/translate/adapt.rs +0 -0
  1807. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/translate/inline.rs +0 -0
  1808. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/translate.rs +0 -0
  1809. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/types.rs +0 -0
  1810. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/types_builder/resources.rs +0 -0
  1811. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/types_builder.rs +0 -0
  1812. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component/vmcomponent_offsets.rs +0 -0
  1813. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/component.rs +0 -0
  1814. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/demangling.rs +0 -0
  1815. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/error.rs +0 -0
  1816. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/ext.rs +0 -0
  1817. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/fact/core_types.rs +0 -0
  1818. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/fact/signature.rs +0 -0
  1819. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/fact/transcode.rs +0 -0
  1820. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/fact/traps.rs +0 -0
  1821. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/fact.rs +0 -0
  1822. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/gc/drc.rs +0 -0
  1823. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/gc/null.rs +0 -0
  1824. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/gc.rs +0 -0
  1825. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/hostcall.rs +0 -0
  1826. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/lib.rs +0 -0
  1827. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/module.rs +0 -0
  1828. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/module_artifacts.rs +0 -0
  1829. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/module_types.rs +0 -0
  1830. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/obj.rs +0 -0
  1831. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/prelude.rs +0 -0
  1832. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/ref_bits.rs +0 -0
  1833. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/scopevec.rs +0 -0
  1834. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/stack_map.rs +0 -0
  1835. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/stack_switching.rs +0 -0
  1836. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/trap_encoding.rs +0 -0
  1837. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/tunables.rs +0 -0
  1838. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/types.rs +0 -0
  1839. /data/ext/cargo-vendor/{wasmtime-environ-36.0.0 → wasmtime-environ-36.0.19}/src/vmoffsets.rs +0 -0
  1840. /data/ext/cargo-vendor/{wasmtime-internal-asm-macros-36.0.0 → wasmtime-internal-asm-macros-36.0.19}/Cargo.toml.orig +0 -0
  1841. /data/ext/cargo-vendor/{wasmtime-internal-asm-macros-36.0.0 → wasmtime-internal-asm-macros-36.0.19}/src/lib.rs +0 -0
  1842. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/Cargo.toml.orig +0 -0
  1843. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/LICENSE +0 -0
  1844. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/build.rs +0 -0
  1845. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/src/config/tests.rs +0 -0
  1846. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/src/config.rs +0 -0
  1847. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/src/lib.rs +0 -0
  1848. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/src/tests.rs +0 -0
  1849. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/src/worker/tests/system_time_stub.rs +0 -0
  1850. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/src/worker/tests.rs +0 -0
  1851. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/src/worker.rs +0 -0
  1852. /data/ext/cargo-vendor/{wasmtime-internal-cache-36.0.0 → wasmtime-internal-cache-36.0.19}/tests/cache_write_default_config.rs +0 -0
  1853. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/Cargo.toml.orig +0 -0
  1854. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/build.rs +0 -0
  1855. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/src/bindgen.rs +0 -0
  1856. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/src/component.rs +0 -0
  1857. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/src/lib.rs +0 -0
  1858. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/char.wit +0 -0
  1859. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/conventions.wit +0 -0
  1860. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/dead-code.wit +0 -0
  1861. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/direct-import.wit +0 -0
  1862. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/empty.wit +0 -0
  1863. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/flags.wit +0 -0
  1864. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/floats.wit +0 -0
  1865. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/function-new.wit +0 -0
  1866. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/host-world.wit +0 -0
  1867. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/integers.wit +0 -0
  1868. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/lists.wit +0 -0
  1869. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/many-arguments.wit +0 -0
  1870. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/multiversion/deps/v1/root.wit +0 -0
  1871. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/multiversion/deps/v2/root.wit +0 -0
  1872. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/multiversion/root.wit +0 -0
  1873. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/path1/world.wit +0 -0
  1874. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/path2/world.wit +0 -0
  1875. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/records.wit +0 -0
  1876. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/rename.wit +0 -0
  1877. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/resources-export.wit +0 -0
  1878. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/resources-import.wit +0 -0
  1879. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/share-types.wit +0 -0
  1880. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/simple-functions.wit +0 -0
  1881. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/simple-lists.wit +0 -0
  1882. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/simple-wasi.wit +0 -0
  1883. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/small-anonymous.wit +0 -0
  1884. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/smoke-default.wit +0 -0
  1885. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/smoke-export.wit +0 -0
  1886. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/smoke.wit +0 -0
  1887. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/strings.wit +0 -0
  1888. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/unstable-features.wit +0 -0
  1889. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/unversioned-foo.wit +0 -0
  1890. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/use-paths.wit +0 -0
  1891. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/variants.wit +0 -0
  1892. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/wat.wit +0 -0
  1893. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen/worlds-with-types.wit +0 -0
  1894. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen.rs +0 -0
  1895. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/codegen_no_std.rs +0 -0
  1896. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/char.rs +0 -0
  1897. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/char_async.rs +0 -0
  1898. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/char_concurrent.rs +0 -0
  1899. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/char_tracing_async.rs +0 -0
  1900. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/conventions.rs +0 -0
  1901. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/conventions_async.rs +0 -0
  1902. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/conventions_concurrent.rs +0 -0
  1903. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/conventions_tracing_async.rs +0 -0
  1904. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/dead-code.rs +0 -0
  1905. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/dead-code_async.rs +0 -0
  1906. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/dead-code_concurrent.rs +0 -0
  1907. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/dead-code_tracing_async.rs +0 -0
  1908. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/direct-import.rs +0 -0
  1909. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/direct-import_async.rs +0 -0
  1910. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/direct-import_concurrent.rs +0 -0
  1911. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/direct-import_tracing_async.rs +0 -0
  1912. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/empty.rs +0 -0
  1913. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/empty_async.rs +0 -0
  1914. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/empty_concurrent.rs +0 -0
  1915. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/empty_tracing_async.rs +0 -0
  1916. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/flags.rs +0 -0
  1917. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/flags_async.rs +0 -0
  1918. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/flags_concurrent.rs +0 -0
  1919. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/flags_tracing_async.rs +0 -0
  1920. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/floats.rs +0 -0
  1921. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/floats_async.rs +0 -0
  1922. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/floats_concurrent.rs +0 -0
  1923. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/floats_tracing_async.rs +0 -0
  1924. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/function-new.rs +0 -0
  1925. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/function-new_async.rs +0 -0
  1926. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/function-new_concurrent.rs +0 -0
  1927. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/function-new_tracing_async.rs +0 -0
  1928. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/host-world.rs +0 -0
  1929. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/host-world_async.rs +0 -0
  1930. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/host-world_concurrent.rs +0 -0
  1931. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/host-world_tracing_async.rs +0 -0
  1932. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/integers.rs +0 -0
  1933. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/integers_async.rs +0 -0
  1934. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/integers_concurrent.rs +0 -0
  1935. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/integers_tracing_async.rs +0 -0
  1936. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/lists.rs +0 -0
  1937. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/lists_async.rs +0 -0
  1938. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/lists_concurrent.rs +0 -0
  1939. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/lists_tracing_async.rs +0 -0
  1940. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/many-arguments.rs +0 -0
  1941. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/many-arguments_async.rs +0 -0
  1942. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/many-arguments_concurrent.rs +0 -0
  1943. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/many-arguments_tracing_async.rs +0 -0
  1944. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/multi-return.rs +0 -0
  1945. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/multiversion.rs +0 -0
  1946. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/multiversion_async.rs +0 -0
  1947. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/multiversion_concurrent.rs +0 -0
  1948. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/multiversion_tracing_async.rs +0 -0
  1949. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path1.rs +0 -0
  1950. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path1_async.rs +0 -0
  1951. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path1_concurrent.rs +0 -0
  1952. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path1_tracing_async.rs +0 -0
  1953. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path2.rs +0 -0
  1954. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path2_async.rs +0 -0
  1955. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path2_concurrent.rs +0 -0
  1956. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/path2_tracing_async.rs +0 -0
  1957. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/records.rs +0 -0
  1958. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/records_async.rs +0 -0
  1959. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/records_concurrent.rs +0 -0
  1960. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/records_tracing_async.rs +0 -0
  1961. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/rename.rs +0 -0
  1962. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/rename_async.rs +0 -0
  1963. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/rename_concurrent.rs +0 -0
  1964. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/rename_tracing_async.rs +0 -0
  1965. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/resources-export.rs +0 -0
  1966. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/resources-export_async.rs +0 -0
  1967. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/resources-export_tracing_async.rs +0 -0
  1968. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/resources-import.rs +0 -0
  1969. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/resources-import_async.rs +0 -0
  1970. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/resources-import_tracing_async.rs +0 -0
  1971. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/share-types.rs +0 -0
  1972. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/share-types_async.rs +0 -0
  1973. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/share-types_concurrent.rs +0 -0
  1974. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/share-types_tracing_async.rs +0 -0
  1975. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-functions.rs +0 -0
  1976. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-functions_async.rs +0 -0
  1977. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-functions_concurrent.rs +0 -0
  1978. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-functions_tracing_async.rs +0 -0
  1979. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-lists.rs +0 -0
  1980. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-lists_async.rs +0 -0
  1981. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-lists_concurrent.rs +0 -0
  1982. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-lists_tracing_async.rs +0 -0
  1983. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-wasi.rs +0 -0
  1984. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-wasi_async.rs +0 -0
  1985. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-wasi_concurrent.rs +0 -0
  1986. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/simple-wasi_tracing_async.rs +0 -0
  1987. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/small-anonymous.rs +0 -0
  1988. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/small-anonymous_async.rs +0 -0
  1989. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/small-anonymous_concurrent.rs +0 -0
  1990. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/small-anonymous_tracing_async.rs +0 -0
  1991. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-default.rs +0 -0
  1992. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-default_async.rs +0 -0
  1993. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-default_concurrent.rs +0 -0
  1994. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-default_tracing_async.rs +0 -0
  1995. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-export.rs +0 -0
  1996. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-export_async.rs +0 -0
  1997. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-export_concurrent.rs +0 -0
  1998. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke-export_tracing_async.rs +0 -0
  1999. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke.rs +0 -0
  2000. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke_async.rs +0 -0
  2001. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke_concurrent.rs +0 -0
  2002. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/smoke_tracing_async.rs +0 -0
  2003. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/strings.rs +0 -0
  2004. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/strings_async.rs +0 -0
  2005. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/strings_concurrent.rs +0 -0
  2006. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/strings_tracing_async.rs +0 -0
  2007. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/unstable-features.rs +0 -0
  2008. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/unstable-features_async.rs +0 -0
  2009. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/unstable-features_tracing_async.rs +0 -0
  2010. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/unversioned-foo.rs +0 -0
  2011. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/unversioned-foo_async.rs +0 -0
  2012. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/unversioned-foo_concurrent.rs +0 -0
  2013. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/unversioned-foo_tracing_async.rs +0 -0
  2014. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/use-paths.rs +0 -0
  2015. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/use-paths_async.rs +0 -0
  2016. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/use-paths_concurrent.rs +0 -0
  2017. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/use-paths_tracing_async.rs +0 -0
  2018. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/variants.rs +0 -0
  2019. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/variants_async.rs +0 -0
  2020. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/variants_concurrent.rs +0 -0
  2021. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/variants_tracing_async.rs +0 -0
  2022. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/wat.rs +0 -0
  2023. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/wat_async.rs +0 -0
  2024. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/wat_concurrent.rs +0 -0
  2025. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/wat_tracing_async.rs +0 -0
  2026. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/worlds-with-types.rs +0 -0
  2027. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/worlds-with-types_async.rs +0 -0
  2028. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/worlds-with-types_concurrent.rs +0 -0
  2029. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded/worlds-with-types_tracing_async.rs +0 -0
  2030. /data/ext/cargo-vendor/{wasmtime-internal-component-macro-36.0.0 → wasmtime-internal-component-macro-36.0.19}/tests/expanded.rs +0 -0
  2031. /data/ext/cargo-vendor/{wasmtime-internal-component-util-36.0.0 → wasmtime-internal-component-util-36.0.19}/Cargo.toml.orig +0 -0
  2032. /data/ext/cargo-vendor/{wasmtime-internal-component-util-36.0.0 → wasmtime-internal-component-util-36.0.19}/src/lib.rs +0 -0
  2033. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/Cargo.toml.orig +0 -0
  2034. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/LICENSE +0 -0
  2035. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/SECURITY.md +0 -0
  2036. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/bounds_checks.rs +0 -0
  2037. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/builder.rs +0 -0
  2038. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/compiled_function.rs +0 -0
  2039. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/compiler/component.rs +0 -0
  2040. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/compiler.rs +0 -0
  2041. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/gc.rs +0 -0
  2042. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/address_transform.rs +0 -0
  2043. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/attr.rs +0 -0
  2044. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/debug_transform_logging.rs +0 -0
  2045. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/expression.rs +0 -0
  2046. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/line_program.rs +0 -0
  2047. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/mod.rs +0 -0
  2048. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/range_info_builder.rs +0 -0
  2049. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/refs.rs +0 -0
  2050. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/simulate.rs +0 -0
  2051. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/synthetic.rs +0 -0
  2052. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/unit.rs +0 -0
  2053. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/transform/utils.rs +0 -0
  2054. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug/write_debuginfo.rs +0 -0
  2055. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/debug.rs +0 -0
  2056. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/func_environ/gc/disabled.rs +0 -0
  2057. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/func_environ/gc/enabled/drc.rs +0 -0
  2058. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/func_environ/gc/enabled/null.rs +0 -0
  2059. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/func_environ/gc/enabled.rs +0 -0
  2060. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/func_environ/gc.rs +0 -0
  2061. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/func_environ.rs +0 -0
  2062. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/isa_builder.rs +0 -0
  2063. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/obj.rs +0 -0
  2064. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/environ/mod.rs +0 -0
  2065. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/environ/spec.rs +0 -0
  2066. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/func_translator.rs +0 -0
  2067. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/heap.rs +0 -0
  2068. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/mod.rs +0 -0
  2069. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/stack.rs +0 -0
  2070. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/table.rs +0 -0
  2071. /data/ext/cargo-vendor/{wasmtime-internal-cranelift-36.0.0 → wasmtime-internal-cranelift-36.0.19}/src/translate/translation_utils.rs +0 -0
  2072. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/Cargo.toml.orig +0 -0
  2073. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/LICENSE +0 -0
  2074. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/build.rs +0 -0
  2075. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/lib.rs +0 -0
  2076. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/miri.rs +0 -0
  2077. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/nostd.rs +0 -0
  2078. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/stackswitch/aarch64.rs +0 -0
  2079. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/stackswitch/arm.rs +0 -0
  2080. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/stackswitch/riscv64.rs +0 -0
  2081. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/stackswitch/s390x.S +0 -0
  2082. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/stackswitch/x86.rs +0 -0
  2083. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/stackswitch/x86_64.rs +0 -0
  2084. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/stackswitch.rs +0 -0
  2085. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/unix.rs +0 -0
  2086. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/windows.c +0 -0
  2087. /data/ext/cargo-vendor/{wasmtime-internal-fiber-36.0.0 → wasmtime-internal-fiber-36.0.19}/src/windows.rs +0 -0
  2088. /data/ext/cargo-vendor/{wasmtime-internal-jit-debug-36.0.0 → wasmtime-internal-jit-debug-36.0.19}/Cargo.toml.orig +0 -0
  2089. /data/ext/cargo-vendor/{wasmtime-internal-jit-debug-36.0.0 → wasmtime-internal-jit-debug-36.0.19}/README.md +0 -0
  2090. /data/ext/cargo-vendor/{wasmtime-internal-jit-debug-36.0.0 → wasmtime-internal-jit-debug-36.0.19}/build.rs +0 -0
  2091. /data/ext/cargo-vendor/{wasmtime-internal-jit-debug-36.0.0 → wasmtime-internal-jit-debug-36.0.19}/gdbjit.c +0 -0
  2092. /data/ext/cargo-vendor/{wasmtime-internal-jit-debug-36.0.0 → wasmtime-internal-jit-debug-36.0.19}/src/gdb_jit_int.rs +0 -0
  2093. /data/ext/cargo-vendor/{wasmtime-internal-jit-debug-36.0.0 → wasmtime-internal-jit-debug-36.0.19}/src/lib.rs +0 -0
  2094. /data/ext/cargo-vendor/{wasmtime-internal-jit-debug-36.0.0 → wasmtime-internal-jit-debug-36.0.19}/src/perf_jitdump.rs +0 -0
  2095. /data/ext/cargo-vendor/{wasmtime-internal-jit-icache-coherence-36.0.0 → wasmtime-internal-jit-icache-coherence-36.0.19}/Cargo.toml.orig +0 -0
  2096. /data/ext/cargo-vendor/{wasmtime-internal-jit-icache-coherence-36.0.0 → wasmtime-internal-jit-icache-coherence-36.0.19}/src/lib.rs +0 -0
  2097. /data/ext/cargo-vendor/{wasmtime-internal-jit-icache-coherence-36.0.0 → wasmtime-internal-jit-icache-coherence-36.0.19}/src/libc.rs +0 -0
  2098. /data/ext/cargo-vendor/{wasmtime-internal-jit-icache-coherence-36.0.0 → wasmtime-internal-jit-icache-coherence-36.0.19}/src/miri.rs +0 -0
  2099. /data/ext/cargo-vendor/{wasmtime-internal-jit-icache-coherence-36.0.0 → wasmtime-internal-jit-icache-coherence-36.0.19}/src/win.rs +0 -0
  2100. /data/ext/cargo-vendor/{wasmtime-internal-math-36.0.0 → wasmtime-internal-math-36.0.19}/Cargo.toml.orig +0 -0
  2101. /data/ext/cargo-vendor/{wasmtime-internal-math-36.0.0 → wasmtime-internal-math-36.0.19}/src/lib.rs +0 -0
  2102. /data/ext/cargo-vendor/{wasmtime-internal-slab-36.0.0 → wasmtime-internal-slab-36.0.19}/Cargo.toml.orig +0 -0
  2103. /data/ext/cargo-vendor/{wasmtime-internal-slab-36.0.0 → wasmtime-internal-slab-36.0.19}/src/lib.rs +0 -0
  2104. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/Cargo.toml.orig +0 -0
  2105. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/LICENSE +0 -0
  2106. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/README.md +0 -0
  2107. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/build.rs +0 -0
  2108. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/arch/aarch64.rs +0 -0
  2109. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/arch/mod.rs +0 -0
  2110. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/arch/riscv64.rs +0 -0
  2111. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/arch/s390x.rs +0 -0
  2112. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/arch/x86.rs +0 -0
  2113. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/exception_table.rs +0 -0
  2114. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/lib.rs +0 -0
  2115. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/stackwalk.rs +0 -0
  2116. /data/ext/cargo-vendor/{wasmtime-internal-unwinder-36.0.0 → wasmtime-internal-unwinder-36.0.19}/src/throw.rs +0 -0
  2117. /data/ext/cargo-vendor/{wasmtime-internal-versioned-export-macros-36.0.0 → wasmtime-internal-versioned-export-macros-36.0.19}/Cargo.toml.orig +0 -0
  2118. /data/ext/cargo-vendor/{wasmtime-internal-versioned-export-macros-36.0.0 → wasmtime-internal-versioned-export-macros-36.0.19}/src/lib.rs +0 -0
  2119. /data/ext/cargo-vendor/{wasmtime-internal-winch-36.0.0 → wasmtime-internal-winch-36.0.19}/Cargo.toml.orig +0 -0
  2120. /data/ext/cargo-vendor/{wasmtime-internal-winch-36.0.0 → wasmtime-internal-winch-36.0.19}/LICENSE +0 -0
  2121. /data/ext/cargo-vendor/{wasmtime-internal-winch-36.0.0 → wasmtime-internal-winch-36.0.19}/src/builder.rs +0 -0
  2122. /data/ext/cargo-vendor/{wasmtime-internal-winch-36.0.0 → wasmtime-internal-winch-36.0.19}/src/compiler.rs +0 -0
  2123. /data/ext/cargo-vendor/{wasmtime-internal-winch-36.0.0 → wasmtime-internal-winch-36.0.19}/src/lib.rs +0 -0
  2124. /data/ext/cargo-vendor/{wasmtime-internal-wit-bindgen-36.0.0 → wasmtime-internal-wit-bindgen-36.0.19}/Cargo.toml.orig +0 -0
  2125. /data/ext/cargo-vendor/{wasmtime-internal-wit-bindgen-36.0.0 → wasmtime-internal-wit-bindgen-36.0.19}/src/config.rs +0 -0
  2126. /data/ext/cargo-vendor/{wasmtime-internal-wit-bindgen-36.0.0 → wasmtime-internal-wit-bindgen-36.0.19}/src/rust.rs +0 -0
  2127. /data/ext/cargo-vendor/{wasmtime-internal-wit-bindgen-36.0.0 → wasmtime-internal-wit-bindgen-36.0.19}/src/source.rs +0 -0
  2128. /data/ext/cargo-vendor/{wasmtime-internal-wit-bindgen-36.0.0 → wasmtime-internal-wit-bindgen-36.0.19}/src/types.rs +0 -0
  2129. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/LICENSE +0 -0
  2130. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/README.md +0 -0
  2131. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/cli/empty.rs +0 -0
  2132. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/cli/locked_async.rs +0 -0
  2133. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/cli/mem.rs +0 -0
  2134. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/cli/worker_thread_stdin.rs +0 -0
  2135. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/cli.rs +0 -0
  2136. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/clocks.rs +0 -0
  2137. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/error.rs +0 -0
  2138. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/bindings.rs +0 -0
  2139. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/clocks.rs +0 -0
  2140. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/env.rs +0 -0
  2141. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/exit.rs +0 -0
  2142. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/filesystem/sync.rs +0 -0
  2143. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/instance_network.rs +0 -0
  2144. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/io.rs +0 -0
  2145. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/mod.rs +0 -0
  2146. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/network.rs +0 -0
  2147. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/tcp.rs +0 -0
  2148. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/tcp_create_socket.rs +0 -0
  2149. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/host/udp_create_socket.rs +0 -0
  2150. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/ip_name_lookup.rs +0 -0
  2151. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/mod.rs +0 -0
  2152. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/network.rs +0 -0
  2153. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/poll.rs +0 -0
  2154. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/stdio.rs +0 -0
  2155. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/udp.rs +0 -0
  2156. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/cli/command.wit +0 -0
  2157. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/cli/environment.wit +0 -0
  2158. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/cli/exit.wit +0 -0
  2159. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/cli/imports.wit +0 -0
  2160. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/cli/run.wit +0 -0
  2161. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/cli/stdio.wit +0 -0
  2162. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/cli/terminal.wit +0 -0
  2163. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/clocks/monotonic-clock.wit +0 -0
  2164. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/clocks/timezone.wit +0 -0
  2165. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/clocks/wall-clock.wit +0 -0
  2166. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/clocks/world.wit +0 -0
  2167. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/filesystem/preopens.wit +0 -0
  2168. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/filesystem/types.wit +0 -0
  2169. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/filesystem/world.wit +0 -0
  2170. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/io/error.wit +0 -0
  2171. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/io/poll.wit +0 -0
  2172. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/io/streams.wit +0 -0
  2173. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/io/world.wit +0 -0
  2174. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/random/insecure-seed.wit +0 -0
  2175. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/random/insecure.wit +0 -0
  2176. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/random/random.wit +0 -0
  2177. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/random/world.wit +0 -0
  2178. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/instance-network.wit +0 -0
  2179. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/ip-name-lookup.wit +0 -0
  2180. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/network.wit +0 -0
  2181. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/tcp-create-socket.wit +0 -0
  2182. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/tcp.wit +0 -0
  2183. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/udp-create-socket.wit +0 -0
  2184. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/udp.wit +0 -0
  2185. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/deps/sockets/world.wit +0 -0
  2186. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/test.wit +0 -0
  2187. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/wit/world.wit +0 -0
  2188. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p2/write_stream.rs +0 -0
  2189. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/bindings.rs +0 -0
  2190. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/cli/host.rs +0 -0
  2191. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/cli/mod.rs +0 -0
  2192. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/clocks/host.rs +0 -0
  2193. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/clocks/mod.rs +0 -0
  2194. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/filesystem/mod.rs +0 -0
  2195. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/mod.rs +0 -0
  2196. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/random/host.rs +0 -0
  2197. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/random/mod.rs +0 -0
  2198. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/conv.rs +0 -0
  2199. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/host/ip_name_lookup.rs +0 -0
  2200. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/host/mod.rs +0 -0
  2201. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/host/types/mod.rs +0 -0
  2202. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/host/types/tcp.rs +0 -0
  2203. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/host/types/udp.rs +0 -0
  2204. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/mod.rs +0 -0
  2205. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/tcp.rs +0 -0
  2206. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/sockets/udp.rs +0 -0
  2207. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/cli/command.wit +0 -0
  2208. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/cli/environment.wit +0 -0
  2209. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/cli/exit.wit +0 -0
  2210. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/cli/imports.wit +0 -0
  2211. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/cli/run.wit +0 -0
  2212. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/cli/stdio.wit +0 -0
  2213. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/cli/terminal.wit +0 -0
  2214. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/clocks/monotonic-clock.wit +0 -0
  2215. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/clocks/timezone.wit +0 -0
  2216. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/clocks/wall-clock.wit +0 -0
  2217. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/clocks/world.wit +0 -0
  2218. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/filesystem/preopens.wit +0 -0
  2219. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/filesystem/types.wit +0 -0
  2220. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/filesystem/world.wit +0 -0
  2221. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/random/insecure-seed.wit +0 -0
  2222. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/random/insecure.wit +0 -0
  2223. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/random/random.wit +0 -0
  2224. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/random/world.wit +0 -0
  2225. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/sockets/ip-name-lookup.wit +0 -0
  2226. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/sockets/types.wit +0 -0
  2227. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/deps/sockets/world.wit +0 -0
  2228. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/p3/wit/package.wit +0 -0
  2229. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/runtime.rs +0 -0
  2230. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/sockets/mod.rs +0 -0
  2231. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/sockets/util.rs +0 -0
  2232. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/src/view.rs +0 -0
  2233. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/tests/all/main.rs +0 -0
  2234. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/tests/all/p2/api.rs +0 -0
  2235. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/tests/all/p3/mod.rs +0 -0
  2236. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/tests/process_stdin.rs +0 -0
  2237. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/witx/preview0/typenames.witx +0 -0
  2238. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/witx/preview0/wasi_unstable.witx +0 -0
  2239. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/witx/preview1/typenames.witx +0 -0
  2240. /data/ext/cargo-vendor/{wasmtime-wasi-36.0.0 → wasmtime-wasi-36.0.19}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  2241. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/Cargo.toml.orig +0 -0
  2242. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/src/bindings.rs +0 -0
  2243. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/src/lib.rs +0 -0
  2244. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/src/poll.rs +0 -0
  2245. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/wit/deps/io/error.wit +0 -0
  2246. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/wit/deps/io/poll.wit +0 -0
  2247. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/wit/deps/io/streams.wit +0 -0
  2248. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/wit/deps/io/world.wit +0 -0
  2249. /data/ext/cargo-vendor/{wasmtime-wasi-io-36.0.0 → wasmtime-wasi-io-36.0.19}/wit/world.wit +0 -0
  2250. /data/ext/cargo-vendor/{wiggle-36.0.0 → wiggle-36.0.19}/Cargo.toml.orig +0 -0
  2251. /data/ext/cargo-vendor/{wiggle-36.0.0 → wiggle-36.0.19}/LICENSE +0 -0
  2252. /data/ext/cargo-vendor/{wiggle-36.0.0 → wiggle-36.0.19}/README.md +0 -0
  2253. /data/ext/cargo-vendor/{wiggle-36.0.0 → wiggle-36.0.19}/src/error.rs +0 -0
  2254. /data/ext/cargo-vendor/{wiggle-36.0.0 → wiggle-36.0.19}/src/guest_type.rs +0 -0
  2255. /data/ext/cargo-vendor/{wiggle-36.0.0 → wiggle-36.0.19}/src/lib.rs +0 -0
  2256. /data/ext/cargo-vendor/{wiggle-36.0.0 → wiggle-36.0.19}/src/region.rs +0 -0
  2257. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/Cargo.toml.orig +0 -0
  2258. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/LICENSE +0 -0
  2259. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/README.md +0 -0
  2260. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/codegen_settings.rs +0 -0
  2261. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/config.rs +0 -0
  2262. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/funcs.rs +0 -0
  2263. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/lib.rs +0 -0
  2264. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/lifetimes.rs +0 -0
  2265. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/names.rs +0 -0
  2266. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/types/error.rs +0 -0
  2267. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/types/flags.rs +0 -0
  2268. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/types/handle.rs +0 -0
  2269. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/types/mod.rs +0 -0
  2270. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/types/record.rs +0 -0
  2271. /data/ext/cargo-vendor/{wiggle-generate-36.0.0 → wiggle-generate-36.0.19}/src/types/variant.rs +0 -0
  2272. /data/ext/cargo-vendor/{wiggle-macro-36.0.0 → wiggle-macro-36.0.19}/Cargo.toml.orig +0 -0
  2273. /data/ext/cargo-vendor/{wiggle-macro-36.0.0 → wiggle-macro-36.0.19}/LICENSE +0 -0
  2274. /data/ext/cargo-vendor/{wiggle-macro-36.0.0 → wiggle-macro-36.0.19}/build.rs +0 -0
  2275. /data/ext/cargo-vendor/{wiggle-macro-36.0.0 → wiggle-macro-36.0.19}/src/lib.rs +0 -0
  2276. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/Cargo.toml.orig +0 -0
  2277. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/LICENSE +0 -0
  2278. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/build.rs +0 -0
  2279. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/abi/local.rs +0 -0
  2280. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/abi/mod.rs +0 -0
  2281. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/codegen/builtin.rs +0 -0
  2282. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/codegen/call.rs +0 -0
  2283. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/codegen/context.rs +0 -0
  2284. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/codegen/control.rs +0 -0
  2285. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/codegen/phase.rs +0 -0
  2286. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/constant_pool.rs +0 -0
  2287. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/frame/mod.rs +0 -0
  2288. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/aarch64/abi.rs +0 -0
  2289. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/aarch64/address.rs +0 -0
  2290. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/aarch64/mod.rs +0 -0
  2291. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/aarch64/regs.rs +0 -0
  2292. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/mod.rs +0 -0
  2293. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/reg.rs +0 -0
  2294. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/x64/abi.rs +0 -0
  2295. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/x64/address.rs +0 -0
  2296. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/x64/asm.rs +0 -0
  2297. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/x64/mod.rs +0 -0
  2298. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/isa/x64/regs.rs +0 -0
  2299. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/lib.rs +0 -0
  2300. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/regalloc.rs +0 -0
  2301. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/regset.rs +0 -0
  2302. /data/ext/cargo-vendor/{winch-codegen-36.0.0 → winch-codegen-36.0.19}/src/stack.rs +0 -0
@@ -0,0 +1,4653 @@
1
+ //! This module is the central place for machine code emission.
2
+ //! It defines an implementation of wasmparser's Visitor trait
3
+ //! for `CodeGen`; which defines a visitor per op-code,
4
+ //! which validates and dispatches to the corresponding
5
+ //! machine code emitter.
6
+
7
+ use crate::abi::RetArea;
8
+ use crate::codegen::{
9
+ Callee, CodeGen, CodeGenError, ConditionalBranch, ControlStackFrame, Emission, FnCall,
10
+ UnconditionalBranch, control_index,
11
+ };
12
+ use crate::masm::{
13
+ AtomicWaitKind, DivKind, Extend, ExtractLaneKind, FloatCmpKind, IntCmpKind, LoadKind,
14
+ MacroAssembler, MulWideKind, OperandSize, RegImm, RemKind, ReplaceLaneKind, RmwOp,
15
+ RoundingMode, SPOffset, ShiftKind, Signed, SplatKind, SplatLoadKind, StoreKind, TruncKind,
16
+ V128AbsKind, V128AddKind, V128ConvertKind, V128ExtAddKind, V128ExtMulKind, V128ExtendKind,
17
+ V128LoadExtendKind, V128MaxKind, V128MinKind, V128MulKind, V128NarrowKind, V128NegKind,
18
+ V128SubKind, V128TruncKind, VectorCompareKind, VectorEqualityKind, Zero,
19
+ };
20
+
21
+ use crate::reg::{Reg, writable};
22
+ use crate::stack::{TypedReg, Val};
23
+ use anyhow::{Result, anyhow, bail, ensure, format_err};
24
+ use regalloc2::RegClass;
25
+ use smallvec::{SmallVec, smallvec};
26
+ use wasmparser::{
27
+ BlockType, BrTable, Ieee32, Ieee64, MemArg, V128, VisitOperator, VisitSimdOperator,
28
+ };
29
+ use wasmtime_cranelift::TRAP_INDIRECT_CALL_TO_NULL;
30
+ use wasmtime_environ::{
31
+ FUNCREF_INIT_BIT, FuncIndex, GlobalIndex, IndexType, MemoryIndex, TableIndex, TypeIndex,
32
+ WasmHeapType, WasmValType,
33
+ };
34
+
35
+ /// A macro to define unsupported WebAssembly operators.
36
+ ///
37
+ /// This macro calls itself recursively;
38
+ /// 1. It no-ops when matching a supported operator.
39
+ /// 2. Defines the visitor function and panics when
40
+ /// matching an unsupported operator.
41
+ macro_rules! def_unsupported {
42
+ ($( @$proposal:ident $op:ident $({ $($arg:ident: $argty:ty),* })? => $visit:ident $ann:tt)*) => {
43
+ $(
44
+ def_unsupported!(
45
+ emit
46
+ $op
47
+
48
+ fn $visit(&mut self $($(,$arg: $argty)*)?) -> Self::Output {
49
+ $($(let _ = $arg;)*)?
50
+
51
+ Err(anyhow!(CodeGenError::unimplemented_wasm_instruction()))
52
+ }
53
+ );
54
+ )*
55
+ };
56
+
57
+ (emit I32Const $($rest:tt)*) => {};
58
+ (emit I64Const $($rest:tt)*) => {};
59
+ (emit F32Const $($rest:tt)*) => {};
60
+ (emit F64Const $($rest:tt)*) => {};
61
+ (emit V128Const $($rest:tt)*) => {};
62
+ (emit F32Add $($rest:tt)*) => {};
63
+ (emit F64Add $($rest:tt)*) => {};
64
+ (emit F32Sub $($rest:tt)*) => {};
65
+ (emit F64Sub $($rest:tt)*) => {};
66
+ (emit F32Mul $($rest:tt)*) => {};
67
+ (emit F64Mul $($rest:tt)*) => {};
68
+ (emit F32Div $($rest:tt)*) => {};
69
+ (emit F64Div $($rest:tt)*) => {};
70
+ (emit F32Min $($rest:tt)*) => {};
71
+ (emit F64Min $($rest:tt)*) => {};
72
+ (emit F32Max $($rest:tt)*) => {};
73
+ (emit F64Max $($rest:tt)*) => {};
74
+ (emit F32Copysign $($rest:tt)*) => {};
75
+ (emit F64Copysign $($rest:tt)*) => {};
76
+ (emit F32Abs $($rest:tt)*) => {};
77
+ (emit F64Abs $($rest:tt)*) => {};
78
+ (emit F32Neg $($rest:tt)*) => {};
79
+ (emit F64Neg $($rest:tt)*) => {};
80
+ (emit F32Floor $($rest:tt)*) => {};
81
+ (emit F64Floor $($rest:tt)*) => {};
82
+ (emit F32Ceil $($rest:tt)*) => {};
83
+ (emit F64Ceil $($rest:tt)*) => {};
84
+ (emit F32Nearest $($rest:tt)*) => {};
85
+ (emit F64Nearest $($rest:tt)*) => {};
86
+ (emit F32Trunc $($rest:tt)*) => {};
87
+ (emit F64Trunc $($rest:tt)*) => {};
88
+ (emit F32Sqrt $($rest:tt)*) => {};
89
+ (emit F64Sqrt $($rest:tt)*) => {};
90
+ (emit F32Eq $($rest:tt)*) => {};
91
+ (emit F64Eq $($rest:tt)*) => {};
92
+ (emit F32Ne $($rest:tt)*) => {};
93
+ (emit F64Ne $($rest:tt)*) => {};
94
+ (emit F32Lt $($rest:tt)*) => {};
95
+ (emit F64Lt $($rest:tt)*) => {};
96
+ (emit F32Gt $($rest:tt)*) => {};
97
+ (emit F64Gt $($rest:tt)*) => {};
98
+ (emit F32Le $($rest:tt)*) => {};
99
+ (emit F64Le $($rest:tt)*) => {};
100
+ (emit F32Ge $($rest:tt)*) => {};
101
+ (emit F64Ge $($rest:tt)*) => {};
102
+ (emit F32ConvertI32S $($rest:tt)*) => {};
103
+ (emit F32ConvertI32U $($rest:tt)*) => {};
104
+ (emit F32ConvertI64S $($rest:tt)*) => {};
105
+ (emit F32ConvertI64U $($rest:tt)*) => {};
106
+ (emit F64ConvertI32S $($rest:tt)*) => {};
107
+ (emit F64ConvertI32U $($rest:tt)*) => {};
108
+ (emit F64ConvertI64S $($rest:tt)*) => {};
109
+ (emit F64ConvertI64U $($rest:tt)*) => {};
110
+ (emit F32ReinterpretI32 $($rest:tt)*) => {};
111
+ (emit F64ReinterpretI64 $($rest:tt)*) => {};
112
+ (emit F32DemoteF64 $($rest:tt)*) => {};
113
+ (emit F64PromoteF32 $($rest:tt)*) => {};
114
+ (emit I32Add $($rest:tt)*) => {};
115
+ (emit I64Add $($rest:tt)*) => {};
116
+ (emit I32Sub $($rest:tt)*) => {};
117
+ (emit I32Mul $($rest:tt)*) => {};
118
+ (emit I32DivS $($rest:tt)*) => {};
119
+ (emit I32DivU $($rest:tt)*) => {};
120
+ (emit I64DivS $($rest:tt)*) => {};
121
+ (emit I64DivU $($rest:tt)*) => {};
122
+ (emit I64RemU $($rest:tt)*) => {};
123
+ (emit I64RemS $($rest:tt)*) => {};
124
+ (emit I32RemU $($rest:tt)*) => {};
125
+ (emit I32RemS $($rest:tt)*) => {};
126
+ (emit I64Mul $($rest:tt)*) => {};
127
+ (emit I64Sub $($rest:tt)*) => {};
128
+ (emit I32Eq $($rest:tt)*) => {};
129
+ (emit I64Eq $($rest:tt)*) => {};
130
+ (emit I32Ne $($rest:tt)*) => {};
131
+ (emit I64Ne $($rest:tt)*) => {};
132
+ (emit I32LtS $($rest:tt)*) => {};
133
+ (emit I64LtS $($rest:tt)*) => {};
134
+ (emit I32LtU $($rest:tt)*) => {};
135
+ (emit I64LtU $($rest:tt)*) => {};
136
+ (emit I32LeS $($rest:tt)*) => {};
137
+ (emit I64LeS $($rest:tt)*) => {};
138
+ (emit I32LeU $($rest:tt)*) => {};
139
+ (emit I64LeU $($rest:tt)*) => {};
140
+ (emit I32GtS $($rest:tt)*) => {};
141
+ (emit I64GtS $($rest:tt)*) => {};
142
+ (emit I32GtU $($rest:tt)*) => {};
143
+ (emit I64GtU $($rest:tt)*) => {};
144
+ (emit I32GeS $($rest:tt)*) => {};
145
+ (emit I64GeS $($rest:tt)*) => {};
146
+ (emit I32GeU $($rest:tt)*) => {};
147
+ (emit I64GeU $($rest:tt)*) => {};
148
+ (emit I32Eqz $($rest:tt)*) => {};
149
+ (emit I64Eqz $($rest:tt)*) => {};
150
+ (emit I32And $($rest:tt)*) => {};
151
+ (emit I64And $($rest:tt)*) => {};
152
+ (emit I32Or $($rest:tt)*) => {};
153
+ (emit I64Or $($rest:tt)*) => {};
154
+ (emit I32Xor $($rest:tt)*) => {};
155
+ (emit I64Xor $($rest:tt)*) => {};
156
+ (emit I32Shl $($rest:tt)*) => {};
157
+ (emit I64Shl $($rest:tt)*) => {};
158
+ (emit I32ShrS $($rest:tt)*) => {};
159
+ (emit I64ShrS $($rest:tt)*) => {};
160
+ (emit I32ShrU $($rest:tt)*) => {};
161
+ (emit I64ShrU $($rest:tt)*) => {};
162
+ (emit I32Rotl $($rest:tt)*) => {};
163
+ (emit I64Rotl $($rest:tt)*) => {};
164
+ (emit I32Rotr $($rest:tt)*) => {};
165
+ (emit I64Rotr $($rest:tt)*) => {};
166
+ (emit I32Clz $($rest:tt)*) => {};
167
+ (emit I64Clz $($rest:tt)*) => {};
168
+ (emit I32Ctz $($rest:tt)*) => {};
169
+ (emit I64Ctz $($rest:tt)*) => {};
170
+ (emit I32Popcnt $($rest:tt)*) => {};
171
+ (emit I64Popcnt $($rest:tt)*) => {};
172
+ (emit I32WrapI64 $($rest:tt)*) => {};
173
+ (emit I64ExtendI32S $($rest:tt)*) => {};
174
+ (emit I64ExtendI32U $($rest:tt)*) => {};
175
+ (emit I32Extend8S $($rest:tt)*) => {};
176
+ (emit I32Extend16S $($rest:tt)*) => {};
177
+ (emit I64Extend8S $($rest:tt)*) => {};
178
+ (emit I64Extend16S $($rest:tt)*) => {};
179
+ (emit I64Extend32S $($rest:tt)*) => {};
180
+ (emit I32TruncF32S $($rest:tt)*) => {};
181
+ (emit I32TruncF32U $($rest:tt)*) => {};
182
+ (emit I32TruncF64S $($rest:tt)*) => {};
183
+ (emit I32TruncF64U $($rest:tt)*) => {};
184
+ (emit I64TruncF32S $($rest:tt)*) => {};
185
+ (emit I64TruncF32U $($rest:tt)*) => {};
186
+ (emit I64TruncF64S $($rest:tt)*) => {};
187
+ (emit I64TruncF64U $($rest:tt)*) => {};
188
+ (emit I32ReinterpretF32 $($rest:tt)*) => {};
189
+ (emit I64ReinterpretF64 $($rest:tt)*) => {};
190
+ (emit LocalGet $($rest:tt)*) => {};
191
+ (emit LocalSet $($rest:tt)*) => {};
192
+ (emit Call $($rest:tt)*) => {};
193
+ (emit End $($rest:tt)*) => {};
194
+ (emit Nop $($rest:tt)*) => {};
195
+ (emit If $($rest:tt)*) => {};
196
+ (emit Else $($rest:tt)*) => {};
197
+ (emit Block $($rest:tt)*) => {};
198
+ (emit Loop $($rest:tt)*) => {};
199
+ (emit Br $($rest:tt)*) => {};
200
+ (emit BrIf $($rest:tt)*) => {};
201
+ (emit Return $($rest:tt)*) => {};
202
+ (emit Unreachable $($rest:tt)*) => {};
203
+ (emit LocalTee $($rest:tt)*) => {};
204
+ (emit GlobalGet $($rest:tt)*) => {};
205
+ (emit GlobalSet $($rest:tt)*) => {};
206
+ (emit Select $($rest:tt)*) => {};
207
+ (emit Drop $($rest:tt)*) => {};
208
+ (emit BrTable $($rest:tt)*) => {};
209
+ (emit CallIndirect $($rest:tt)*) => {};
210
+ (emit TableInit $($rest:tt)*) => {};
211
+ (emit TableCopy $($rest:tt)*) => {};
212
+ (emit TableGet $($rest:tt)*) => {};
213
+ (emit TableSet $($rest:tt)*) => {};
214
+ (emit TableGrow $($rest:tt)*) => {};
215
+ (emit TableSize $($rest:tt)*) => {};
216
+ (emit TableFill $($rest:tt)*) => {};
217
+ (emit ElemDrop $($rest:tt)*) => {};
218
+ (emit MemoryInit $($rest:tt)*) => {};
219
+ (emit MemoryCopy $($rest:tt)*) => {};
220
+ (emit DataDrop $($rest:tt)*) => {};
221
+ (emit MemoryFill $($rest:tt)*) => {};
222
+ (emit MemorySize $($rest:tt)*) => {};
223
+ (emit MemoryGrow $($rest:tt)*) => {};
224
+ (emit I32Load $($rest:tt)*) => {};
225
+ (emit I32Load8S $($rest:tt)*) => {};
226
+ (emit I32Load8U $($rest:tt)*) => {};
227
+ (emit I32Load16S $($rest:tt)*) => {};
228
+ (emit I32Load16U $($rest:tt)*) => {};
229
+ (emit I64Load8S $($rest:tt)*) => {};
230
+ (emit I64Load8U $($rest:tt)*) => {};
231
+ (emit I64Load16S $($rest:tt)*) => {};
232
+ (emit I64Load16U $($rest:tt)*) => {};
233
+ (emit I64Load32S $($rest:tt)*) => {};
234
+ (emit I64Load32U $($rest:tt)*) => {};
235
+ (emit I64Load $($rest:tt)*) => {};
236
+ (emit I32Store $($rest:tt)*) => {};
237
+ (emit I32Store8 $($rest:tt)*) => {};
238
+ (emit I32Store16 $($rest:tt)*) => {};
239
+ (emit I64Store $($rest:tt)*) => {};
240
+ (emit I64Store8 $($rest:tt)*) => {};
241
+ (emit I64Store16 $($rest:tt)*) => {};
242
+ (emit I64Store32 $($rest:tt)*) => {};
243
+ (emit F32Load $($rest:tt)*) => {};
244
+ (emit F32Store $($rest:tt)*) => {};
245
+ (emit F64Load $($rest:tt)*) => {};
246
+ (emit F64Store $($rest:tt)*) => {};
247
+ (emit I32TruncSatF32S $($rest:tt)*) => {};
248
+ (emit I32TruncSatF32U $($rest:tt)*) => {};
249
+ (emit I32TruncSatF64S $($rest:tt)*) => {};
250
+ (emit I32TruncSatF64U $($rest:tt)*) => {};
251
+ (emit I64TruncSatF32S $($rest:tt)*) => {};
252
+ (emit I64TruncSatF32U $($rest:tt)*) => {};
253
+ (emit I64TruncSatF64S $($rest:tt)*) => {};
254
+ (emit I64TruncSatF64U $($rest:tt)*) => {};
255
+ (emit V128Load $($rest:tt)*) => {};
256
+ (emit V128Store $($rest:tt)*) => {};
257
+ (emit I64Add128 $($rest:tt)*) => {};
258
+ (emit I64Sub128 $($rest:tt)*) => {};
259
+ (emit I64MulWideS $($rest:tt)*) => {};
260
+ (emit I64MulWideU $($rest:tt)*) => {};
261
+ (emit I32AtomicLoad8U $($rest:tt)*) => {};
262
+ (emit I32AtomicLoad16U $($rest:tt)*) => {};
263
+ (emit I32AtomicLoad $($rest:tt)*) => {};
264
+ (emit I64AtomicLoad8U $($rest:tt)*) => {};
265
+ (emit I64AtomicLoad16U $($rest:tt)*) => {};
266
+ (emit I64AtomicLoad32U $($rest:tt)*) => {};
267
+ (emit I64AtomicLoad $($rest:tt)*) => {};
268
+ (emit V128Load8x8S $($rest:tt)*) => {};
269
+ (emit V128Load8x8U $($rest:tt)*) => {};
270
+ (emit V128Load16x4S $($rest:tt)*) => {};
271
+ (emit V128Load16x4U $($rest:tt)*) => {};
272
+ (emit V128Load32x2S $($rest:tt)*) => {};
273
+ (emit V128Load32x2U $($rest:tt)*) => {};
274
+ (emit V128Load8Splat $($rest:tt)*) => {};
275
+ (emit V128Load16Splat $($rest:tt)*) => {};
276
+ (emit V128Load32Splat $($rest:tt)*) => {};
277
+ (emit V128Load64Splat $($rest:tt)*) => {};
278
+ (emit I8x16Splat $($rest:tt)*) => {};
279
+ (emit I16x8Splat $($rest:tt)*) => {};
280
+ (emit I32x4Splat $($rest:tt)*) => {};
281
+ (emit I64x2Splat $($rest:tt)*) => {};
282
+ (emit F32x4Splat $($rest:tt)*) => {};
283
+ (emit F64x2Splat $($rest:tt)*) => {};
284
+ (emit I32AtomicStore8 $($rest:tt)*) => {};
285
+ (emit I32AtomicStore16 $($rest:tt)*) => {};
286
+ (emit I32AtomicStore $($rest:tt)*) => {};
287
+ (emit I64AtomicStore8 $($rest:tt)*) => {};
288
+ (emit I64AtomicStore16 $($rest:tt)*) => {};
289
+ (emit I64AtomicStore32 $($rest:tt)*) => {};
290
+ (emit I64AtomicStore $($rest:tt)*) => {};
291
+ (emit I32AtomicRmw8AddU $($rest:tt)*) => {};
292
+ (emit I32AtomicRmw16AddU $($rest:tt)*) => {};
293
+ (emit I32AtomicRmwAdd $($rest:tt)*) => {};
294
+ (emit I64AtomicRmw8AddU $($rest:tt)*) => {};
295
+ (emit I64AtomicRmw16AddU $($rest:tt)*) => {};
296
+ (emit I64AtomicRmw32AddU $($rest:tt)*) => {};
297
+ (emit I64AtomicRmwAdd $($rest:tt)*) => {};
298
+ (emit I8x16Shuffle $($rest:tt)*) => {};
299
+ (emit I8x16Swizzle $($rest:tt)*) => {};
300
+ (emit I32AtomicRmw8SubU $($rest:tt)*) => {};
301
+ (emit I32AtomicRmw16SubU $($rest:tt)*) => {};
302
+ (emit I32AtomicRmwSub $($rest:tt)*) => {};
303
+ (emit I64AtomicRmw8SubU $($rest:tt)*) => {};
304
+ (emit I64AtomicRmw16SubU $($rest:tt)*) => {};
305
+ (emit I64AtomicRmw32SubU $($rest:tt)*) => {};
306
+ (emit I64AtomicRmwSub $($rest:tt)*) => {};
307
+ (emit I32AtomicRmw8XchgU $($rest:tt)*) => {};
308
+ (emit I32AtomicRmw16XchgU $($rest:tt)*) => {};
309
+ (emit I32AtomicRmwXchg $($rest:tt)*) => {};
310
+ (emit I64AtomicRmw8XchgU $($rest:tt)*) => {};
311
+ (emit I64AtomicRmw16XchgU $($rest:tt)*) => {};
312
+ (emit I64AtomicRmw32XchgU $($rest:tt)*) => {};
313
+ (emit I64AtomicRmwXchg $($rest:tt)*) => {};
314
+ (emit I8x16ExtractLaneS $($rest:tt)*) => {};
315
+ (emit I8x16ExtractLaneU $($rest:tt)*) => {};
316
+ (emit I16x8ExtractLaneS $($rest:tt)*) => {};
317
+ (emit I16x8ExtractLaneU $($rest:tt)*) => {};
318
+ (emit I32x4ExtractLane $($rest:tt)*) => {};
319
+ (emit I64x2ExtractLane $($rest:tt)*) => {};
320
+ (emit F32x4ExtractLane $($rest:tt)*) => {};
321
+ (emit F64x2ExtractLane $($rest:tt)*) => {};
322
+ (emit I32AtomicRmw8AndU $($rest:tt)*) => {};
323
+ (emit I32AtomicRmw16AndU $($rest:tt)*) => {};
324
+ (emit I32AtomicRmwAnd $($rest:tt)*) => {};
325
+ (emit I64AtomicRmw8AndU $($rest:tt)*) => {};
326
+ (emit I64AtomicRmw16AndU $($rest:tt)*) => {};
327
+ (emit I64AtomicRmw32AndU $($rest:tt)*) => {};
328
+ (emit I64AtomicRmwAnd $($rest:tt)*) => {};
329
+ (emit I32AtomicRmw8OrU $($rest:tt)*) => {};
330
+ (emit I32AtomicRmw16OrU $($rest:tt)*) => {};
331
+ (emit I32AtomicRmwOr $($rest:tt)*) => {};
332
+ (emit I64AtomicRmw8OrU $($rest:tt)*) => {};
333
+ (emit I64AtomicRmw16OrU $($rest:tt)*) => {};
334
+ (emit I64AtomicRmw32OrU $($rest:tt)*) => {};
335
+ (emit I64AtomicRmwOr $($rest:tt)*) => {};
336
+ (emit I32AtomicRmw8XorU $($rest:tt)*) => {};
337
+ (emit I32AtomicRmw16XorU $($rest:tt)*) => {};
338
+ (emit I32AtomicRmwXor $($rest:tt)*) => {};
339
+ (emit I64AtomicRmw8XorU $($rest:tt)*) => {};
340
+ (emit I64AtomicRmw16XorU $($rest:tt)*) => {};
341
+ (emit I64AtomicRmw32XorU $($rest:tt)*) => {};
342
+ (emit I64AtomicRmwXor $($rest:tt)*) => {};
343
+ (emit I8x16ReplaceLane $($rest:tt)*) => {};
344
+ (emit I16x8ReplaceLane $($rest:tt)*) => {};
345
+ (emit I32x4ReplaceLane $($rest:tt)*) => {};
346
+ (emit I64x2ReplaceLane $($rest:tt)*) => {};
347
+ (emit F32x4ReplaceLane $($rest:tt)*) => {};
348
+ (emit F64x2ReplaceLane $($rest:tt)*) => {};
349
+ (emit I32AtomicRmw8CmpxchgU $($rest:tt)*) => {};
350
+ (emit I32AtomicRmw16CmpxchgU $($rest:tt)*) => {};
351
+ (emit I32AtomicRmwCmpxchg $($rest:tt)*) => {};
352
+ (emit I64AtomicRmw8CmpxchgU $($rest:tt)*) => {};
353
+ (emit I64AtomicRmw16CmpxchgU $($rest:tt)*) => {};
354
+ (emit I64AtomicRmw32CmpxchgU $($rest:tt)*) => {};
355
+ (emit I64AtomicRmwCmpxchg $($rest:tt)*) => {};
356
+ (emit I8x16Eq $($rest:tt)*) => {};
357
+ (emit I16x8Eq $($rest:tt)*) => {};
358
+ (emit I32x4Eq $($rest:tt)*) => {};
359
+ (emit I64x2Eq $($rest:tt)*) => {};
360
+ (emit F32x4Eq $($rest:tt)*) => {};
361
+ (emit F64x2Eq $($rest:tt)*) => {};
362
+ (emit I8x16Ne $($rest:tt)*) => {};
363
+ (emit I16x8Ne $($rest:tt)*) => {};
364
+ (emit I32x4Ne $($rest:tt)*) => {};
365
+ (emit I64x2Ne $($rest:tt)*) => {};
366
+ (emit F32x4Ne $($rest:tt)*) => {};
367
+ (emit F64x2Ne $($rest:tt)*) => {};
368
+ (emit I8x16LtS $($rest:tt)*) => {};
369
+ (emit I8x16LtU $($rest:tt)*) => {};
370
+ (emit I16x8LtS $($rest:tt)*) => {};
371
+ (emit I16x8LtU $($rest:tt)*) => {};
372
+ (emit I32x4LtS $($rest:tt)*) => {};
373
+ (emit I32x4LtU $($rest:tt)*) => {};
374
+ (emit I64x2LtS $($rest:tt)*) => {};
375
+ (emit F32x4Lt $($rest:tt)*) => {};
376
+ (emit F64x2Lt $($rest:tt)*) => {};
377
+ (emit I8x16LeS $($rest:tt)*) => {};
378
+ (emit I8x16LeU $($rest:tt)*) => {};
379
+ (emit I16x8LeS $($rest:tt)*) => {};
380
+ (emit I16x8LeU $($rest:tt)*) => {};
381
+ (emit I32x4LeS $($rest:tt)*) => {};
382
+ (emit I32x4LeU $($rest:tt)*) => {};
383
+ (emit I64x2LeS $($rest:tt)*) => {};
384
+ (emit F32x4Le $($rest:tt)*) => {};
385
+ (emit F64x2Le $($rest:tt)*) => {};
386
+ (emit I8x16GtS $($rest:tt)*) => {};
387
+ (emit I8x16GtU $($rest:tt)*) => {};
388
+ (emit I16x8GtS $($rest:tt)*) => {};
389
+ (emit I16x8GtU $($rest:tt)*) => {};
390
+ (emit I32x4GtS $($rest:tt)*) => {};
391
+ (emit I32x4GtU $($rest:tt)*) => {};
392
+ (emit I64x2GtS $($rest:tt)*) => {};
393
+ (emit F32x4Gt $($rest:tt)*) => {};
394
+ (emit F64x2Gt $($rest:tt)*) => {};
395
+ (emit I8x16GeS $($rest:tt)*) => {};
396
+ (emit I8x16GeU $($rest:tt)*) => {};
397
+ (emit I16x8GeS $($rest:tt)*) => {};
398
+ (emit I16x8GeU $($rest:tt)*) => {};
399
+ (emit I32x4GeS $($rest:tt)*) => {};
400
+ (emit I32x4GeU $($rest:tt)*) => {};
401
+ (emit I64x2GeS $($rest:tt)*) => {};
402
+ (emit F32x4Ge $($rest:tt)*) => {};
403
+ (emit F64x2Ge $($rest:tt)*) => {};
404
+ (emit MemoryAtomicWait32 $($rest:tt)*) => {};
405
+ (emit MemoryAtomicWait64 $($rest:tt)*) => {};
406
+ (emit MemoryAtomicNotify $($rest:tt)*) => {};
407
+ (emit AtomicFence $($rest:tt)*) => {};
408
+ (emit V128Not $($rest:tt)*) => {};
409
+ (emit V128And $($rest:tt)*) => {};
410
+ (emit V128AndNot $($rest:tt)*) => {};
411
+ (emit V128Or $($rest:tt)*) => {};
412
+ (emit V128Xor $($rest:tt)*) => {};
413
+ (emit V128Bitselect $($rest:tt)*) => {};
414
+ (emit V128AnyTrue $($rest:tt)*) => {};
415
+ (emit V128Load8Lane $($rest:tt)*) => {};
416
+ (emit V128Load16Lane $($rest:tt)*) => {};
417
+ (emit V128Load32Lane $($rest:tt)*) => {};
418
+ (emit V128Load64Lane $($rest:tt)*) => {};
419
+ (emit V128Store8Lane $($rest:tt)*) => {};
420
+ (emit V128Store16Lane $($rest:tt)*) => {};
421
+ (emit V128Store32Lane $($rest:tt)*) => {};
422
+ (emit V128Store64Lane $($rest:tt)*) => {};
423
+ (emit F32x4ConvertI32x4S $($rest:tt)*) => {};
424
+ (emit F32x4ConvertI32x4U $($rest:tt)*) => {};
425
+ (emit F64x2ConvertLowI32x4S $($rest:tt)*) => {};
426
+ (emit F64x2ConvertLowI32x4U $($rest:tt)*) => {};
427
+ (emit I8x16NarrowI16x8S $($rest:tt)*) => {};
428
+ (emit I8x16NarrowI16x8U $($rest:tt)*) => {};
429
+ (emit I16x8NarrowI32x4S $($rest:tt)*) => {};
430
+ (emit I16x8NarrowI32x4U $($rest:tt)*) => {};
431
+ (emit F32x4DemoteF64x2Zero $($rest:tt)*) => {};
432
+ (emit F64x2PromoteLowF32x4 $($rest:tt)*) => {};
433
+ (emit I16x8ExtendLowI8x16S $($rest:tt)*) => {};
434
+ (emit I16x8ExtendHighI8x16S $($rest:tt)*) => {};
435
+ (emit I16x8ExtendLowI8x16U $($rest:tt)*) => {};
436
+ (emit I16x8ExtendHighI8x16U $($rest:tt)*) => {};
437
+ (emit I32x4ExtendLowI16x8S $($rest:tt)*) => {};
438
+ (emit I32x4ExtendHighI16x8S $($rest:tt)*) => {};
439
+ (emit I32x4ExtendLowI16x8U $($rest:tt)*) => {};
440
+ (emit I32x4ExtendHighI16x8U $($rest:tt)*) => {};
441
+ (emit I64x2ExtendLowI32x4S $($rest:tt)*) => {};
442
+ (emit I64x2ExtendHighI32x4S $($rest:tt)*) => {};
443
+ (emit I64x2ExtendLowI32x4U $($rest:tt)*) => {};
444
+ (emit I64x2ExtendHighI32x4U $($rest:tt)*) => {};
445
+ (emit I8x16Add $($rest:tt)*) => {};
446
+ (emit I16x8Add $($rest:tt)*) => {};
447
+ (emit I32x4Add $($rest:tt)*) => {};
448
+ (emit I64x2Add $($rest:tt)*) => {};
449
+ (emit I8x16Sub $($rest:tt)*) => {};
450
+ (emit I16x8Sub $($rest:tt)*) => {};
451
+ (emit I32x4Sub $($rest:tt)*) => {};
452
+ (emit I64x2Sub $($rest:tt)*) => {};
453
+ (emit I16x8Mul $($rest:tt)*) => {};
454
+ (emit I32x4Mul $($rest:tt)*) => {};
455
+ (emit I64x2Mul $($rest:tt)*) => {};
456
+ (emit I8x16AddSatS $($rest:tt)*) => {};
457
+ (emit I16x8AddSatS $($rest:tt)*) => {};
458
+ (emit I8x16AddSatU $($rest:tt)*) => {};
459
+ (emit I16x8AddSatU $($rest:tt)*) => {};
460
+ (emit I8x16SubSatS $($rest:tt)*) => {};
461
+ (emit I16x8SubSatS $($rest:tt)*) => {};
462
+ (emit I8x16SubSatU $($rest:tt)*) => {};
463
+ (emit I16x8SubSatU $($rest:tt)*) => {};
464
+ (emit I8x16Abs $($rest:tt)*) => {};
465
+ (emit I16x8Abs $($rest:tt)*) => {};
466
+ (emit I32x4Abs $($rest:tt)*) => {};
467
+ (emit I64x2Abs $($rest:tt)*) => {};
468
+ (emit F32x4Abs $($rest:tt)*) => {};
469
+ (emit F64x2Abs $($rest:tt)*) => {};
470
+ (emit I8x16Neg $($rest:tt)*) => {};
471
+ (emit I16x8Neg $($rest:tt)*) => {};
472
+ (emit I32x4Neg $($rest:tt)*) => {};
473
+ (emit I64x2Neg $($rest:tt)*) => {};
474
+ (emit I8x16Shl $($rest:tt)*) => {};
475
+ (emit I16x8Shl $($rest:tt)*) => {};
476
+ (emit I32x4Shl $($rest:tt)*) => {};
477
+ (emit I64x2Shl $($rest:tt)*) => {};
478
+ (emit I8x16ShrU $($rest:tt)*) => {};
479
+ (emit I16x8ShrU $($rest:tt)*) => {};
480
+ (emit I32x4ShrU $($rest:tt)*) => {};
481
+ (emit I64x2ShrU $($rest:tt)*) => {};
482
+ (emit I8x16ShrS $($rest:tt)*) => {};
483
+ (emit I16x8ShrS $($rest:tt)*) => {};
484
+ (emit I32x4ShrS $($rest:tt)*) => {};
485
+ (emit I64x2ShrS $($rest:tt)*) => {};
486
+ (emit I16x8Q15MulrSatS $($rest:tt)*) => {};
487
+ (emit I8x16AllTrue $($rest:tt)*) => {};
488
+ (emit I16x8AllTrue $($rest:tt)*) => {};
489
+ (emit I32x4AllTrue $($rest:tt)*) => {};
490
+ (emit I64x2AllTrue $($rest:tt)*) => {};
491
+ (emit I8x16Bitmask $($rest:tt)*) => {};
492
+ (emit I16x8Bitmask $($rest:tt)*) => {};
493
+ (emit I32x4Bitmask $($rest:tt)*) => {};
494
+ (emit I64x2Bitmask $($rest:tt)*) => {};
495
+ (emit I32x4TruncSatF32x4S $($rest:tt)*) => {};
496
+ (emit I32x4TruncSatF32x4U $($rest:tt)*) => {};
497
+ (emit I32x4TruncSatF64x2SZero $($rest:tt)*) => {};
498
+ (emit I32x4TruncSatF64x2UZero $($rest:tt)*) => {};
499
+ (emit I8x16MinU $($rest:tt)*) => {};
500
+ (emit I16x8MinU $($rest:tt)*) => {};
501
+ (emit I32x4MinU $($rest:tt)*) => {};
502
+ (emit I8x16MinS $($rest:tt)*) => {};
503
+ (emit I16x8MinS $($rest:tt)*) => {};
504
+ (emit I32x4MinS $($rest:tt)*) => {};
505
+ (emit I8x16MaxU $($rest:tt)*) => {};
506
+ (emit I16x8MaxU $($rest:tt)*) => {};
507
+ (emit I32x4MaxU $($rest:tt)*) => {};
508
+ (emit I8x16MaxS $($rest:tt)*) => {};
509
+ (emit I16x8MaxS $($rest:tt)*) => {};
510
+ (emit I32x4MaxS $($rest:tt)*) => {};
511
+ (emit I16x8ExtMulLowI8x16S $($rest:tt)*) => {};
512
+ (emit I32x4ExtMulLowI16x8S $($rest:tt)*) => {};
513
+ (emit I64x2ExtMulLowI32x4S $($rest:tt)*) => {};
514
+ (emit I16x8ExtMulHighI8x16S $($rest:tt)*) => {};
515
+ (emit I32x4ExtMulHighI16x8S $($rest:tt)*) => {};
516
+ (emit I64x2ExtMulHighI32x4S $($rest:tt)*) => {};
517
+ (emit I16x8ExtMulLowI8x16U $($rest:tt)*) => {};
518
+ (emit I32x4ExtMulLowI16x8U $($rest:tt)*) => {};
519
+ (emit I64x2ExtMulLowI32x4U $($rest:tt)*) => {};
520
+ (emit I16x8ExtMulHighI8x16U $($rest:tt)*) => {};
521
+ (emit I32x4ExtMulHighI16x8U $($rest:tt)*) => {};
522
+ (emit I64x2ExtMulHighI32x4U $($rest:tt)*) => {};
523
+ (emit I16x8ExtAddPairwiseI8x16U $($rest:tt)*) => {};
524
+ (emit I16x8ExtAddPairwiseI8x16S $($rest:tt)*) => {};
525
+ (emit I32x4ExtAddPairwiseI16x8U $($rest:tt)*) => {};
526
+ (emit I32x4ExtAddPairwiseI16x8S $($rest:tt)*) => {};
527
+ (emit I32x4DotI16x8S $($rest:tt)*) => {};
528
+ (emit I8x16Popcnt $($rest:tt)*) => {};
529
+ (emit I8x16AvgrU $($rest:tt)*) => {};
530
+ (emit I16x8AvgrU $($rest:tt)*) => {};
531
+ (emit F32x4Add $($rest:tt)*) => {};
532
+ (emit F64x2Add $($rest:tt)*) => {};
533
+ (emit F32x4Sub $($rest:tt)*) => {};
534
+ (emit F64x2Sub $($rest:tt)*) => {};
535
+ (emit F32x4Mul $($rest:tt)*) => {};
536
+ (emit F64x2Mul $($rest:tt)*) => {};
537
+ (emit F32x4Div $($rest:tt)*) => {};
538
+ (emit F64x2Div $($rest:tt)*) => {};
539
+ (emit F32x4Neg $($rest:tt)*) => {};
540
+ (emit F64x2Neg $($rest:tt)*) => {};
541
+ (emit F32x4Sqrt $($rest:tt)*) => {};
542
+ (emit F64x2Sqrt $($rest:tt)*) => {};
543
+ (emit F32x4Ceil $($rest:tt)*) => {};
544
+ (emit F64x2Ceil $($rest:tt)*) => {};
545
+ (emit F32x4Floor $($rest:tt)*) => {};
546
+ (emit F64x2Floor $($rest:tt)*) => {};
547
+ (emit F32x4Nearest $($rest:tt)*) => {};
548
+ (emit F64x2Nearest $($rest:tt)*) => {};
549
+ (emit F32x4Trunc $($rest:tt)*) => {};
550
+ (emit F64x2Trunc $($rest:tt)*) => {};
551
+ (emit V128Load32Zero $($rest:tt)*) => {};
552
+ (emit V128Load64Zero $($rest:tt)*) => {};
553
+ (emit F32x4PMin $($rest:tt)*) => {};
554
+ (emit F64x2PMin $($rest:tt)*) => {};
555
+ (emit F32x4PMax $($rest:tt)*) => {};
556
+ (emit F64x2PMax $($rest:tt)*) => {};
557
+ (emit F32x4Min $($rest:tt)*) => {};
558
+ (emit F64x2Min $($rest:tt)*) => {};
559
+ (emit F32x4Max $($rest:tt)*) => {};
560
+ (emit F64x2Max $($rest:tt)*) => {};
561
+
562
+ (emit $unsupported:tt $($rest:tt)*) => {$($rest)*};
563
+ }
564
+
565
+ impl<'a, 'translation, 'data, M> VisitOperator<'a> for CodeGen<'a, 'translation, 'data, M, Emission>
566
+ where
567
+ M: MacroAssembler,
568
+ {
569
+ type Output = Result<()>;
570
+
571
+ fn visit_i32_const(&mut self, val: i32) -> Self::Output {
572
+ self.context.stack.push(Val::i32(val));
573
+
574
+ Ok(())
575
+ }
576
+
577
+ fn visit_i64_const(&mut self, val: i64) -> Self::Output {
578
+ self.context.stack.push(Val::i64(val));
579
+ Ok(())
580
+ }
581
+
582
+ fn visit_f32_const(&mut self, val: Ieee32) -> Self::Output {
583
+ self.context.stack.push(Val::f32(val));
584
+ Ok(())
585
+ }
586
+
587
+ fn visit_f64_const(&mut self, val: Ieee64) -> Self::Output {
588
+ self.context.stack.push(Val::f64(val));
589
+ Ok(())
590
+ }
591
+
592
+ fn visit_f32_add(&mut self) -> Self::Output {
593
+ self.context.binop(
594
+ self.masm,
595
+ OperandSize::S32,
596
+ &mut |masm: &mut M, dst, src, size| {
597
+ masm.float_add(writable!(dst), dst, src, size)?;
598
+ Ok(TypedReg::f32(dst))
599
+ },
600
+ )
601
+ }
602
+
603
+ fn visit_f64_add(&mut self) -> Self::Output {
604
+ self.context.binop(
605
+ self.masm,
606
+ OperandSize::S64,
607
+ &mut |masm: &mut M, dst, src, size| {
608
+ masm.float_add(writable!(dst), dst, src, size)?;
609
+ Ok(TypedReg::f64(dst))
610
+ },
611
+ )
612
+ }
613
+
614
+ fn visit_f32_sub(&mut self) -> Self::Output {
615
+ self.context.binop(
616
+ self.masm,
617
+ OperandSize::S32,
618
+ &mut |masm: &mut M, dst, src, size| {
619
+ masm.float_sub(writable!(dst), dst, src, size)?;
620
+ Ok(TypedReg::f32(dst))
621
+ },
622
+ )
623
+ }
624
+
625
+ fn visit_f64_sub(&mut self) -> Self::Output {
626
+ self.context.binop(
627
+ self.masm,
628
+ OperandSize::S64,
629
+ &mut |masm: &mut M, dst, src, size| {
630
+ masm.float_sub(writable!(dst), dst, src, size)?;
631
+ Ok(TypedReg::f64(dst))
632
+ },
633
+ )
634
+ }
635
+
636
+ fn visit_f32_mul(&mut self) -> Self::Output {
637
+ self.context.binop(
638
+ self.masm,
639
+ OperandSize::S32,
640
+ &mut |masm: &mut M, dst, src, size| {
641
+ masm.float_mul(writable!(dst), dst, src, size)?;
642
+ Ok(TypedReg::f32(dst))
643
+ },
644
+ )
645
+ }
646
+
647
+ fn visit_f64_mul(&mut self) -> Self::Output {
648
+ self.context.binop(
649
+ self.masm,
650
+ OperandSize::S64,
651
+ &mut |masm: &mut M, dst, src, size| {
652
+ masm.float_mul(writable!(dst), dst, src, size)?;
653
+ Ok(TypedReg::f64(dst))
654
+ },
655
+ )
656
+ }
657
+
658
+ fn visit_f32_div(&mut self) -> Self::Output {
659
+ self.context.binop(
660
+ self.masm,
661
+ OperandSize::S32,
662
+ &mut |masm: &mut M, dst, src, size| {
663
+ masm.float_div(writable!(dst), dst, src, size)?;
664
+ Ok(TypedReg::f32(dst))
665
+ },
666
+ )
667
+ }
668
+
669
+ fn visit_f64_div(&mut self) -> Self::Output {
670
+ self.context.binop(
671
+ self.masm,
672
+ OperandSize::S64,
673
+ &mut |masm: &mut M, dst, src, size| {
674
+ masm.float_div(writable!(dst), dst, src, size)?;
675
+ Ok(TypedReg::f64(dst))
676
+ },
677
+ )
678
+ }
679
+
680
+ fn visit_f32_min(&mut self) -> Self::Output {
681
+ self.context.binop(
682
+ self.masm,
683
+ OperandSize::S32,
684
+ &mut |masm: &mut M, dst, src, size| {
685
+ masm.float_min(writable!(dst), dst, src, size)?;
686
+ Ok(TypedReg::f32(dst))
687
+ },
688
+ )
689
+ }
690
+
691
+ fn visit_f64_min(&mut self) -> Self::Output {
692
+ self.context.binop(
693
+ self.masm,
694
+ OperandSize::S64,
695
+ &mut |masm: &mut M, dst, src, size| {
696
+ masm.float_min(writable!(dst), dst, src, size)?;
697
+ Ok(TypedReg::f64(dst))
698
+ },
699
+ )
700
+ }
701
+
702
+ fn visit_f32_max(&mut self) -> Self::Output {
703
+ self.context.binop(
704
+ self.masm,
705
+ OperandSize::S32,
706
+ &mut |masm: &mut M, dst, src, size| {
707
+ masm.float_max(writable!(dst), dst, src, size)?;
708
+ Ok(TypedReg::f32(dst))
709
+ },
710
+ )
711
+ }
712
+
713
+ fn visit_f64_max(&mut self) -> Self::Output {
714
+ self.context.binop(
715
+ self.masm,
716
+ OperandSize::S64,
717
+ &mut |masm: &mut M, dst, src, size| {
718
+ masm.float_max(writable!(dst), dst, src, size)?;
719
+ Ok(TypedReg::f64(dst))
720
+ },
721
+ )
722
+ }
723
+
724
+ fn visit_f32_copysign(&mut self) -> Self::Output {
725
+ self.context.binop(
726
+ self.masm,
727
+ OperandSize::S32,
728
+ &mut |masm: &mut M, dst, src, size| {
729
+ masm.float_copysign(writable!(dst), dst, src, size)?;
730
+ Ok(TypedReg::f32(dst))
731
+ },
732
+ )
733
+ }
734
+
735
+ fn visit_f64_copysign(&mut self) -> Self::Output {
736
+ self.context.binop(
737
+ self.masm,
738
+ OperandSize::S64,
739
+ &mut |masm: &mut M, dst, src, size| {
740
+ masm.float_copysign(writable!(dst), dst, src, size)?;
741
+ Ok(TypedReg::f64(dst))
742
+ },
743
+ )
744
+ }
745
+
746
+ fn visit_f32_abs(&mut self) -> Self::Output {
747
+ self.context.unop(self.masm, |masm, reg| {
748
+ masm.float_abs(writable!(reg), OperandSize::S32)?;
749
+ Ok(TypedReg::f32(reg))
750
+ })
751
+ }
752
+
753
+ fn visit_f64_abs(&mut self) -> Self::Output {
754
+ self.context.unop(self.masm, |masm, reg| {
755
+ masm.float_abs(writable!(reg), OperandSize::S64)?;
756
+ Ok(TypedReg::f64(reg))
757
+ })
758
+ }
759
+
760
+ fn visit_f32_neg(&mut self) -> Self::Output {
761
+ self.context.unop(self.masm, |masm, reg| {
762
+ masm.float_neg(writable!(reg), OperandSize::S32)?;
763
+ Ok(TypedReg::f32(reg))
764
+ })
765
+ }
766
+
767
+ fn visit_f64_neg(&mut self) -> Self::Output {
768
+ self.context.unop(self.masm, |masm, reg| {
769
+ masm.float_neg(writable!(reg), OperandSize::S64)?;
770
+ Ok(TypedReg::f64(reg))
771
+ })
772
+ }
773
+
774
+ fn visit_f32_floor(&mut self) -> Self::Output {
775
+ self.masm.float_round(
776
+ RoundingMode::Down,
777
+ &mut self.env,
778
+ &mut self.context,
779
+ OperandSize::S32,
780
+ |env, cx, masm| {
781
+ let builtin = env.builtins.floor_f32::<M::ABI, M::Ptr>()?;
782
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
783
+ },
784
+ )
785
+ }
786
+
787
+ fn visit_f64_floor(&mut self) -> Self::Output {
788
+ self.masm.float_round(
789
+ RoundingMode::Down,
790
+ &mut self.env,
791
+ &mut self.context,
792
+ OperandSize::S64,
793
+ |env, cx, masm| {
794
+ let builtin = env.builtins.floor_f64::<M::ABI, M::Ptr>()?;
795
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
796
+ },
797
+ )
798
+ }
799
+
800
+ fn visit_f32_ceil(&mut self) -> Self::Output {
801
+ self.masm.float_round(
802
+ RoundingMode::Up,
803
+ &mut self.env,
804
+ &mut self.context,
805
+ OperandSize::S32,
806
+ |env, cx, masm| {
807
+ let builtin = env.builtins.ceil_f32::<M::ABI, M::Ptr>()?;
808
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
809
+ },
810
+ )
811
+ }
812
+
813
+ fn visit_f64_ceil(&mut self) -> Self::Output {
814
+ self.masm.float_round(
815
+ RoundingMode::Up,
816
+ &mut self.env,
817
+ &mut self.context,
818
+ OperandSize::S64,
819
+ |env, cx, masm| {
820
+ let builtin = env.builtins.ceil_f64::<M::ABI, M::Ptr>()?;
821
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
822
+ },
823
+ )
824
+ }
825
+
826
+ fn visit_f32_nearest(&mut self) -> Self::Output {
827
+ self.masm.float_round(
828
+ RoundingMode::Nearest,
829
+ &mut self.env,
830
+ &mut self.context,
831
+ OperandSize::S32,
832
+ |env, cx, masm| {
833
+ let builtin = env.builtins.nearest_f32::<M::ABI, M::Ptr>()?;
834
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
835
+ },
836
+ )
837
+ }
838
+
839
+ fn visit_f64_nearest(&mut self) -> Self::Output {
840
+ self.masm.float_round(
841
+ RoundingMode::Nearest,
842
+ &mut self.env,
843
+ &mut self.context,
844
+ OperandSize::S64,
845
+ |env, cx, masm| {
846
+ let builtin = env.builtins.nearest_f64::<M::ABI, M::Ptr>()?;
847
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
848
+ },
849
+ )
850
+ }
851
+
852
+ fn visit_f32_trunc(&mut self) -> Self::Output {
853
+ self.masm.float_round(
854
+ RoundingMode::Zero,
855
+ &mut self.env,
856
+ &mut self.context,
857
+ OperandSize::S32,
858
+ |env, cx, masm| {
859
+ let builtin = env.builtins.trunc_f32::<M::ABI, M::Ptr>()?;
860
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
861
+ },
862
+ )
863
+ }
864
+
865
+ fn visit_f64_trunc(&mut self) -> Self::Output {
866
+ self.masm.float_round(
867
+ RoundingMode::Zero,
868
+ &mut self.env,
869
+ &mut self.context,
870
+ OperandSize::S64,
871
+ |env, cx, masm| {
872
+ let builtin = env.builtins.trunc_f64::<M::ABI, M::Ptr>()?;
873
+ FnCall::emit::<M>(env, masm, cx, Callee::Builtin(builtin))
874
+ },
875
+ )
876
+ }
877
+
878
+ fn visit_f32_sqrt(&mut self) -> Self::Output {
879
+ self.context.unop(self.masm, |masm, reg| {
880
+ masm.float_sqrt(writable!(reg), reg, OperandSize::S32)?;
881
+ Ok(TypedReg::f32(reg))
882
+ })
883
+ }
884
+
885
+ fn visit_f64_sqrt(&mut self) -> Self::Output {
886
+ self.context.unop(self.masm, |masm, reg| {
887
+ masm.float_sqrt(writable!(reg), reg, OperandSize::S64)?;
888
+ Ok(TypedReg::f64(reg))
889
+ })
890
+ }
891
+
892
+ fn visit_f32_eq(&mut self) -> Self::Output {
893
+ self.context.float_cmp_op(
894
+ self.masm,
895
+ OperandSize::S32,
896
+ &mut |masm: &mut M, dst, src1, src2, size| {
897
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Eq, size)
898
+ },
899
+ )
900
+ }
901
+
902
+ fn visit_f64_eq(&mut self) -> Self::Output {
903
+ self.context.float_cmp_op(
904
+ self.masm,
905
+ OperandSize::S64,
906
+ &mut |masm: &mut M, dst, src1, src2, size| {
907
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Eq, size)
908
+ },
909
+ )
910
+ }
911
+
912
+ fn visit_f32_ne(&mut self) -> Self::Output {
913
+ self.context.float_cmp_op(
914
+ self.masm,
915
+ OperandSize::S32,
916
+ &mut |masm: &mut M, dst, src1, src2, size| {
917
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Ne, size)
918
+ },
919
+ )
920
+ }
921
+
922
+ fn visit_f64_ne(&mut self) -> Self::Output {
923
+ self.context.float_cmp_op(
924
+ self.masm,
925
+ OperandSize::S64,
926
+ &mut |masm: &mut M, dst, src1, src2, size| {
927
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Ne, size)
928
+ },
929
+ )
930
+ }
931
+
932
+ fn visit_f32_lt(&mut self) -> Self::Output {
933
+ self.context.float_cmp_op(
934
+ self.masm,
935
+ OperandSize::S32,
936
+ &mut |masm: &mut M, dst, src1, src2, size| {
937
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Lt, size)
938
+ },
939
+ )
940
+ }
941
+
942
+ fn visit_f64_lt(&mut self) -> Self::Output {
943
+ self.context.float_cmp_op(
944
+ self.masm,
945
+ OperandSize::S64,
946
+ &mut |masm: &mut M, dst, src1, src2, size| {
947
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Lt, size)
948
+ },
949
+ )
950
+ }
951
+
952
+ fn visit_f32_gt(&mut self) -> Self::Output {
953
+ self.context.float_cmp_op(
954
+ self.masm,
955
+ OperandSize::S32,
956
+ &mut |masm: &mut M, dst, src1, src2, size| {
957
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Gt, size)
958
+ },
959
+ )
960
+ }
961
+
962
+ fn visit_f64_gt(&mut self) -> Self::Output {
963
+ self.context.float_cmp_op(
964
+ self.masm,
965
+ OperandSize::S64,
966
+ &mut |masm: &mut M, dst, src1, src2, size| {
967
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Gt, size)
968
+ },
969
+ )
970
+ }
971
+
972
+ fn visit_f32_le(&mut self) -> Self::Output {
973
+ self.context.float_cmp_op(
974
+ self.masm,
975
+ OperandSize::S32,
976
+ &mut |masm: &mut M, dst, src1, src2, size| {
977
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Le, size)
978
+ },
979
+ )
980
+ }
981
+
982
+ fn visit_f64_le(&mut self) -> Self::Output {
983
+ self.context.float_cmp_op(
984
+ self.masm,
985
+ OperandSize::S64,
986
+ &mut |masm: &mut M, dst, src1, src2, size| {
987
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Le, size)
988
+ },
989
+ )
990
+ }
991
+
992
+ fn visit_f32_ge(&mut self) -> Self::Output {
993
+ self.context.float_cmp_op(
994
+ self.masm,
995
+ OperandSize::S32,
996
+ &mut |masm: &mut M, dst, src1, src2, size| {
997
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Ge, size)
998
+ },
999
+ )
1000
+ }
1001
+
1002
+ fn visit_f64_ge(&mut self) -> Self::Output {
1003
+ self.context.float_cmp_op(
1004
+ self.masm,
1005
+ OperandSize::S64,
1006
+ &mut |masm: &mut M, dst, src1, src2, size| {
1007
+ masm.float_cmp_with_set(writable!(dst), src1, src2, FloatCmpKind::Ge, size)
1008
+ },
1009
+ )
1010
+ }
1011
+
1012
+ fn visit_f32_convert_i32_s(&mut self) -> Self::Output {
1013
+ self.context
1014
+ .convert_op(self.masm, WasmValType::F32, |masm, dst, src, dst_size| {
1015
+ masm.signed_convert(writable!(dst), src, OperandSize::S32, dst_size)
1016
+ })
1017
+ }
1018
+
1019
+ fn visit_f32_convert_i32_u(&mut self) -> Self::Output {
1020
+ self.context.convert_op_with_tmp_reg(
1021
+ self.masm,
1022
+ WasmValType::F32,
1023
+ RegClass::Int,
1024
+ |masm, dst, src, tmp_gpr, dst_size| {
1025
+ masm.unsigned_convert(writable!(dst), src, tmp_gpr, OperandSize::S32, dst_size)
1026
+ },
1027
+ )
1028
+ }
1029
+
1030
+ fn visit_f32_convert_i64_s(&mut self) -> Self::Output {
1031
+ self.context
1032
+ .convert_op(self.masm, WasmValType::F32, |masm, dst, src, dst_size| {
1033
+ masm.signed_convert(writable!(dst), src, OperandSize::S64, dst_size)
1034
+ })
1035
+ }
1036
+
1037
+ fn visit_f32_convert_i64_u(&mut self) -> Self::Output {
1038
+ self.context.convert_op_with_tmp_reg(
1039
+ self.masm,
1040
+ WasmValType::F32,
1041
+ RegClass::Int,
1042
+ |masm, dst, src, tmp_gpr, dst_size| {
1043
+ masm.unsigned_convert(writable!(dst), src, tmp_gpr, OperandSize::S64, dst_size)
1044
+ },
1045
+ )
1046
+ }
1047
+
1048
+ fn visit_f64_convert_i32_s(&mut self) -> Self::Output {
1049
+ self.context
1050
+ .convert_op(self.masm, WasmValType::F64, |masm, dst, src, dst_size| {
1051
+ masm.signed_convert(writable!(dst), src, OperandSize::S32, dst_size)
1052
+ })
1053
+ }
1054
+
1055
+ fn visit_f64_convert_i32_u(&mut self) -> Self::Output {
1056
+ self.context.convert_op_with_tmp_reg(
1057
+ self.masm,
1058
+ WasmValType::F64,
1059
+ RegClass::Int,
1060
+ |masm, dst, src, tmp_gpr, dst_size| {
1061
+ masm.unsigned_convert(writable!(dst), src, tmp_gpr, OperandSize::S32, dst_size)
1062
+ },
1063
+ )
1064
+ }
1065
+
1066
+ fn visit_f64_convert_i64_s(&mut self) -> Self::Output {
1067
+ self.context
1068
+ .convert_op(self.masm, WasmValType::F64, |masm, dst, src, dst_size| {
1069
+ masm.signed_convert(writable!(dst), src, OperandSize::S64, dst_size)
1070
+ })
1071
+ }
1072
+
1073
+ fn visit_f64_convert_i64_u(&mut self) -> Self::Output {
1074
+ self.context.convert_op_with_tmp_reg(
1075
+ self.masm,
1076
+ WasmValType::F64,
1077
+ RegClass::Int,
1078
+ |masm, dst, src, tmp_gpr, dst_size| {
1079
+ masm.unsigned_convert(writable!(dst), src, tmp_gpr, OperandSize::S64, dst_size)
1080
+ },
1081
+ )
1082
+ }
1083
+
1084
+ fn visit_f32_reinterpret_i32(&mut self) -> Self::Output {
1085
+ self.context
1086
+ .convert_op(self.masm, WasmValType::F32, |masm, dst, src, size| {
1087
+ masm.reinterpret_int_as_float(writable!(dst), src, size)
1088
+ })
1089
+ }
1090
+
1091
+ fn visit_f64_reinterpret_i64(&mut self) -> Self::Output {
1092
+ self.context
1093
+ .convert_op(self.masm, WasmValType::F64, |masm, dst, src, size| {
1094
+ masm.reinterpret_int_as_float(writable!(dst), src, size)
1095
+ })
1096
+ }
1097
+
1098
+ fn visit_f32_demote_f64(&mut self) -> Self::Output {
1099
+ self.context.unop(self.masm, |masm, reg| {
1100
+ masm.demote(writable!(reg), reg)?;
1101
+ Ok(TypedReg::f32(reg))
1102
+ })
1103
+ }
1104
+
1105
+ fn visit_f64_promote_f32(&mut self) -> Self::Output {
1106
+ self.context.unop(self.masm, |masm, reg| {
1107
+ masm.promote(writable!(reg), reg)?;
1108
+ Ok(TypedReg::f64(reg))
1109
+ })
1110
+ }
1111
+
1112
+ fn visit_i32_add(&mut self) -> Self::Output {
1113
+ self.context.i32_binop(self.masm, |masm, dst, src, size| {
1114
+ masm.add(writable!(dst), dst, src, size)?;
1115
+ Ok(TypedReg::i32(dst))
1116
+ })
1117
+ }
1118
+
1119
+ fn visit_i64_add(&mut self) -> Self::Output {
1120
+ self.context.i64_binop(self.masm, |masm, dst, src, size| {
1121
+ masm.add(writable!(dst), dst, src, size)?;
1122
+ Ok(TypedReg::i64(dst))
1123
+ })
1124
+ }
1125
+
1126
+ fn visit_i32_sub(&mut self) -> Self::Output {
1127
+ self.context.i32_binop(self.masm, |masm, dst, src, size| {
1128
+ masm.sub(writable!(dst), dst, src, size)?;
1129
+ Ok(TypedReg::i32(dst))
1130
+ })
1131
+ }
1132
+
1133
+ fn visit_i64_sub(&mut self) -> Self::Output {
1134
+ self.context.i64_binop(self.masm, |masm, dst, src, size| {
1135
+ masm.sub(writable!(dst), dst, src, size)?;
1136
+ Ok(TypedReg::i64(dst))
1137
+ })
1138
+ }
1139
+
1140
+ fn visit_i32_mul(&mut self) -> Self::Output {
1141
+ self.context.i32_binop(self.masm, |masm, dst, src, size| {
1142
+ masm.mul(writable!(dst), dst, src, size)?;
1143
+ Ok(TypedReg::i32(dst))
1144
+ })
1145
+ }
1146
+
1147
+ fn visit_i64_mul(&mut self) -> Self::Output {
1148
+ self.context.i64_binop(self.masm, |masm, dst, src, size| {
1149
+ masm.mul(writable!(dst), dst, src, size)?;
1150
+ Ok(TypedReg::i64(dst))
1151
+ })
1152
+ }
1153
+
1154
+ fn visit_i32_div_s(&mut self) -> Self::Output {
1155
+ use DivKind::*;
1156
+ use OperandSize::*;
1157
+
1158
+ self.masm.div(&mut self.context, Signed, S32)
1159
+ }
1160
+
1161
+ fn visit_i32_div_u(&mut self) -> Self::Output {
1162
+ use DivKind::*;
1163
+ use OperandSize::*;
1164
+
1165
+ self.masm.div(&mut self.context, Unsigned, S32)
1166
+ }
1167
+
1168
+ fn visit_i64_div_s(&mut self) -> Self::Output {
1169
+ use DivKind::*;
1170
+ use OperandSize::*;
1171
+
1172
+ self.masm.div(&mut self.context, Signed, S64)
1173
+ }
1174
+
1175
+ fn visit_i64_div_u(&mut self) -> Self::Output {
1176
+ use DivKind::*;
1177
+ use OperandSize::*;
1178
+
1179
+ self.masm.div(&mut self.context, Unsigned, S64)
1180
+ }
1181
+
1182
+ fn visit_i32_rem_s(&mut self) -> Self::Output {
1183
+ use OperandSize::*;
1184
+ use RemKind::*;
1185
+
1186
+ self.masm.rem(&mut self.context, Signed, S32)
1187
+ }
1188
+
1189
+ fn visit_i32_rem_u(&mut self) -> Self::Output {
1190
+ use OperandSize::*;
1191
+ use RemKind::*;
1192
+
1193
+ self.masm.rem(&mut self.context, Unsigned, S32)
1194
+ }
1195
+
1196
+ fn visit_i64_rem_s(&mut self) -> Self::Output {
1197
+ use OperandSize::*;
1198
+ use RemKind::*;
1199
+
1200
+ self.masm.rem(&mut self.context, Signed, S64)
1201
+ }
1202
+
1203
+ fn visit_i64_rem_u(&mut self) -> Self::Output {
1204
+ use OperandSize::*;
1205
+ use RemKind::*;
1206
+
1207
+ self.masm.rem(&mut self.context, Unsigned, S64)
1208
+ }
1209
+
1210
+ fn visit_i32_eq(&mut self) -> Self::Output {
1211
+ self.cmp_i32s(IntCmpKind::Eq)
1212
+ }
1213
+
1214
+ fn visit_i64_eq(&mut self) -> Self::Output {
1215
+ self.cmp_i64s(IntCmpKind::Eq)
1216
+ }
1217
+
1218
+ fn visit_i32_ne(&mut self) -> Self::Output {
1219
+ self.cmp_i32s(IntCmpKind::Ne)
1220
+ }
1221
+
1222
+ fn visit_i64_ne(&mut self) -> Self::Output {
1223
+ self.cmp_i64s(IntCmpKind::Ne)
1224
+ }
1225
+
1226
+ fn visit_i32_lt_s(&mut self) -> Self::Output {
1227
+ self.cmp_i32s(IntCmpKind::LtS)
1228
+ }
1229
+
1230
+ fn visit_i64_lt_s(&mut self) -> Self::Output {
1231
+ self.cmp_i64s(IntCmpKind::LtS)
1232
+ }
1233
+
1234
+ fn visit_i32_lt_u(&mut self) -> Self::Output {
1235
+ self.cmp_i32s(IntCmpKind::LtU)
1236
+ }
1237
+
1238
+ fn visit_i64_lt_u(&mut self) -> Self::Output {
1239
+ self.cmp_i64s(IntCmpKind::LtU)
1240
+ }
1241
+
1242
+ fn visit_i32_le_s(&mut self) -> Self::Output {
1243
+ self.cmp_i32s(IntCmpKind::LeS)
1244
+ }
1245
+
1246
+ fn visit_i64_le_s(&mut self) -> Self::Output {
1247
+ self.cmp_i64s(IntCmpKind::LeS)
1248
+ }
1249
+
1250
+ fn visit_i32_le_u(&mut self) -> Self::Output {
1251
+ self.cmp_i32s(IntCmpKind::LeU)
1252
+ }
1253
+
1254
+ fn visit_i64_le_u(&mut self) -> Self::Output {
1255
+ self.cmp_i64s(IntCmpKind::LeU)
1256
+ }
1257
+
1258
+ fn visit_i32_gt_s(&mut self) -> Self::Output {
1259
+ self.cmp_i32s(IntCmpKind::GtS)
1260
+ }
1261
+
1262
+ fn visit_i64_gt_s(&mut self) -> Self::Output {
1263
+ self.cmp_i64s(IntCmpKind::GtS)
1264
+ }
1265
+
1266
+ fn visit_i32_gt_u(&mut self) -> Self::Output {
1267
+ self.cmp_i32s(IntCmpKind::GtU)
1268
+ }
1269
+
1270
+ fn visit_i64_gt_u(&mut self) -> Self::Output {
1271
+ self.cmp_i64s(IntCmpKind::GtU)
1272
+ }
1273
+
1274
+ fn visit_i32_ge_s(&mut self) -> Self::Output {
1275
+ self.cmp_i32s(IntCmpKind::GeS)
1276
+ }
1277
+
1278
+ fn visit_i64_ge_s(&mut self) -> Self::Output {
1279
+ self.cmp_i64s(IntCmpKind::GeS)
1280
+ }
1281
+
1282
+ fn visit_i32_ge_u(&mut self) -> Self::Output {
1283
+ self.cmp_i32s(IntCmpKind::GeU)
1284
+ }
1285
+
1286
+ fn visit_i64_ge_u(&mut self) -> Self::Output {
1287
+ self.cmp_i64s(IntCmpKind::GeU)
1288
+ }
1289
+
1290
+ fn visit_i32_eqz(&mut self) -> Self::Output {
1291
+ use OperandSize::*;
1292
+
1293
+ self.context.unop(self.masm, |masm, reg| {
1294
+ masm.cmp_with_set(writable!(reg), RegImm::i32(0), IntCmpKind::Eq, S32)?;
1295
+ Ok(TypedReg::i32(reg))
1296
+ })
1297
+ }
1298
+
1299
+ fn visit_i64_eqz(&mut self) -> Self::Output {
1300
+ use OperandSize::*;
1301
+
1302
+ self.context.unop(self.masm, |masm, reg| {
1303
+ masm.cmp_with_set(writable!(reg), RegImm::i64(0), IntCmpKind::Eq, S64)?;
1304
+ Ok(TypedReg::i32(reg)) // Return value for `i64.eqz` is an `i32`.
1305
+ })
1306
+ }
1307
+
1308
+ fn visit_i32_clz(&mut self) -> Self::Output {
1309
+ use OperandSize::*;
1310
+
1311
+ self.context.unop(self.masm, |masm, reg| {
1312
+ masm.clz(writable!(reg), reg, S32)?;
1313
+ Ok(TypedReg::i32(reg))
1314
+ })
1315
+ }
1316
+
1317
+ fn visit_i64_clz(&mut self) -> Self::Output {
1318
+ use OperandSize::*;
1319
+
1320
+ self.context.unop(self.masm, |masm, reg| {
1321
+ masm.clz(writable!(reg), reg, S64)?;
1322
+ Ok(TypedReg::i64(reg))
1323
+ })
1324
+ }
1325
+
1326
+ fn visit_i32_ctz(&mut self) -> Self::Output {
1327
+ use OperandSize::*;
1328
+
1329
+ self.context.unop(self.masm, |masm, reg| {
1330
+ masm.ctz(writable!(reg), reg, S32)?;
1331
+ Ok(TypedReg::i32(reg))
1332
+ })
1333
+ }
1334
+
1335
+ fn visit_i64_ctz(&mut self) -> Self::Output {
1336
+ use OperandSize::*;
1337
+
1338
+ self.context.unop(self.masm, |masm, reg| {
1339
+ masm.ctz(writable!(reg), reg, S64)?;
1340
+ Ok(TypedReg::i64(reg))
1341
+ })
1342
+ }
1343
+
1344
+ fn visit_i32_and(&mut self) -> Self::Output {
1345
+ self.context.i32_binop(self.masm, |masm, dst, src, size| {
1346
+ masm.and(writable!(dst), dst, src, size)?;
1347
+ Ok(TypedReg::i32(dst))
1348
+ })
1349
+ }
1350
+
1351
+ fn visit_i64_and(&mut self) -> Self::Output {
1352
+ self.context.i64_binop(self.masm, |masm, dst, src, size| {
1353
+ masm.and(writable!(dst), dst, src, size)?;
1354
+ Ok(TypedReg::i64(dst))
1355
+ })
1356
+ }
1357
+
1358
+ fn visit_i32_or(&mut self) -> Self::Output {
1359
+ self.context.i32_binop(self.masm, |masm, dst, src, size| {
1360
+ masm.or(writable!(dst), dst, src, size)?;
1361
+ Ok(TypedReg::i32(dst))
1362
+ })
1363
+ }
1364
+
1365
+ fn visit_i64_or(&mut self) -> Self::Output {
1366
+ self.context.i64_binop(self.masm, |masm, dst, src, size| {
1367
+ masm.or(writable!(dst), dst, src, size)?;
1368
+ Ok(TypedReg::i64(dst))
1369
+ })
1370
+ }
1371
+
1372
+ fn visit_i32_xor(&mut self) -> Self::Output {
1373
+ self.context.i32_binop(self.masm, |masm, dst, src, size| {
1374
+ masm.xor(writable!(dst), dst, src, size)?;
1375
+ Ok(TypedReg::i32(dst))
1376
+ })
1377
+ }
1378
+
1379
+ fn visit_i64_xor(&mut self) -> Self::Output {
1380
+ self.context.i64_binop(self.masm, |masm, dst, src, size| {
1381
+ masm.xor(writable!(dst), dst, src, size)?;
1382
+ Ok(TypedReg::i64(dst))
1383
+ })
1384
+ }
1385
+
1386
+ fn visit_i32_shl(&mut self) -> Self::Output {
1387
+ use ShiftKind::*;
1388
+
1389
+ self.context.i32_shift(self.masm, Shl)
1390
+ }
1391
+
1392
+ fn visit_i64_shl(&mut self) -> Self::Output {
1393
+ use ShiftKind::*;
1394
+
1395
+ self.context.i64_shift(self.masm, Shl)
1396
+ }
1397
+
1398
+ fn visit_i32_shr_s(&mut self) -> Self::Output {
1399
+ use ShiftKind::*;
1400
+
1401
+ self.context.i32_shift(self.masm, ShrS)
1402
+ }
1403
+
1404
+ fn visit_i64_shr_s(&mut self) -> Self::Output {
1405
+ use ShiftKind::*;
1406
+
1407
+ self.context.i64_shift(self.masm, ShrS)
1408
+ }
1409
+
1410
+ fn visit_i32_shr_u(&mut self) -> Self::Output {
1411
+ use ShiftKind::*;
1412
+
1413
+ self.context.i32_shift(self.masm, ShrU)
1414
+ }
1415
+
1416
+ fn visit_i64_shr_u(&mut self) -> Self::Output {
1417
+ use ShiftKind::*;
1418
+
1419
+ self.context.i64_shift(self.masm, ShrU)
1420
+ }
1421
+
1422
+ fn visit_i32_rotl(&mut self) -> Self::Output {
1423
+ use ShiftKind::*;
1424
+
1425
+ self.context.i32_shift(self.masm, Rotl)
1426
+ }
1427
+
1428
+ fn visit_i64_rotl(&mut self) -> Self::Output {
1429
+ use ShiftKind::*;
1430
+
1431
+ self.context.i64_shift(self.masm, Rotl)
1432
+ }
1433
+
1434
+ fn visit_i32_rotr(&mut self) -> Self::Output {
1435
+ use ShiftKind::*;
1436
+
1437
+ self.context.i32_shift(self.masm, Rotr)
1438
+ }
1439
+
1440
+ fn visit_i64_rotr(&mut self) -> Self::Output {
1441
+ use ShiftKind::*;
1442
+
1443
+ self.context.i64_shift(self.masm, Rotr)
1444
+ }
1445
+
1446
+ fn visit_end(&mut self) -> Self::Output {
1447
+ if !self.context.reachable {
1448
+ self.handle_unreachable_end()
1449
+ } else {
1450
+ let mut control = self.pop_control_frame()?;
1451
+ control.emit_end(self.masm, &mut self.context)
1452
+ }
1453
+ }
1454
+
1455
+ fn visit_i32_popcnt(&mut self) -> Self::Output {
1456
+ use OperandSize::*;
1457
+ self.masm.popcnt(&mut self.context, S32)
1458
+ }
1459
+
1460
+ fn visit_i64_popcnt(&mut self) -> Self::Output {
1461
+ use OperandSize::*;
1462
+
1463
+ self.masm.popcnt(&mut self.context, S64)
1464
+ }
1465
+
1466
+ fn visit_i32_wrap_i64(&mut self) -> Self::Output {
1467
+ self.context.unop(self.masm, |masm, reg| {
1468
+ masm.wrap(writable!(reg), reg)?;
1469
+ Ok(TypedReg::i32(reg))
1470
+ })
1471
+ }
1472
+
1473
+ fn visit_i64_extend_i32_s(&mut self) -> Self::Output {
1474
+ self.context.unop(self.masm, |masm, reg| {
1475
+ masm.extend(writable!(reg), reg, Extend::<Signed>::I64Extend32.into())?;
1476
+ Ok(TypedReg::i64(reg))
1477
+ })
1478
+ }
1479
+
1480
+ fn visit_i64_extend_i32_u(&mut self) -> Self::Output {
1481
+ self.context.unop(self.masm, |masm, reg| {
1482
+ masm.extend(writable!(reg), reg, Extend::<Zero>::I64Extend32.into())?;
1483
+ Ok(TypedReg::i64(reg))
1484
+ })
1485
+ }
1486
+
1487
+ fn visit_i32_extend8_s(&mut self) -> Self::Output {
1488
+ self.context.unop(self.masm, |masm, reg| {
1489
+ masm.extend(writable!(reg), reg, Extend::<Signed>::I32Extend8.into())?;
1490
+ Ok(TypedReg::i32(reg))
1491
+ })
1492
+ }
1493
+
1494
+ fn visit_i32_extend16_s(&mut self) -> Self::Output {
1495
+ self.context.unop(self.masm, |masm, reg| {
1496
+ masm.extend(writable!(reg), reg, Extend::<Signed>::I32Extend16.into())?;
1497
+ Ok(TypedReg::i32(reg))
1498
+ })
1499
+ }
1500
+
1501
+ fn visit_i64_extend8_s(&mut self) -> Self::Output {
1502
+ self.context.unop(self.masm, |masm, reg| {
1503
+ masm.extend(writable!(reg), reg, Extend::<Signed>::I64Extend8.into())?;
1504
+ Ok(TypedReg::i64(reg))
1505
+ })
1506
+ }
1507
+
1508
+ fn visit_i64_extend16_s(&mut self) -> Self::Output {
1509
+ self.context.unop(self.masm, |masm, reg| {
1510
+ masm.extend(writable!(reg), reg, Extend::<Signed>::I64Extend16.into())?;
1511
+ Ok(TypedReg::i64(reg))
1512
+ })
1513
+ }
1514
+
1515
+ fn visit_i64_extend32_s(&mut self) -> Self::Output {
1516
+ self.context.unop(self.masm, |masm, reg| {
1517
+ masm.extend(writable!(reg), reg, Extend::<Signed>::I64Extend32.into())?;
1518
+ Ok(TypedReg::i64(reg))
1519
+ })
1520
+ }
1521
+
1522
+ fn visit_i32_trunc_f32_s(&mut self) -> Self::Output {
1523
+ use OperandSize::*;
1524
+
1525
+ self.context
1526
+ .convert_op(self.masm, WasmValType::I32, |masm, dst, src, dst_size| {
1527
+ masm.signed_truncate(writable!(dst), src, S32, dst_size, TruncKind::Unchecked)
1528
+ })
1529
+ }
1530
+
1531
+ fn visit_i32_trunc_f32_u(&mut self) -> Self::Output {
1532
+ use OperandSize::*;
1533
+
1534
+ self.masm
1535
+ .unsigned_truncate(&mut self.context, S32, S32, TruncKind::Unchecked)
1536
+ }
1537
+
1538
+ fn visit_i32_trunc_f64_s(&mut self) -> Self::Output {
1539
+ use OperandSize::*;
1540
+
1541
+ self.context
1542
+ .convert_op(self.masm, WasmValType::I32, |masm, dst, src, dst_size| {
1543
+ masm.signed_truncate(writable!(dst), src, S64, dst_size, TruncKind::Unchecked)
1544
+ })
1545
+ }
1546
+
1547
+ fn visit_i32_trunc_f64_u(&mut self) -> Self::Output {
1548
+ use OperandSize::*;
1549
+ self.masm
1550
+ .unsigned_truncate(&mut self.context, S64, S32, TruncKind::Unchecked)
1551
+ }
1552
+
1553
+ fn visit_i64_trunc_f32_s(&mut self) -> Self::Output {
1554
+ use OperandSize::*;
1555
+
1556
+ self.context
1557
+ .convert_op(self.masm, WasmValType::I64, |masm, dst, src, dst_size| {
1558
+ masm.signed_truncate(writable!(dst), src, S32, dst_size, TruncKind::Unchecked)
1559
+ })
1560
+ }
1561
+
1562
+ fn visit_i64_trunc_f32_u(&mut self) -> Self::Output {
1563
+ use OperandSize::*;
1564
+
1565
+ self.masm
1566
+ .unsigned_truncate(&mut self.context, S32, S64, TruncKind::Unchecked)
1567
+ }
1568
+
1569
+ fn visit_i64_trunc_f64_s(&mut self) -> Self::Output {
1570
+ use OperandSize::*;
1571
+
1572
+ self.context
1573
+ .convert_op(self.masm, WasmValType::I64, |masm, dst, src, dst_size| {
1574
+ masm.signed_truncate(writable!(dst), src, S64, dst_size, TruncKind::Unchecked)
1575
+ })
1576
+ }
1577
+
1578
+ fn visit_i64_trunc_f64_u(&mut self) -> Self::Output {
1579
+ use OperandSize::*;
1580
+
1581
+ self.masm
1582
+ .unsigned_truncate(&mut self.context, S64, S64, TruncKind::Unchecked)
1583
+ }
1584
+
1585
+ fn visit_i32_reinterpret_f32(&mut self) -> Self::Output {
1586
+ self.context
1587
+ .convert_op(self.masm, WasmValType::I32, |masm, dst, src, size| {
1588
+ masm.reinterpret_float_as_int(writable!(dst), src, size)
1589
+ })
1590
+ }
1591
+
1592
+ fn visit_i64_reinterpret_f64(&mut self) -> Self::Output {
1593
+ self.context
1594
+ .convert_op(self.masm, WasmValType::I64, |masm, dst, src, size| {
1595
+ masm.reinterpret_float_as_int(writable!(dst), src, size)
1596
+ })
1597
+ }
1598
+
1599
+ fn visit_local_get(&mut self, index: u32) -> Self::Output {
1600
+ use WasmValType::*;
1601
+ let context = &mut self.context;
1602
+ let slot = context.frame.get_wasm_local(index);
1603
+ match slot.ty {
1604
+ I32 | I64 | F32 | F64 | V128 => context.stack.push(Val::local(index, slot.ty)),
1605
+ Ref(rt) => match rt.heap_type {
1606
+ WasmHeapType::Func => context.stack.push(Val::local(index, slot.ty)),
1607
+ _ => bail!(CodeGenError::unsupported_wasm_type()),
1608
+ },
1609
+ }
1610
+
1611
+ Ok(())
1612
+ }
1613
+
1614
+ fn visit_local_set(&mut self, index: u32) -> Self::Output {
1615
+ let src = self.emit_set_local(index)?;
1616
+ self.context.free_reg(src);
1617
+ Ok(())
1618
+ }
1619
+
1620
+ fn visit_call(&mut self, index: u32) -> Self::Output {
1621
+ let callee = self.env.callee_from_index(FuncIndex::from_u32(index));
1622
+ FnCall::emit::<M>(&mut self.env, self.masm, &mut self.context, callee)?;
1623
+ Ok(())
1624
+ }
1625
+
1626
+ fn visit_call_indirect(&mut self, type_index: u32, table_index: u32) -> Self::Output {
1627
+ // Spill now because `emit_lazy_init_funcref` and the `FnCall::emit`
1628
+ // invocations will both trigger spills since they both call functions.
1629
+ // However, the machine instructions for the spill emitted by
1630
+ // `emit_lazy_funcref` will be jumped over if the funcref was previously
1631
+ // initialized which may result in the machine stack becoming
1632
+ // unbalanced.
1633
+ self.context.spill(self.masm)?;
1634
+
1635
+ let type_index = TypeIndex::from_u32(type_index);
1636
+ let table_index = TableIndex::from_u32(table_index);
1637
+
1638
+ self.emit_lazy_init_funcref(table_index)?;
1639
+
1640
+ // Perform the indirect call.
1641
+ // This code assumes that [`Self::emit_lazy_init_funcref`] will
1642
+ // push the funcref to the value stack.
1643
+ let funcref_ptr = self
1644
+ .context
1645
+ .stack
1646
+ .peek()
1647
+ .map(|v| v.unwrap_reg())
1648
+ .ok_or_else(|| CodeGenError::missing_values_in_stack())?;
1649
+ self.masm
1650
+ .trapz(funcref_ptr.into(), TRAP_INDIRECT_CALL_TO_NULL)?;
1651
+ self.emit_typecheck_funcref(funcref_ptr.into(), type_index)?;
1652
+
1653
+ let callee = self.env.funcref(type_index);
1654
+ FnCall::emit::<M>(&mut self.env, self.masm, &mut self.context, callee)?;
1655
+ Ok(())
1656
+ }
1657
+
1658
+ fn visit_table_init(&mut self, elem: u32, table: u32) -> Self::Output {
1659
+ let at = self.context.stack.ensure_index_at(3)?;
1660
+
1661
+ self.context
1662
+ .stack
1663
+ .insert_many(at, &[table.try_into()?, elem.try_into()?]);
1664
+
1665
+ let builtin = self.env.builtins.table_init::<M::ABI, M::Ptr>()?;
1666
+ FnCall::emit::<M>(
1667
+ &mut self.env,
1668
+ self.masm,
1669
+ &mut self.context,
1670
+ Callee::Builtin(builtin.clone()),
1671
+ )?;
1672
+ self.context.pop_and_free(self.masm)
1673
+ }
1674
+
1675
+ fn visit_table_copy(&mut self, dst: u32, src: u32) -> Self::Output {
1676
+ let at = self.context.stack.ensure_index_at(3)?;
1677
+ self.context
1678
+ .stack
1679
+ .insert_many(at, &[dst.try_into()?, src.try_into()?]);
1680
+
1681
+ let builtin = self.env.builtins.table_copy::<M::ABI, M::Ptr>()?;
1682
+ FnCall::emit::<M>(
1683
+ &mut self.env,
1684
+ self.masm,
1685
+ &mut self.context,
1686
+ Callee::Builtin(builtin),
1687
+ )?;
1688
+ self.context.pop_and_free(self.masm)
1689
+ }
1690
+
1691
+ fn visit_table_get(&mut self, table: u32) -> Self::Output {
1692
+ let table_index = TableIndex::from_u32(table);
1693
+ let table = self.env.table(table_index);
1694
+ let heap_type = table.ref_type.heap_type;
1695
+
1696
+ match heap_type {
1697
+ WasmHeapType::Func => self.emit_lazy_init_funcref(table_index),
1698
+ _ => Err(anyhow!(CodeGenError::unsupported_wasm_type())),
1699
+ }
1700
+ }
1701
+
1702
+ fn visit_table_grow(&mut self, table: u32) -> Self::Output {
1703
+ let table_index = TableIndex::from_u32(table);
1704
+ let ptr_type = self.env.ptr_type();
1705
+ let (heap_type, idx_type) = {
1706
+ let table_ty = self.env.table(table_index);
1707
+ (table_ty.ref_type.heap_type, table_ty.idx_type)
1708
+ };
1709
+ let builtin = match heap_type {
1710
+ WasmHeapType::Func => self.env.builtins.table_grow_func_ref::<M::ABI, M::Ptr>()?,
1711
+ _ => bail!(CodeGenError::unsupported_wasm_type()),
1712
+ };
1713
+
1714
+ let len = self.context.stack.len();
1715
+ // table.grow` requires at least 2 elements on the value stack.
1716
+ let at = self.context.stack.ensure_index_at(2)?;
1717
+
1718
+ // The table_grow builtin expects the parameters in a different
1719
+ // order.
1720
+ // The value stack at this point should contain:
1721
+ // [ init_value | delta ] (stack top)
1722
+ // but the builtin function expects the init value as the last
1723
+ // argument.
1724
+ self.context.stack.inner_mut().swap(len - 1, len - 2);
1725
+
1726
+ let builtin = self.prepare_builtin_defined_table_arg(table_index, at, builtin)?;
1727
+
1728
+ FnCall::emit::<M>(&mut self.env, self.masm, &mut self.context, builtin)?;
1729
+
1730
+ // Similar to the memory.grow builtin, `table.grow` returns a
1731
+ // pointer, however, we need to ensure that the returned index
1732
+ // is representative of the address space for tables.
1733
+ match (ptr_type, idx_type) {
1734
+ (WasmValType::I64, IndexType::I64) => Ok(()),
1735
+ (WasmValType::I64, IndexType::I32) => {
1736
+ let top: Reg = self.context.pop_to_reg(self.masm, None)?.into();
1737
+ self.masm.wrap(writable!(top), top)?;
1738
+ self.context.stack.push(TypedReg::i32(top).into());
1739
+ Ok(())
1740
+ }
1741
+
1742
+ _ => Err(format_err!(CodeGenError::unsupported_32_bit_platform())),
1743
+ }
1744
+ }
1745
+
1746
+ fn visit_table_size(&mut self, table: u32) -> Self::Output {
1747
+ let table_index = TableIndex::from_u32(table);
1748
+ let table_data = self.env.resolve_table_data(table_index);
1749
+ self.emit_compute_table_size(&table_data)
1750
+ }
1751
+
1752
+ fn visit_table_fill(&mut self, table: u32) -> Self::Output {
1753
+ let table_index = TableIndex::from_u32(table);
1754
+ let table_ty = self.env.table(table_index);
1755
+
1756
+ ensure!(
1757
+ table_ty.ref_type.heap_type == WasmHeapType::Func,
1758
+ CodeGenError::unsupported_wasm_type()
1759
+ );
1760
+
1761
+ let builtin = self.env.builtins.table_fill_func_ref::<M::ABI, M::Ptr>()?;
1762
+
1763
+ let at = self.context.stack.ensure_index_at(3)?;
1764
+
1765
+ let callee = self.prepare_builtin_defined_table_arg(table_index, at, builtin)?;
1766
+ FnCall::emit::<M>(&mut self.env, self.masm, &mut self.context, callee)?;
1767
+
1768
+ self.context.pop_and_free(self.masm)
1769
+ }
1770
+
1771
+ fn visit_table_set(&mut self, table: u32) -> Self::Output {
1772
+ let ptr_type = self.env.ptr_type();
1773
+ let table_index = TableIndex::from_u32(table);
1774
+ let table_data = self.env.resolve_table_data(table_index);
1775
+ let table = self.env.table(table_index);
1776
+ match table.ref_type.heap_type {
1777
+ WasmHeapType::Func => {
1778
+ ensure!(
1779
+ self.tunables.table_lazy_init,
1780
+ CodeGenError::unsupported_table_eager_init()
1781
+ );
1782
+ let value = self.context.pop_to_reg(self.masm, None)?;
1783
+ let index = self.context.pop_to_reg(self.masm, None)?;
1784
+ let base = self.context.any_gpr(self.masm)?;
1785
+ let elem_addr =
1786
+ self.emit_compute_table_elem_addr(index.into(), base, &table_data)?;
1787
+ // Set the initialized bit.
1788
+ self.masm.or(
1789
+ writable!(value.into()),
1790
+ value.into(),
1791
+ RegImm::i64(FUNCREF_INIT_BIT as i64),
1792
+ ptr_type.try_into()?,
1793
+ )?;
1794
+
1795
+ self.masm.store_ptr(value.into(), elem_addr)?;
1796
+
1797
+ self.context.free_reg(value);
1798
+ self.context.free_reg(index);
1799
+ self.context.free_reg(base);
1800
+ Ok(())
1801
+ }
1802
+ _ => Err(anyhow!(CodeGenError::unsupported_wasm_type())),
1803
+ }
1804
+ }
1805
+
1806
+ fn visit_elem_drop(&mut self, index: u32) -> Self::Output {
1807
+ let elem_drop = self.env.builtins.elem_drop::<M::ABI, M::Ptr>()?;
1808
+ self.context.stack.extend([index.try_into()?]);
1809
+ FnCall::emit::<M>(
1810
+ &mut self.env,
1811
+ self.masm,
1812
+ &mut self.context,
1813
+ Callee::Builtin(elem_drop),
1814
+ )?;
1815
+ Ok(())
1816
+ }
1817
+
1818
+ fn visit_memory_init(&mut self, data_index: u32, mem: u32) -> Self::Output {
1819
+ let at = self.context.stack.ensure_index_at(3)?;
1820
+ self.context
1821
+ .stack
1822
+ .insert_many(at, &[mem.try_into()?, data_index.try_into()?]);
1823
+ let builtin = self.env.builtins.memory_init::<M::ABI, M::Ptr>()?;
1824
+ FnCall::emit::<M>(
1825
+ &mut self.env,
1826
+ self.masm,
1827
+ &mut self.context,
1828
+ Callee::Builtin(builtin),
1829
+ )?;
1830
+ self.context.pop_and_free(self.masm)
1831
+ }
1832
+
1833
+ fn visit_memory_copy(&mut self, dst_mem: u32, src_mem: u32) -> Self::Output {
1834
+ // At this point, the stack is expected to contain:
1835
+ // [ dst_offset, src_offset, len ]
1836
+ // The following code inserts the missing params, so that stack contains:
1837
+ // [ vmctx, dst_mem, dst_offset, src_mem, src_offset, len ]
1838
+ // Which is the order expected by the builtin function.
1839
+ let _ = self.context.stack.ensure_index_at(3)?;
1840
+ let at = self.context.stack.ensure_index_at(2)?;
1841
+ self.context.stack.insert_many(at, &[src_mem.try_into()?]);
1842
+
1843
+ // One element was inserted above, so instead of 3, we use 4.
1844
+ let at = self.context.stack.ensure_index_at(4)?;
1845
+ self.context.stack.insert_many(at, &[dst_mem.try_into()?]);
1846
+
1847
+ let builtin = self.env.builtins.memory_copy::<M::ABI, M::Ptr>()?;
1848
+
1849
+ FnCall::emit::<M>(
1850
+ &mut self.env,
1851
+ self.masm,
1852
+ &mut self.context,
1853
+ Callee::Builtin(builtin),
1854
+ )?;
1855
+ self.context.pop_and_free(self.masm)
1856
+ }
1857
+
1858
+ fn visit_memory_fill(&mut self, mem: u32) -> Self::Output {
1859
+ let at = self.context.stack.ensure_index_at(3)?;
1860
+ let mem = MemoryIndex::from_u32(mem);
1861
+
1862
+ let builtin = self.env.builtins.memory_fill::<M::ABI, M::Ptr>()?;
1863
+ let builtin = self.prepare_builtin_defined_memory_arg(mem, at, builtin)?;
1864
+
1865
+ FnCall::emit::<M>(&mut self.env, self.masm, &mut self.context, builtin)?;
1866
+ self.context.pop_and_free(self.masm)
1867
+ }
1868
+
1869
+ fn visit_memory_size(&mut self, mem: u32) -> Self::Output {
1870
+ let heap = self.env.resolve_heap(MemoryIndex::from_u32(mem));
1871
+ self.emit_compute_memory_size(&heap)
1872
+ }
1873
+
1874
+ fn visit_memory_grow(&mut self, mem: u32) -> Self::Output {
1875
+ let at = self.context.stack.ensure_index_at(1)?;
1876
+ let mem = MemoryIndex::from_u32(mem);
1877
+ // The stack at this point contains: [ delta ]
1878
+ // The desired state is
1879
+ // [ vmctx, delta, index ]
1880
+ let builtin = self.env.builtins.memory_grow::<M::ABI, M::Ptr>()?;
1881
+ let builtin = self.prepare_builtin_defined_memory_arg(mem, at + 1, builtin)?;
1882
+
1883
+ let heap = self.env.resolve_heap(mem);
1884
+ FnCall::emit::<M>(&mut self.env, self.masm, &mut self.context, builtin)?;
1885
+
1886
+ // The memory32_grow builtin returns a pointer type, therefore we must
1887
+ // ensure that the return type is representative of the address space of
1888
+ // the heap type.
1889
+ match (self.env.ptr_type(), heap.index_type()) {
1890
+ (WasmValType::I64, WasmValType::I64) => Ok(()),
1891
+ // When the heap type is smaller than the pointer type, we adjust
1892
+ // the result of the memory32_grow builtin.
1893
+ (WasmValType::I64, WasmValType::I32) => {
1894
+ let top: Reg = self.context.pop_to_reg(self.masm, None)?.into();
1895
+ self.masm.wrap(writable!(top), top)?;
1896
+ self.context.stack.push(TypedReg::i32(top).into());
1897
+ Ok(())
1898
+ }
1899
+ _ => Err(anyhow!(CodeGenError::unsupported_32_bit_platform())),
1900
+ }
1901
+ }
1902
+
1903
+ fn visit_data_drop(&mut self, data_index: u32) -> Self::Output {
1904
+ self.context.stack.extend([data_index.try_into()?]);
1905
+
1906
+ let builtin = self.env.builtins.data_drop::<M::ABI, M::Ptr>()?;
1907
+ FnCall::emit::<M>(
1908
+ &mut self.env,
1909
+ self.masm,
1910
+ &mut self.context,
1911
+ Callee::Builtin(builtin),
1912
+ )
1913
+ }
1914
+
1915
+ fn visit_nop(&mut self) -> Self::Output {
1916
+ Ok(())
1917
+ }
1918
+
1919
+ fn visit_if(&mut self, blockty: BlockType) -> Self::Output {
1920
+ self.control_frames.push(ControlStackFrame::r#if(
1921
+ self.env.resolve_block_sig(blockty)?,
1922
+ self.masm,
1923
+ &mut self.context,
1924
+ )?);
1925
+
1926
+ Ok(())
1927
+ }
1928
+
1929
+ fn visit_else(&mut self) -> Self::Output {
1930
+ if !self.context.reachable {
1931
+ self.handle_unreachable_else()
1932
+ } else {
1933
+ let control = self
1934
+ .control_frames
1935
+ .last_mut()
1936
+ .ok_or_else(|| CodeGenError::control_frame_expected())?;
1937
+ control.emit_else(self.masm, &mut self.context)
1938
+ }
1939
+ }
1940
+
1941
+ fn visit_block(&mut self, blockty: BlockType) -> Self::Output {
1942
+ self.control_frames.push(ControlStackFrame::block(
1943
+ self.env.resolve_block_sig(blockty)?,
1944
+ self.masm,
1945
+ &mut self.context,
1946
+ )?);
1947
+
1948
+ Ok(())
1949
+ }
1950
+
1951
+ fn visit_loop(&mut self, blockty: BlockType) -> Self::Output {
1952
+ self.control_frames.push(ControlStackFrame::r#loop(
1953
+ self.env.resolve_block_sig(blockty)?,
1954
+ self.masm,
1955
+ &mut self.context,
1956
+ )?);
1957
+
1958
+ self.maybe_emit_epoch_check()?;
1959
+ self.maybe_emit_fuel_check()
1960
+ }
1961
+
1962
+ fn visit_br(&mut self, depth: u32) -> Self::Output {
1963
+ let index = control_index(depth, self.control_frames.len())?;
1964
+ let frame = &mut self.control_frames[index];
1965
+ self.context
1966
+ .br::<_, _, UnconditionalBranch>(frame, self.masm, |masm, cx, frame| {
1967
+ frame.pop_abi_results::<M, _>(cx, masm, |results, _, _| {
1968
+ Ok(results.ret_area().copied())
1969
+ })
1970
+ })
1971
+ }
1972
+
1973
+ fn visit_br_if(&mut self, depth: u32) -> Self::Output {
1974
+ let index = control_index(depth, self.control_frames.len())?;
1975
+ let frame = &mut self.control_frames[index];
1976
+ frame.set_as_target();
1977
+
1978
+ let top = {
1979
+ let top = self.context.without::<Result<TypedReg>, M, _>(
1980
+ frame.results::<M>()?.regs(),
1981
+ self.masm,
1982
+ |ctx, masm| ctx.pop_to_reg(masm, None),
1983
+ )??;
1984
+ // Explicitly save any live registers and locals before setting up
1985
+ // the branch state.
1986
+ // In some cases, calculating the `top` value above, will result in
1987
+ // a spill, thus the following one will result in a no-op.
1988
+ self.context.spill(self.masm)?;
1989
+ frame.top_abi_results::<M, _>(
1990
+ &mut self.context,
1991
+ self.masm,
1992
+ |results, context, masm| {
1993
+ // In the case of `br_if` there's a possibility that we'll
1994
+ // exit early from the block or fallthrough, for
1995
+ // a fallthrough, we cannot rely on the pre-computed return area;
1996
+ // it must be recalculated so that any values that are
1997
+ // generated are correctly placed near the current stack
1998
+ // pointer.
1999
+ if results.on_stack() {
2000
+ let stack_consumed = context.stack.sizeof(results.stack_operands_len());
2001
+ let base = masm.sp_offset()?.as_u32() - stack_consumed;
2002
+ let offs = base + results.size();
2003
+ Ok(Some(RetArea::sp(SPOffset::from_u32(offs))))
2004
+ } else {
2005
+ Ok(None)
2006
+ }
2007
+ },
2008
+ )?;
2009
+ top
2010
+ };
2011
+
2012
+ // Emit instructions to balance the machine stack.
2013
+ let current_sp_offset = self.masm.sp_offset()?;
2014
+ let unbalanced = frame.unbalanced(self.masm)?;
2015
+ let (label, cmp) = if unbalanced {
2016
+ (self.masm.get_label()?, IntCmpKind::Eq)
2017
+ } else {
2018
+ (*frame.label(), IntCmpKind::Ne)
2019
+ };
2020
+
2021
+ self.masm
2022
+ .branch(cmp, top.reg, top.reg.into(), label, OperandSize::S32)?;
2023
+ self.context.free_reg(top);
2024
+
2025
+ if unbalanced {
2026
+ self.context
2027
+ .br::<_, _, ConditionalBranch>(frame, self.masm, |_, _, _| Ok(()))?;
2028
+
2029
+ // Restore sp_offset to what it was for falling through and emit
2030
+ // fallthrough label.
2031
+ self.masm.reset_stack_pointer(current_sp_offset)?;
2032
+ self.masm.bind(label)?;
2033
+ }
2034
+
2035
+ Ok(())
2036
+ }
2037
+
2038
+ fn visit_br_table(&mut self, targets: BrTable<'a>) -> Self::Output {
2039
+ // +1 to account for the default target.
2040
+ let len = targets.len() + 1;
2041
+ // SmallVec<[_; 5]> to match the binary emission layer (e.g
2042
+ // see `JmpTableSeq'), but here we use 5 instead since we
2043
+ // bundle the default target as the last element in the array.
2044
+ let mut labels: SmallVec<[_; 5]> = smallvec![];
2045
+ for _ in 0..len {
2046
+ labels.push(self.masm.get_label()?);
2047
+ }
2048
+
2049
+ // Find the innermost target and use it as the relative frame
2050
+ // for result handling below.
2051
+ //
2052
+ // This approach ensures that
2053
+ // 1. The stack pointer offset is correctly positioned
2054
+ // according to the expectations of the innermost block end
2055
+ // sequence.
2056
+ // 2. We meet the jump site invariants introduced by
2057
+ // `CodegenContext::br`, which take advantage of Wasm
2058
+ // semantics given that all jumps are "outward".
2059
+ let mut innermost = targets.default();
2060
+ for target in targets.targets() {
2061
+ let target = target?;
2062
+ if target < innermost {
2063
+ innermost = target;
2064
+ }
2065
+ }
2066
+
2067
+ let innermost_index = control_index(innermost, self.control_frames.len())?;
2068
+ let innermost_frame = &mut self.control_frames[innermost_index];
2069
+ let innermost_result = innermost_frame.results::<M>()?;
2070
+
2071
+ let (index, tmp) = {
2072
+ let index_and_tmp = self.context.without::<Result<(TypedReg, _)>, M, _>(
2073
+ innermost_result.regs(),
2074
+ self.masm,
2075
+ |cx, masm| Ok((cx.pop_to_reg(masm, None)?, cx.any_gpr(masm)?)),
2076
+ )??;
2077
+
2078
+ // Materialize any constants or locals into their result
2079
+ // representation, so that when reachability is restored,
2080
+ // they are correctly located. NB: the results are popped
2081
+ // in function of the innermost branch specified for
2082
+ // `br_table`, which implies that the machine stack will
2083
+ // be correctly balanced, by virtue of calling
2084
+ // `pop_abi_results`.
2085
+
2086
+ // It's possible that we need to balance the stack for the
2087
+ // rest of the targets, which will be done before emitting
2088
+ // the unconditional jump below.
2089
+ innermost_frame.pop_abi_results::<M, _>(
2090
+ &mut self.context,
2091
+ self.masm,
2092
+ |results, _, _| Ok(results.ret_area().copied()),
2093
+ )?;
2094
+ index_and_tmp
2095
+ };
2096
+
2097
+ self.masm.jmp_table(&labels, index.into(), tmp)?;
2098
+ // Save the original stack pointer offset; we will reset the stack
2099
+ // pointer to this offset after jumping to each of the targets. Each
2100
+ // jump might adjust the stack according to the base offset of the
2101
+ // target.
2102
+ let current_sp = self.masm.sp_offset()?;
2103
+
2104
+ for (t, l) in targets
2105
+ .targets()
2106
+ .chain(std::iter::once(Ok(targets.default())))
2107
+ .zip(labels.iter())
2108
+ {
2109
+ let control_index = control_index(t?, self.control_frames.len())?;
2110
+ let frame = &mut self.control_frames[control_index];
2111
+ // Reset the stack pointer to its original offset. This is needed
2112
+ // because each jump will potentially adjust the stack pointer
2113
+ // according to the base offset of the target.
2114
+ self.masm.reset_stack_pointer(current_sp)?;
2115
+
2116
+ // NB: We don't perform any result handling as it was
2117
+ // already taken care of above before jumping to the
2118
+ // jump table.
2119
+ self.masm.bind(*l)?;
2120
+ // Ensure that the stack pointer is correctly positioned before
2121
+ // jumping to the jump table code.
2122
+ self.context
2123
+ .br::<_, _, UnconditionalBranch>(frame, self.masm, |_, _, _| Ok(()))?;
2124
+ }
2125
+ // Finally reset the stack pointer to the original location.
2126
+ // The reachability analysis, will ensure it's correctly located
2127
+ // once reachability is restored.
2128
+ self.masm.reset_stack_pointer(current_sp)?;
2129
+ self.context.reachable = false;
2130
+ self.context.free_reg(index.reg);
2131
+ self.context.free_reg(tmp);
2132
+
2133
+ Ok(())
2134
+ }
2135
+
2136
+ fn visit_return(&mut self) -> Self::Output {
2137
+ // Grab the outermost frame, which is the function's body
2138
+ // frame. We don't rely on [`codegen::control_index`] since
2139
+ // this frame is implicit and we know that it should exist at
2140
+ // index 0.
2141
+ let outermost = &mut self.control_frames[0];
2142
+ self.context
2143
+ .br::<_, _, UnconditionalBranch>(outermost, self.masm, |masm, cx, frame| {
2144
+ frame.pop_abi_results::<M, _>(cx, masm, |results, _, _| {
2145
+ Ok(results.ret_area().copied())
2146
+ })
2147
+ })
2148
+ }
2149
+
2150
+ fn visit_unreachable(&mut self) -> Self::Output {
2151
+ self.masm.unreachable()?;
2152
+ self.context.reachable = false;
2153
+ // Set the implicit outermost frame as target to perform the necessary
2154
+ // stack clean up.
2155
+ let outermost = &mut self.control_frames[0];
2156
+ outermost.set_as_target();
2157
+
2158
+ Ok(())
2159
+ }
2160
+
2161
+ fn visit_local_tee(&mut self, index: u32) -> Self::Output {
2162
+ let typed_reg = self.emit_set_local(index)?;
2163
+ self.context.stack.push(typed_reg.into());
2164
+
2165
+ Ok(())
2166
+ }
2167
+
2168
+ fn visit_global_get(&mut self, global_index: u32) -> Self::Output {
2169
+ let index = GlobalIndex::from_u32(global_index);
2170
+ let (ty, base, offset) = self.emit_get_global_addr(index)?;
2171
+ let addr = self.masm.address_at_reg(base, offset)?;
2172
+ let dst = self.context.reg_for_type(ty, self.masm)?;
2173
+ self.masm.load(addr, writable!(dst), ty.try_into()?)?;
2174
+ self.context.stack.push(Val::reg(dst, ty));
2175
+
2176
+ self.context.free_reg(base);
2177
+
2178
+ Ok(())
2179
+ }
2180
+
2181
+ fn visit_global_set(&mut self, global_index: u32) -> Self::Output {
2182
+ let index = GlobalIndex::from_u32(global_index);
2183
+ let (ty, base, offset) = self.emit_get_global_addr(index)?;
2184
+ let addr = self.masm.address_at_reg(base, offset)?;
2185
+
2186
+ let typed_reg = self.context.pop_to_reg(self.masm, None)?;
2187
+ self.masm
2188
+ .store(typed_reg.reg.into(), addr, ty.try_into()?)?;
2189
+ self.context.free_reg(typed_reg.reg);
2190
+ self.context.free_reg(base);
2191
+
2192
+ Ok(())
2193
+ }
2194
+
2195
+ fn visit_drop(&mut self) -> Self::Output {
2196
+ self.context.drop_last(1, |regalloc, val| match val {
2197
+ Val::Reg(tr) => Ok(regalloc.free(tr.reg)),
2198
+ Val::Memory(m) => self.masm.free_stack(m.slot.size),
2199
+ _ => Ok(()),
2200
+ })
2201
+ }
2202
+
2203
+ fn visit_select(&mut self) -> Self::Output {
2204
+ let cond = self.context.pop_to_reg(self.masm, None)?;
2205
+ let val2 = self.context.pop_to_reg(self.masm, None)?;
2206
+ let val1 = self.context.pop_to_reg(self.masm, None)?;
2207
+ self.masm.cmp(cond.reg, RegImm::i32(0), OperandSize::S32)?;
2208
+ // Conditionally move val1 to val2 if the comparison is
2209
+ // not zero.
2210
+ self.masm.cmov(
2211
+ writable!(val2.into()),
2212
+ val1.into(),
2213
+ IntCmpKind::Ne,
2214
+ val1.ty.try_into()?,
2215
+ )?;
2216
+ self.context.stack.push(val2.into());
2217
+ self.context.free_reg(val1.reg);
2218
+ self.context.free_reg(cond);
2219
+
2220
+ Ok(())
2221
+ }
2222
+
2223
+ fn visit_i32_load(&mut self, memarg: MemArg) -> Self::Output {
2224
+ self.emit_wasm_load(
2225
+ &memarg,
2226
+ WasmValType::I32,
2227
+ LoadKind::Operand(OperandSize::S32),
2228
+ )
2229
+ }
2230
+
2231
+ fn visit_i32_load8_s(&mut self, memarg: MemArg) -> Self::Output {
2232
+ self.emit_wasm_load(
2233
+ &memarg,
2234
+ WasmValType::I32,
2235
+ LoadKind::ScalarExtend(Extend::<Signed>::I32Extend8.into()),
2236
+ )
2237
+ }
2238
+
2239
+ fn visit_i32_load8_u(&mut self, memarg: MemArg) -> Self::Output {
2240
+ self.emit_wasm_load(
2241
+ &memarg,
2242
+ WasmValType::I32,
2243
+ LoadKind::ScalarExtend(Extend::<Zero>::I32Extend8.into()),
2244
+ )
2245
+ }
2246
+
2247
+ fn visit_i32_load16_s(&mut self, memarg: MemArg) -> Self::Output {
2248
+ self.emit_wasm_load(
2249
+ &memarg,
2250
+ WasmValType::I32,
2251
+ LoadKind::ScalarExtend(Extend::<Signed>::I32Extend16.into()),
2252
+ )
2253
+ }
2254
+
2255
+ fn visit_i32_load16_u(&mut self, memarg: MemArg) -> Self::Output {
2256
+ self.emit_wasm_load(
2257
+ &memarg,
2258
+ WasmValType::I32,
2259
+ LoadKind::ScalarExtend(Extend::<Zero>::I32Extend16.into()),
2260
+ )
2261
+ }
2262
+
2263
+ fn visit_i32_store(&mut self, memarg: MemArg) -> Self::Output {
2264
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S32))
2265
+ }
2266
+
2267
+ fn visit_i32_store8(&mut self, memarg: MemArg) -> Self::Output {
2268
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S8))
2269
+ }
2270
+
2271
+ fn visit_i32_store16(&mut self, memarg: MemArg) -> Self::Output {
2272
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S16))
2273
+ }
2274
+
2275
+ fn visit_i64_load8_s(&mut self, memarg: MemArg) -> Self::Output {
2276
+ self.emit_wasm_load(
2277
+ &memarg,
2278
+ WasmValType::I64,
2279
+ LoadKind::ScalarExtend(Extend::<Signed>::I64Extend8.into()),
2280
+ )
2281
+ }
2282
+
2283
+ fn visit_i64_load8_u(&mut self, memarg: MemArg) -> Self::Output {
2284
+ self.emit_wasm_load(
2285
+ &memarg,
2286
+ WasmValType::I64,
2287
+ LoadKind::ScalarExtend(Extend::<Zero>::I64Extend8.into()),
2288
+ )
2289
+ }
2290
+
2291
+ fn visit_i64_load16_u(&mut self, memarg: MemArg) -> Self::Output {
2292
+ self.emit_wasm_load(
2293
+ &memarg,
2294
+ WasmValType::I64,
2295
+ LoadKind::ScalarExtend(Extend::<Zero>::I64Extend16.into()),
2296
+ )
2297
+ }
2298
+
2299
+ fn visit_i64_load16_s(&mut self, memarg: MemArg) -> Self::Output {
2300
+ self.emit_wasm_load(
2301
+ &memarg,
2302
+ WasmValType::I64,
2303
+ LoadKind::ScalarExtend(Extend::<Signed>::I64Extend16.into()),
2304
+ )
2305
+ }
2306
+
2307
+ fn visit_i64_load32_u(&mut self, memarg: MemArg) -> Self::Output {
2308
+ self.emit_wasm_load(
2309
+ &memarg,
2310
+ WasmValType::I64,
2311
+ LoadKind::ScalarExtend(Extend::<Zero>::I64Extend32.into()),
2312
+ )
2313
+ }
2314
+
2315
+ fn visit_i64_load32_s(&mut self, memarg: MemArg) -> Self::Output {
2316
+ self.emit_wasm_load(
2317
+ &memarg,
2318
+ WasmValType::I64,
2319
+ LoadKind::ScalarExtend(Extend::<Signed>::I64Extend32.into()),
2320
+ )
2321
+ }
2322
+
2323
+ fn visit_i64_load(&mut self, memarg: MemArg) -> Self::Output {
2324
+ self.emit_wasm_load(
2325
+ &memarg,
2326
+ WasmValType::I64,
2327
+ LoadKind::Operand(OperandSize::S64),
2328
+ )
2329
+ }
2330
+
2331
+ fn visit_i64_store(&mut self, memarg: MemArg) -> Self::Output {
2332
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S64))
2333
+ }
2334
+
2335
+ fn visit_i64_store8(&mut self, memarg: MemArg) -> Self::Output {
2336
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S8))
2337
+ }
2338
+
2339
+ fn visit_i64_store16(&mut self, memarg: MemArg) -> Self::Output {
2340
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S16))
2341
+ }
2342
+
2343
+ fn visit_i64_store32(&mut self, memarg: MemArg) -> Self::Output {
2344
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S32))
2345
+ }
2346
+
2347
+ fn visit_f32_load(&mut self, memarg: MemArg) -> Self::Output {
2348
+ self.emit_wasm_load(
2349
+ &memarg,
2350
+ WasmValType::F32,
2351
+ LoadKind::Operand(OperandSize::S32),
2352
+ )
2353
+ }
2354
+
2355
+ fn visit_f32_store(&mut self, memarg: MemArg) -> Self::Output {
2356
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S32))
2357
+ }
2358
+
2359
+ fn visit_f64_load(&mut self, memarg: MemArg) -> Self::Output {
2360
+ self.emit_wasm_load(
2361
+ &memarg,
2362
+ WasmValType::F64,
2363
+ LoadKind::Operand(OperandSize::S64),
2364
+ )
2365
+ }
2366
+
2367
+ fn visit_f64_store(&mut self, memarg: MemArg) -> Self::Output {
2368
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S64))
2369
+ }
2370
+
2371
+ fn visit_i32_trunc_sat_f32_s(&mut self) -> Self::Output {
2372
+ use OperandSize::*;
2373
+
2374
+ self.context
2375
+ .convert_op(self.masm, WasmValType::I32, |masm, dst, src, dst_size| {
2376
+ masm.signed_truncate(writable!(dst), src, S32, dst_size, TruncKind::Checked)
2377
+ })
2378
+ }
2379
+
2380
+ fn visit_i32_trunc_sat_f32_u(&mut self) -> Self::Output {
2381
+ use OperandSize::*;
2382
+
2383
+ self.masm
2384
+ .unsigned_truncate(&mut self.context, S32, S32, TruncKind::Checked)
2385
+ }
2386
+
2387
+ fn visit_i32_trunc_sat_f64_s(&mut self) -> Self::Output {
2388
+ use OperandSize::*;
2389
+
2390
+ self.context
2391
+ .convert_op(self.masm, WasmValType::I32, |masm, dst, src, dst_size| {
2392
+ masm.signed_truncate(writable!(dst), src, S64, dst_size, TruncKind::Checked)
2393
+ })
2394
+ }
2395
+
2396
+ fn visit_i32_trunc_sat_f64_u(&mut self) -> Self::Output {
2397
+ use OperandSize::*;
2398
+
2399
+ self.masm
2400
+ .unsigned_truncate(&mut self.context, S64, S32, TruncKind::Checked)
2401
+ }
2402
+
2403
+ fn visit_i64_trunc_sat_f32_s(&mut self) -> Self::Output {
2404
+ use OperandSize::*;
2405
+
2406
+ self.context
2407
+ .convert_op(self.masm, WasmValType::I64, |masm, dst, src, dst_size| {
2408
+ masm.signed_truncate(writable!(dst), src, S32, dst_size, TruncKind::Checked)
2409
+ })
2410
+ }
2411
+
2412
+ fn visit_i64_trunc_sat_f32_u(&mut self) -> Self::Output {
2413
+ use OperandSize::*;
2414
+
2415
+ self.masm
2416
+ .unsigned_truncate(&mut self.context, S32, S64, TruncKind::Checked)
2417
+ }
2418
+
2419
+ fn visit_i64_trunc_sat_f64_s(&mut self) -> Self::Output {
2420
+ use OperandSize::*;
2421
+
2422
+ self.context
2423
+ .convert_op(self.masm, WasmValType::I64, |masm, dst, src, dst_size| {
2424
+ masm.signed_truncate(writable!(dst), src, S64, dst_size, TruncKind::Checked)
2425
+ })
2426
+ }
2427
+
2428
+ fn visit_i64_trunc_sat_f64_u(&mut self) -> Self::Output {
2429
+ use OperandSize::*;
2430
+
2431
+ self.masm
2432
+ .unsigned_truncate(&mut self.context, S64, S64, TruncKind::Checked)
2433
+ }
2434
+
2435
+ fn visit_i64_add128(&mut self) -> Self::Output {
2436
+ self.context
2437
+ .binop128(self.masm, |masm, lhs_lo, lhs_hi, rhs_lo, rhs_hi| {
2438
+ masm.add128(
2439
+ writable!(lhs_lo),
2440
+ writable!(lhs_hi),
2441
+ lhs_lo,
2442
+ lhs_hi,
2443
+ rhs_lo,
2444
+ rhs_hi,
2445
+ )?;
2446
+ Ok((TypedReg::i64(lhs_lo), TypedReg::i64(lhs_hi)))
2447
+ })
2448
+ }
2449
+
2450
+ fn visit_i64_sub128(&mut self) -> Self::Output {
2451
+ self.context
2452
+ .binop128(self.masm, |masm, lhs_lo, lhs_hi, rhs_lo, rhs_hi| {
2453
+ masm.sub128(
2454
+ writable!(lhs_lo),
2455
+ writable!(lhs_hi),
2456
+ lhs_lo,
2457
+ lhs_hi,
2458
+ rhs_lo,
2459
+ rhs_hi,
2460
+ )?;
2461
+ Ok((TypedReg::i64(lhs_lo), TypedReg::i64(lhs_hi)))
2462
+ })
2463
+ }
2464
+
2465
+ fn visit_i64_mul_wide_s(&mut self) -> Self::Output {
2466
+ self.masm.mul_wide(&mut self.context, MulWideKind::Signed)
2467
+ }
2468
+
2469
+ fn visit_i64_mul_wide_u(&mut self) -> Self::Output {
2470
+ self.masm.mul_wide(&mut self.context, MulWideKind::Unsigned)
2471
+ }
2472
+
2473
+ fn visit_i32_atomic_load8_u(&mut self, memarg: MemArg) -> Self::Output {
2474
+ self.emit_wasm_load(
2475
+ &memarg,
2476
+ WasmValType::I32,
2477
+ LoadKind::Atomic(OperandSize::S8, Some(Extend::<Zero>::I32Extend8.into())),
2478
+ )
2479
+ }
2480
+
2481
+ fn visit_i32_atomic_load16_u(&mut self, memarg: MemArg) -> Self::Output {
2482
+ self.emit_wasm_load(
2483
+ &memarg,
2484
+ WasmValType::I32,
2485
+ LoadKind::Atomic(OperandSize::S16, Some(Extend::<Zero>::I32Extend16.into())),
2486
+ )
2487
+ }
2488
+
2489
+ fn visit_i32_atomic_load(&mut self, memarg: MemArg) -> Self::Output {
2490
+ self.emit_wasm_load(
2491
+ &memarg,
2492
+ WasmValType::I32,
2493
+ LoadKind::Atomic(OperandSize::S32, None),
2494
+ )
2495
+ }
2496
+
2497
+ fn visit_i64_atomic_load8_u(&mut self, memarg: MemArg) -> Self::Output {
2498
+ self.emit_wasm_load(
2499
+ &memarg,
2500
+ WasmValType::I64,
2501
+ LoadKind::Atomic(OperandSize::S8, Some(Extend::<Zero>::I64Extend8.into())),
2502
+ )
2503
+ }
2504
+
2505
+ fn visit_i64_atomic_load16_u(&mut self, memarg: MemArg) -> Self::Output {
2506
+ self.emit_wasm_load(
2507
+ &memarg,
2508
+ WasmValType::I64,
2509
+ LoadKind::Atomic(OperandSize::S16, Some(Extend::<Zero>::I64Extend16.into())),
2510
+ )
2511
+ }
2512
+
2513
+ fn visit_i64_atomic_load32_u(&mut self, memarg: MemArg) -> Self::Output {
2514
+ self.emit_wasm_load(
2515
+ &memarg,
2516
+ WasmValType::I64,
2517
+ LoadKind::Atomic(OperandSize::S32, Some(Extend::<Zero>::I64Extend32.into())),
2518
+ )
2519
+ }
2520
+
2521
+ fn visit_i64_atomic_load(&mut self, memarg: MemArg) -> Self::Output {
2522
+ self.emit_wasm_load(
2523
+ &memarg,
2524
+ WasmValType::I64,
2525
+ LoadKind::Atomic(OperandSize::S64, None),
2526
+ )
2527
+ }
2528
+
2529
+ fn visit_i32_atomic_store(&mut self, memarg: MemArg) -> Self::Output {
2530
+ self.emit_wasm_store(&memarg, StoreKind::Atomic(OperandSize::S32))
2531
+ }
2532
+
2533
+ fn visit_i64_atomic_store(&mut self, memarg: MemArg) -> Self::Output {
2534
+ self.emit_wasm_store(&memarg, StoreKind::Atomic(OperandSize::S64))
2535
+ }
2536
+
2537
+ fn visit_i32_atomic_store8(&mut self, memarg: MemArg) -> Self::Output {
2538
+ self.emit_wasm_store(&memarg, StoreKind::Atomic(OperandSize::S8))
2539
+ }
2540
+
2541
+ fn visit_i32_atomic_store16(&mut self, memarg: MemArg) -> Self::Output {
2542
+ self.emit_wasm_store(&memarg, StoreKind::Atomic(OperandSize::S16))
2543
+ }
2544
+
2545
+ fn visit_i64_atomic_store8(&mut self, memarg: MemArg) -> Self::Output {
2546
+ self.emit_wasm_store(&memarg, StoreKind::Atomic(OperandSize::S8))
2547
+ }
2548
+
2549
+ fn visit_i64_atomic_store16(&mut self, memarg: MemArg) -> Self::Output {
2550
+ self.emit_wasm_store(&memarg, StoreKind::Atomic(OperandSize::S16))
2551
+ }
2552
+
2553
+ fn visit_i64_atomic_store32(&mut self, memarg: MemArg) -> Self::Output {
2554
+ self.emit_wasm_store(&memarg, StoreKind::Atomic(OperandSize::S32))
2555
+ }
2556
+
2557
+ fn visit_i32_atomic_rmw8_add_u(&mut self, arg: MemArg) -> Self::Output {
2558
+ self.emit_atomic_rmw(
2559
+ &arg,
2560
+ RmwOp::Add,
2561
+ OperandSize::S8,
2562
+ Some(Extend::<Zero>::I32Extend8),
2563
+ )
2564
+ }
2565
+
2566
+ fn visit_i32_atomic_rmw16_add_u(&mut self, arg: MemArg) -> Self::Output {
2567
+ self.emit_atomic_rmw(
2568
+ &arg,
2569
+ RmwOp::Add,
2570
+ OperandSize::S16,
2571
+ Some(Extend::<Zero>::I32Extend16),
2572
+ )
2573
+ }
2574
+
2575
+ fn visit_i32_atomic_rmw_add(&mut self, arg: MemArg) -> Self::Output {
2576
+ self.emit_atomic_rmw(&arg, RmwOp::Add, OperandSize::S32, None)
2577
+ }
2578
+
2579
+ fn visit_i64_atomic_rmw8_add_u(&mut self, arg: MemArg) -> Self::Output {
2580
+ self.emit_atomic_rmw(
2581
+ &arg,
2582
+ RmwOp::Add,
2583
+ OperandSize::S8,
2584
+ Some(Extend::<Zero>::I64Extend8),
2585
+ )
2586
+ }
2587
+
2588
+ fn visit_i64_atomic_rmw16_add_u(&mut self, arg: MemArg) -> Self::Output {
2589
+ self.emit_atomic_rmw(
2590
+ &arg,
2591
+ RmwOp::Add,
2592
+ OperandSize::S16,
2593
+ Some(Extend::<Zero>::I64Extend16),
2594
+ )
2595
+ }
2596
+
2597
+ fn visit_i64_atomic_rmw32_add_u(&mut self, arg: MemArg) -> Self::Output {
2598
+ self.emit_atomic_rmw(
2599
+ &arg,
2600
+ RmwOp::Add,
2601
+ OperandSize::S32,
2602
+ Some(Extend::<Zero>::I64Extend32),
2603
+ )
2604
+ }
2605
+
2606
+ fn visit_i64_atomic_rmw_add(&mut self, arg: MemArg) -> Self::Output {
2607
+ self.emit_atomic_rmw(&arg, RmwOp::Add, OperandSize::S64, None)
2608
+ }
2609
+
2610
+ fn visit_i32_atomic_rmw8_sub_u(&mut self, arg: MemArg) -> Self::Output {
2611
+ self.emit_atomic_rmw(
2612
+ &arg,
2613
+ RmwOp::Sub,
2614
+ OperandSize::S8,
2615
+ Some(Extend::<Zero>::I32Extend8),
2616
+ )
2617
+ }
2618
+ fn visit_i32_atomic_rmw16_sub_u(&mut self, arg: MemArg) -> Self::Output {
2619
+ self.emit_atomic_rmw(
2620
+ &arg,
2621
+ RmwOp::Sub,
2622
+ OperandSize::S16,
2623
+ Some(Extend::<Zero>::I32Extend16),
2624
+ )
2625
+ }
2626
+
2627
+ fn visit_i32_atomic_rmw_sub(&mut self, arg: MemArg) -> Self::Output {
2628
+ self.emit_atomic_rmw(&arg, RmwOp::Sub, OperandSize::S32, None)
2629
+ }
2630
+
2631
+ fn visit_i64_atomic_rmw8_sub_u(&mut self, arg: MemArg) -> Self::Output {
2632
+ self.emit_atomic_rmw(
2633
+ &arg,
2634
+ RmwOp::Sub,
2635
+ OperandSize::S8,
2636
+ Some(Extend::<Zero>::I64Extend8),
2637
+ )
2638
+ }
2639
+
2640
+ fn visit_i64_atomic_rmw16_sub_u(&mut self, arg: MemArg) -> Self::Output {
2641
+ self.emit_atomic_rmw(
2642
+ &arg,
2643
+ RmwOp::Sub,
2644
+ OperandSize::S16,
2645
+ Some(Extend::<Zero>::I64Extend16),
2646
+ )
2647
+ }
2648
+
2649
+ fn visit_i64_atomic_rmw32_sub_u(&mut self, arg: MemArg) -> Self::Output {
2650
+ self.emit_atomic_rmw(
2651
+ &arg,
2652
+ RmwOp::Sub,
2653
+ OperandSize::S32,
2654
+ Some(Extend::<Zero>::I64Extend32),
2655
+ )
2656
+ }
2657
+
2658
+ fn visit_i64_atomic_rmw_sub(&mut self, arg: MemArg) -> Self::Output {
2659
+ self.emit_atomic_rmw(&arg, RmwOp::Sub, OperandSize::S64, None)
2660
+ }
2661
+
2662
+ fn visit_i32_atomic_rmw8_xchg_u(&mut self, arg: MemArg) -> Self::Output {
2663
+ self.emit_atomic_rmw(
2664
+ &arg,
2665
+ RmwOp::Xchg,
2666
+ OperandSize::S8,
2667
+ Some(Extend::<Zero>::I32Extend8),
2668
+ )
2669
+ }
2670
+
2671
+ fn visit_i32_atomic_rmw16_xchg_u(&mut self, arg: MemArg) -> Self::Output {
2672
+ self.emit_atomic_rmw(
2673
+ &arg,
2674
+ RmwOp::Xchg,
2675
+ OperandSize::S16,
2676
+ Some(Extend::<Zero>::I32Extend16),
2677
+ )
2678
+ }
2679
+
2680
+ fn visit_i32_atomic_rmw_xchg(&mut self, arg: MemArg) -> Self::Output {
2681
+ self.emit_atomic_rmw(&arg, RmwOp::Xchg, OperandSize::S32, None)
2682
+ }
2683
+
2684
+ fn visit_i64_atomic_rmw8_xchg_u(&mut self, arg: MemArg) -> Self::Output {
2685
+ self.emit_atomic_rmw(
2686
+ &arg,
2687
+ RmwOp::Xchg,
2688
+ OperandSize::S8,
2689
+ Some(Extend::<Zero>::I64Extend8),
2690
+ )
2691
+ }
2692
+
2693
+ fn visit_i64_atomic_rmw16_xchg_u(&mut self, arg: MemArg) -> Self::Output {
2694
+ self.emit_atomic_rmw(
2695
+ &arg,
2696
+ RmwOp::Xchg,
2697
+ OperandSize::S16,
2698
+ Some(Extend::<Zero>::I64Extend16),
2699
+ )
2700
+ }
2701
+
2702
+ fn visit_i64_atomic_rmw32_xchg_u(&mut self, arg: MemArg) -> Self::Output {
2703
+ self.emit_atomic_rmw(
2704
+ &arg,
2705
+ RmwOp::Xchg,
2706
+ OperandSize::S32,
2707
+ Some(Extend::<Zero>::I64Extend32),
2708
+ )
2709
+ }
2710
+
2711
+ fn visit_i64_atomic_rmw_xchg(&mut self, arg: MemArg) -> Self::Output {
2712
+ self.emit_atomic_rmw(&arg, RmwOp::Xchg, OperandSize::S64, None)
2713
+ }
2714
+
2715
+ fn visit_i32_atomic_rmw8_and_u(&mut self, arg: MemArg) -> Self::Output {
2716
+ self.emit_atomic_rmw(
2717
+ &arg,
2718
+ RmwOp::And,
2719
+ OperandSize::S8,
2720
+ Some(Extend::<Zero>::I32Extend8),
2721
+ )
2722
+ }
2723
+
2724
+ fn visit_i32_atomic_rmw16_and_u(&mut self, arg: MemArg) -> Self::Output {
2725
+ self.emit_atomic_rmw(
2726
+ &arg,
2727
+ RmwOp::And,
2728
+ OperandSize::S16,
2729
+ Some(Extend::<Zero>::I32Extend16),
2730
+ )
2731
+ }
2732
+
2733
+ fn visit_i32_atomic_rmw_and(&mut self, arg: MemArg) -> Self::Output {
2734
+ self.emit_atomic_rmw(&arg, RmwOp::And, OperandSize::S32, None)
2735
+ }
2736
+
2737
+ fn visit_i64_atomic_rmw8_and_u(&mut self, arg: MemArg) -> Self::Output {
2738
+ self.emit_atomic_rmw(
2739
+ &arg,
2740
+ RmwOp::And,
2741
+ OperandSize::S8,
2742
+ Some(Extend::<Zero>::I64Extend8),
2743
+ )
2744
+ }
2745
+
2746
+ fn visit_i64_atomic_rmw16_and_u(&mut self, arg: MemArg) -> Self::Output {
2747
+ self.emit_atomic_rmw(
2748
+ &arg,
2749
+ RmwOp::And,
2750
+ OperandSize::S16,
2751
+ Some(Extend::<Zero>::I64Extend16),
2752
+ )
2753
+ }
2754
+
2755
+ fn visit_i64_atomic_rmw32_and_u(&mut self, arg: MemArg) -> Self::Output {
2756
+ self.emit_atomic_rmw(
2757
+ &arg,
2758
+ RmwOp::And,
2759
+ OperandSize::S32,
2760
+ Some(Extend::<Zero>::I64Extend32),
2761
+ )
2762
+ }
2763
+
2764
+ fn visit_i64_atomic_rmw_and(&mut self, arg: MemArg) -> Self::Output {
2765
+ self.emit_atomic_rmw(&arg, RmwOp::And, OperandSize::S64, None)
2766
+ }
2767
+
2768
+ fn visit_i32_atomic_rmw8_or_u(&mut self, arg: MemArg) -> Self::Output {
2769
+ self.emit_atomic_rmw(
2770
+ &arg,
2771
+ RmwOp::Or,
2772
+ OperandSize::S8,
2773
+ Some(Extend::<Zero>::I32Extend8),
2774
+ )
2775
+ }
2776
+
2777
+ fn visit_i32_atomic_rmw16_or_u(&mut self, arg: MemArg) -> Self::Output {
2778
+ self.emit_atomic_rmw(
2779
+ &arg,
2780
+ RmwOp::Or,
2781
+ OperandSize::S16,
2782
+ Some(Extend::<Zero>::I32Extend16),
2783
+ )
2784
+ }
2785
+
2786
+ fn visit_i32_atomic_rmw_or(&mut self, arg: MemArg) -> Self::Output {
2787
+ self.emit_atomic_rmw(&arg, RmwOp::Or, OperandSize::S32, None)
2788
+ }
2789
+
2790
+ fn visit_i64_atomic_rmw8_or_u(&mut self, arg: MemArg) -> Self::Output {
2791
+ self.emit_atomic_rmw(
2792
+ &arg,
2793
+ RmwOp::Or,
2794
+ OperandSize::S8,
2795
+ Some(Extend::<Zero>::I64Extend8),
2796
+ )
2797
+ }
2798
+
2799
+ fn visit_i64_atomic_rmw16_or_u(&mut self, arg: MemArg) -> Self::Output {
2800
+ self.emit_atomic_rmw(
2801
+ &arg,
2802
+ RmwOp::Or,
2803
+ OperandSize::S16,
2804
+ Some(Extend::<Zero>::I64Extend16),
2805
+ )
2806
+ }
2807
+
2808
+ fn visit_i64_atomic_rmw32_or_u(&mut self, arg: MemArg) -> Self::Output {
2809
+ self.emit_atomic_rmw(
2810
+ &arg,
2811
+ RmwOp::Or,
2812
+ OperandSize::S32,
2813
+ Some(Extend::<Zero>::I64Extend32),
2814
+ )
2815
+ }
2816
+
2817
+ fn visit_i64_atomic_rmw_or(&mut self, arg: MemArg) -> Self::Output {
2818
+ self.emit_atomic_rmw(&arg, RmwOp::Or, OperandSize::S64, None)
2819
+ }
2820
+
2821
+ fn visit_i32_atomic_rmw8_xor_u(&mut self, arg: MemArg) -> Self::Output {
2822
+ self.emit_atomic_rmw(
2823
+ &arg,
2824
+ RmwOp::Xor,
2825
+ OperandSize::S8,
2826
+ Some(Extend::<Zero>::I32Extend8),
2827
+ )
2828
+ }
2829
+
2830
+ fn visit_i32_atomic_rmw16_xor_u(&mut self, arg: MemArg) -> Self::Output {
2831
+ self.emit_atomic_rmw(
2832
+ &arg,
2833
+ RmwOp::Xor,
2834
+ OperandSize::S16,
2835
+ Some(Extend::<Zero>::I32Extend16),
2836
+ )
2837
+ }
2838
+
2839
+ fn visit_i32_atomic_rmw_xor(&mut self, arg: MemArg) -> Self::Output {
2840
+ self.emit_atomic_rmw(&arg, RmwOp::Xor, OperandSize::S32, None)
2841
+ }
2842
+
2843
+ fn visit_i64_atomic_rmw8_xor_u(&mut self, arg: MemArg) -> Self::Output {
2844
+ self.emit_atomic_rmw(
2845
+ &arg,
2846
+ RmwOp::Xor,
2847
+ OperandSize::S8,
2848
+ Some(Extend::<Zero>::I64Extend8),
2849
+ )
2850
+ }
2851
+
2852
+ fn visit_i64_atomic_rmw16_xor_u(&mut self, arg: MemArg) -> Self::Output {
2853
+ self.emit_atomic_rmw(
2854
+ &arg,
2855
+ RmwOp::Xor,
2856
+ OperandSize::S16,
2857
+ Some(Extend::<Zero>::I64Extend16),
2858
+ )
2859
+ }
2860
+
2861
+ fn visit_i64_atomic_rmw32_xor_u(&mut self, arg: MemArg) -> Self::Output {
2862
+ self.emit_atomic_rmw(
2863
+ &arg,
2864
+ RmwOp::Xor,
2865
+ OperandSize::S32,
2866
+ Some(Extend::<Zero>::I64Extend32),
2867
+ )
2868
+ }
2869
+
2870
+ fn visit_i64_atomic_rmw_xor(&mut self, arg: MemArg) -> Self::Output {
2871
+ self.emit_atomic_rmw(&arg, RmwOp::Xor, OperandSize::S64, None)
2872
+ }
2873
+
2874
+ fn visit_i32_atomic_rmw8_cmpxchg_u(&mut self, arg: MemArg) -> Self::Output {
2875
+ self.emit_atomic_cmpxchg(&arg, OperandSize::S8, Some(Extend::I32Extend8))
2876
+ }
2877
+
2878
+ fn visit_i32_atomic_rmw16_cmpxchg_u(&mut self, arg: MemArg) -> Self::Output {
2879
+ self.emit_atomic_cmpxchg(&arg, OperandSize::S16, Some(Extend::I32Extend16))
2880
+ }
2881
+
2882
+ fn visit_i32_atomic_rmw_cmpxchg(&mut self, arg: MemArg) -> Self::Output {
2883
+ self.emit_atomic_cmpxchg(&arg, OperandSize::S32, None)
2884
+ }
2885
+
2886
+ fn visit_i64_atomic_rmw8_cmpxchg_u(&mut self, arg: MemArg) -> Self::Output {
2887
+ self.emit_atomic_cmpxchg(&arg, OperandSize::S8, Some(Extend::I64Extend8))
2888
+ }
2889
+
2890
+ fn visit_i64_atomic_rmw16_cmpxchg_u(&mut self, arg: MemArg) -> Self::Output {
2891
+ self.emit_atomic_cmpxchg(&arg, OperandSize::S16, Some(Extend::I64Extend16))
2892
+ }
2893
+
2894
+ fn visit_i64_atomic_rmw32_cmpxchg_u(&mut self, arg: MemArg) -> Self::Output {
2895
+ self.emit_atomic_cmpxchg(&arg, OperandSize::S32, Some(Extend::I64Extend32))
2896
+ }
2897
+
2898
+ fn visit_i64_atomic_rmw_cmpxchg(&mut self, arg: MemArg) -> Self::Output {
2899
+ self.emit_atomic_cmpxchg(&arg, OperandSize::S64, None)
2900
+ }
2901
+
2902
+ fn visit_memory_atomic_wait32(&mut self, arg: MemArg) -> Self::Output {
2903
+ self.emit_atomic_wait(&arg, AtomicWaitKind::Wait32)
2904
+ }
2905
+
2906
+ fn visit_memory_atomic_wait64(&mut self, arg: MemArg) -> Self::Output {
2907
+ self.emit_atomic_wait(&arg, AtomicWaitKind::Wait64)
2908
+ }
2909
+
2910
+ fn visit_memory_atomic_notify(&mut self, arg: MemArg) -> Self::Output {
2911
+ self.emit_atomic_notify(&arg)
2912
+ }
2913
+
2914
+ fn visit_atomic_fence(&mut self) -> Self::Output {
2915
+ self.masm.fence()
2916
+ }
2917
+
2918
+ wasmparser::for_each_visit_operator!(def_unsupported);
2919
+ }
2920
+
2921
+ impl<'a, 'translation, 'data, M> VisitSimdOperator<'a>
2922
+ for CodeGen<'a, 'translation, 'data, M, Emission>
2923
+ where
2924
+ M: MacroAssembler,
2925
+ {
2926
+ fn visit_v128_const(&mut self, val: V128) -> Self::Output {
2927
+ self.context.stack.push(Val::v128(val.i128()));
2928
+ Ok(())
2929
+ }
2930
+
2931
+ fn visit_v128_load(&mut self, memarg: MemArg) -> Self::Output {
2932
+ self.emit_wasm_load(
2933
+ &memarg,
2934
+ WasmValType::V128,
2935
+ LoadKind::Operand(OperandSize::S128),
2936
+ )
2937
+ }
2938
+
2939
+ fn visit_v128_store(&mut self, memarg: MemArg) -> Self::Output {
2940
+ self.emit_wasm_store(&memarg, StoreKind::Operand(OperandSize::S128))
2941
+ }
2942
+
2943
+ fn visit_v128_load8x8_s(&mut self, memarg: MemArg) -> Self::Output {
2944
+ self.emit_wasm_load(
2945
+ &memarg,
2946
+ WasmValType::V128,
2947
+ LoadKind::VectorExtend(V128LoadExtendKind::E8x8S),
2948
+ )
2949
+ }
2950
+
2951
+ fn visit_v128_load8x8_u(&mut self, memarg: MemArg) -> Self::Output {
2952
+ self.emit_wasm_load(
2953
+ &memarg,
2954
+ WasmValType::V128,
2955
+ LoadKind::VectorExtend(V128LoadExtendKind::E8x8U),
2956
+ )
2957
+ }
2958
+
2959
+ fn visit_v128_load16x4_s(&mut self, memarg: MemArg) -> Self::Output {
2960
+ self.emit_wasm_load(
2961
+ &memarg,
2962
+ WasmValType::V128,
2963
+ LoadKind::VectorExtend(V128LoadExtendKind::E16x4S),
2964
+ )
2965
+ }
2966
+
2967
+ fn visit_v128_load16x4_u(&mut self, memarg: MemArg) -> Self::Output {
2968
+ self.emit_wasm_load(
2969
+ &memarg,
2970
+ WasmValType::V128,
2971
+ LoadKind::VectorExtend(V128LoadExtendKind::E16x4U),
2972
+ )
2973
+ }
2974
+
2975
+ fn visit_v128_load32x2_s(&mut self, memarg: MemArg) -> Self::Output {
2976
+ self.emit_wasm_load(
2977
+ &memarg,
2978
+ WasmValType::V128,
2979
+ LoadKind::VectorExtend(V128LoadExtendKind::E32x2S),
2980
+ )
2981
+ }
2982
+
2983
+ fn visit_v128_load32x2_u(&mut self, memarg: MemArg) -> Self::Output {
2984
+ self.emit_wasm_load(
2985
+ &memarg,
2986
+ WasmValType::V128,
2987
+ LoadKind::VectorExtend(V128LoadExtendKind::E32x2U),
2988
+ )
2989
+ }
2990
+
2991
+ fn visit_v128_load8_splat(&mut self, memarg: MemArg) -> Self::Output {
2992
+ self.emit_wasm_load(
2993
+ &memarg,
2994
+ WasmValType::V128,
2995
+ LoadKind::Splat(SplatLoadKind::S8),
2996
+ )
2997
+ }
2998
+
2999
+ fn visit_v128_load16_splat(&mut self, memarg: MemArg) -> Self::Output {
3000
+ self.emit_wasm_load(
3001
+ &memarg,
3002
+ WasmValType::V128,
3003
+ LoadKind::Splat(SplatLoadKind::S16),
3004
+ )
3005
+ }
3006
+
3007
+ fn visit_v128_load32_splat(&mut self, memarg: MemArg) -> Self::Output {
3008
+ self.emit_wasm_load(
3009
+ &memarg,
3010
+ WasmValType::V128,
3011
+ LoadKind::Splat(SplatLoadKind::S32),
3012
+ )
3013
+ }
3014
+
3015
+ fn visit_v128_load64_splat(&mut self, memarg: MemArg) -> Self::Output {
3016
+ self.emit_wasm_load(
3017
+ &memarg,
3018
+ WasmValType::V128,
3019
+ LoadKind::Splat(SplatLoadKind::S64),
3020
+ )
3021
+ }
3022
+
3023
+ fn visit_i8x16_splat(&mut self) -> Self::Output {
3024
+ self.masm.splat(&mut self.context, SplatKind::I8x16)
3025
+ }
3026
+
3027
+ fn visit_i16x8_splat(&mut self) -> Self::Output {
3028
+ self.masm.splat(&mut self.context, SplatKind::I16x8)
3029
+ }
3030
+
3031
+ fn visit_i32x4_splat(&mut self) -> Self::Output {
3032
+ self.masm.splat(&mut self.context, SplatKind::I32x4)
3033
+ }
3034
+
3035
+ fn visit_i64x2_splat(&mut self) -> Self::Output {
3036
+ self.masm.splat(&mut self.context, SplatKind::I64x2)
3037
+ }
3038
+
3039
+ fn visit_f32x4_splat(&mut self) -> Self::Output {
3040
+ self.masm.splat(&mut self.context, SplatKind::F32x4)
3041
+ }
3042
+
3043
+ fn visit_f64x2_splat(&mut self) -> Self::Output {
3044
+ self.masm.splat(&mut self.context, SplatKind::F64x2)
3045
+ }
3046
+
3047
+ fn visit_i8x16_shuffle(&mut self, lanes: [u8; 16]) -> Self::Output {
3048
+ let rhs = self.context.pop_to_reg(self.masm, None)?;
3049
+ let lhs = self.context.pop_to_reg(self.masm, None)?;
3050
+ self.masm
3051
+ .shuffle(writable!(lhs.into()), lhs.into(), rhs.into(), lanes)?;
3052
+ self.context.stack.push(TypedReg::v128(lhs.into()).into());
3053
+ self.context.free_reg(rhs);
3054
+ Ok(())
3055
+ }
3056
+
3057
+ fn visit_i8x16_swizzle(&mut self) -> Self::Output {
3058
+ let rhs = self.context.pop_to_reg(self.masm, None)?;
3059
+ let lhs = self.context.pop_to_reg(self.masm, None)?;
3060
+ self.masm
3061
+ .swizzle(writable!(lhs.into()), lhs.into(), rhs.into())?;
3062
+ self.context.stack.push(TypedReg::v128(lhs.into()).into());
3063
+ self.context.free_reg(rhs);
3064
+ Ok(())
3065
+ }
3066
+
3067
+ fn visit_i8x16_extract_lane_s(&mut self, lane: u8) -> Self::Output {
3068
+ self.context.extract_lane_op(
3069
+ self.masm,
3070
+ ExtractLaneKind::I8x16S,
3071
+ |masm, src, dst, kind| masm.extract_lane(src, dst, lane, kind),
3072
+ )
3073
+ }
3074
+
3075
+ fn visit_i8x16_extract_lane_u(&mut self, lane: u8) -> Self::Output {
3076
+ self.context.extract_lane_op(
3077
+ self.masm,
3078
+ ExtractLaneKind::I8x16U,
3079
+ |masm, src, dst, kind| masm.extract_lane(src, dst, lane, kind),
3080
+ )
3081
+ }
3082
+
3083
+ fn visit_i16x8_extract_lane_s(&mut self, lane: u8) -> Self::Output {
3084
+ self.context.extract_lane_op(
3085
+ self.masm,
3086
+ ExtractLaneKind::I16x8S,
3087
+ |masm, src, dst, kind| masm.extract_lane(src, dst, lane, kind),
3088
+ )
3089
+ }
3090
+
3091
+ fn visit_i16x8_extract_lane_u(&mut self, lane: u8) -> Self::Output {
3092
+ self.context.extract_lane_op(
3093
+ self.masm,
3094
+ ExtractLaneKind::I16x8U,
3095
+ |masm, src, dst, kind| masm.extract_lane(src, dst, lane, kind),
3096
+ )
3097
+ }
3098
+
3099
+ fn visit_i32x4_extract_lane(&mut self, lane: u8) -> Self::Output {
3100
+ self.context
3101
+ .extract_lane_op(self.masm, ExtractLaneKind::I32x4, |masm, src, dst, kind| {
3102
+ masm.extract_lane(src, dst, lane, kind)
3103
+ })
3104
+ }
3105
+
3106
+ fn visit_i64x2_extract_lane(&mut self, lane: u8) -> Self::Output {
3107
+ self.context
3108
+ .extract_lane_op(self.masm, ExtractLaneKind::I64x2, |masm, src, dst, kind| {
3109
+ masm.extract_lane(src, dst, lane, kind)
3110
+ })
3111
+ }
3112
+
3113
+ fn visit_f32x4_extract_lane(&mut self, lane: u8) -> Self::Output {
3114
+ self.context
3115
+ .extract_lane_op(self.masm, ExtractLaneKind::F32x4, |masm, src, dst, kind| {
3116
+ masm.extract_lane(src, dst, lane, kind)
3117
+ })
3118
+ }
3119
+
3120
+ fn visit_f64x2_extract_lane(&mut self, lane: u8) -> Self::Output {
3121
+ self.context
3122
+ .extract_lane_op(self.masm, ExtractLaneKind::F64x2, |masm, src, dst, kind| {
3123
+ masm.extract_lane(src, dst, lane, kind)
3124
+ })
3125
+ }
3126
+
3127
+ fn visit_i8x16_eq(&mut self) -> Self::Output {
3128
+ self.context
3129
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3130
+ masm.v128_eq(writable!(dst), dst, src, VectorEqualityKind::I8x16)?;
3131
+ Ok(TypedReg::v128(dst))
3132
+ })
3133
+ }
3134
+
3135
+ fn visit_i16x8_eq(&mut self) -> Self::Output {
3136
+ self.context
3137
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3138
+ masm.v128_eq(writable!(dst), dst, src, VectorEqualityKind::I16x8)?;
3139
+ Ok(TypedReg::v128(dst))
3140
+ })
3141
+ }
3142
+
3143
+ fn visit_i32x4_eq(&mut self) -> Self::Output {
3144
+ self.context
3145
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3146
+ masm.v128_eq(writable!(dst), dst, src, VectorEqualityKind::I32x4)?;
3147
+ Ok(TypedReg::v128(dst))
3148
+ })
3149
+ }
3150
+
3151
+ fn visit_i64x2_eq(&mut self) -> Self::Output {
3152
+ self.context
3153
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3154
+ masm.v128_eq(writable!(dst), dst, src, VectorEqualityKind::I64x2)?;
3155
+ Ok(TypedReg::v128(dst))
3156
+ })
3157
+ }
3158
+
3159
+ fn visit_f32x4_eq(&mut self) -> Self::Output {
3160
+ self.context
3161
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3162
+ masm.v128_eq(writable!(dst), dst, src, VectorEqualityKind::F32x4)?;
3163
+ Ok(TypedReg::v128(dst))
3164
+ })
3165
+ }
3166
+
3167
+ fn visit_f64x2_eq(&mut self) -> Self::Output {
3168
+ self.context
3169
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3170
+ masm.v128_eq(writable!(dst), dst, src, VectorEqualityKind::F64x2)?;
3171
+ Ok(TypedReg::v128(dst))
3172
+ })
3173
+ }
3174
+
3175
+ fn visit_i8x16_ne(&mut self) -> Self::Output {
3176
+ self.context
3177
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3178
+ masm.v128_ne(writable!(dst), dst, src, VectorEqualityKind::I8x16)?;
3179
+ Ok(TypedReg::v128(dst))
3180
+ })
3181
+ }
3182
+
3183
+ fn visit_i16x8_ne(&mut self) -> Self::Output {
3184
+ self.context
3185
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3186
+ masm.v128_ne(writable!(dst), dst, src, VectorEqualityKind::I16x8)?;
3187
+ Ok(TypedReg::v128(dst))
3188
+ })
3189
+ }
3190
+
3191
+ fn visit_i32x4_ne(&mut self) -> Self::Output {
3192
+ self.context
3193
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3194
+ masm.v128_ne(writable!(dst), dst, src, VectorEqualityKind::I32x4)?;
3195
+ Ok(TypedReg::v128(dst))
3196
+ })
3197
+ }
3198
+
3199
+ fn visit_i64x2_ne(&mut self) -> Self::Output {
3200
+ self.context
3201
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3202
+ masm.v128_ne(writable!(dst), dst, src, VectorEqualityKind::I64x2)?;
3203
+ Ok(TypedReg::v128(dst))
3204
+ })
3205
+ }
3206
+
3207
+ fn visit_f32x4_ne(&mut self) -> Self::Output {
3208
+ self.context
3209
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3210
+ masm.v128_ne(writable!(dst), dst, src, VectorEqualityKind::F32x4)?;
3211
+ Ok(TypedReg::v128(dst))
3212
+ })
3213
+ }
3214
+
3215
+ fn visit_f64x2_ne(&mut self) -> Self::Output {
3216
+ self.context
3217
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3218
+ masm.v128_ne(writable!(dst), dst, src, VectorEqualityKind::F64x2)?;
3219
+ Ok(TypedReg::v128(dst))
3220
+ })
3221
+ }
3222
+
3223
+ fn visit_i8x16_lt_s(&mut self) -> Self::Output {
3224
+ self.context
3225
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3226
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::I8x16S)?;
3227
+ Ok(TypedReg::v128(dst))
3228
+ })
3229
+ }
3230
+
3231
+ fn visit_i8x16_lt_u(&mut self) -> Self::Output {
3232
+ self.context
3233
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3234
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::I8x16U)?;
3235
+ Ok(TypedReg::v128(dst))
3236
+ })
3237
+ }
3238
+
3239
+ fn visit_i16x8_lt_s(&mut self) -> Self::Output {
3240
+ self.context
3241
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3242
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::I16x8S)?;
3243
+ Ok(TypedReg::v128(dst))
3244
+ })
3245
+ }
3246
+
3247
+ fn visit_i16x8_lt_u(&mut self) -> Self::Output {
3248
+ self.context
3249
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3250
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::I16x8U)?;
3251
+ Ok(TypedReg::v128(dst))
3252
+ })
3253
+ }
3254
+
3255
+ fn visit_i32x4_lt_s(&mut self) -> Self::Output {
3256
+ self.context
3257
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3258
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::I32x4S)?;
3259
+ Ok(TypedReg::v128(dst))
3260
+ })
3261
+ }
3262
+
3263
+ fn visit_i32x4_lt_u(&mut self) -> Self::Output {
3264
+ self.context
3265
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3266
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::I32x4U)?;
3267
+ Ok(TypedReg::v128(dst))
3268
+ })
3269
+ }
3270
+
3271
+ fn visit_i64x2_lt_s(&mut self) -> Self::Output {
3272
+ self.context
3273
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3274
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::I64x2S)?;
3275
+ Ok(TypedReg::v128(dst))
3276
+ })
3277
+ }
3278
+
3279
+ fn visit_f32x4_lt(&mut self) -> Self::Output {
3280
+ self.context
3281
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3282
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::F32x4)?;
3283
+ Ok(TypedReg::v128(dst))
3284
+ })
3285
+ }
3286
+
3287
+ fn visit_f64x2_lt(&mut self) -> Self::Output {
3288
+ self.context
3289
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3290
+ masm.v128_lt(writable!(dst), dst, src, VectorCompareKind::F64x2)?;
3291
+ Ok(TypedReg::v128(dst))
3292
+ })
3293
+ }
3294
+
3295
+ fn visit_i8x16_le_s(&mut self) -> Self::Output {
3296
+ self.context
3297
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3298
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::I8x16S)?;
3299
+ Ok(TypedReg::v128(dst))
3300
+ })
3301
+ }
3302
+
3303
+ fn visit_i8x16_le_u(&mut self) -> Self::Output {
3304
+ self.context
3305
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3306
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::I8x16U)?;
3307
+ Ok(TypedReg::v128(dst))
3308
+ })
3309
+ }
3310
+
3311
+ fn visit_i16x8_le_s(&mut self) -> Self::Output {
3312
+ self.context
3313
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3314
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::I16x8S)?;
3315
+ Ok(TypedReg::v128(dst))
3316
+ })
3317
+ }
3318
+
3319
+ fn visit_i16x8_le_u(&mut self) -> Self::Output {
3320
+ self.context
3321
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3322
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::I16x8U)?;
3323
+ Ok(TypedReg::v128(dst))
3324
+ })
3325
+ }
3326
+
3327
+ fn visit_i32x4_le_s(&mut self) -> Self::Output {
3328
+ self.context
3329
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3330
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::I32x4S)?;
3331
+ Ok(TypedReg::v128(dst))
3332
+ })
3333
+ }
3334
+
3335
+ fn visit_i32x4_le_u(&mut self) -> Self::Output {
3336
+ self.context
3337
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3338
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::I32x4U)?;
3339
+ Ok(TypedReg::v128(dst))
3340
+ })
3341
+ }
3342
+
3343
+ fn visit_i64x2_le_s(&mut self) -> Self::Output {
3344
+ self.context
3345
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3346
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::I64x2S)?;
3347
+ Ok(TypedReg::v128(dst))
3348
+ })
3349
+ }
3350
+
3351
+ fn visit_f32x4_le(&mut self) -> Self::Output {
3352
+ self.context
3353
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3354
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::F32x4)?;
3355
+ Ok(TypedReg::v128(dst))
3356
+ })
3357
+ }
3358
+
3359
+ fn visit_f64x2_le(&mut self) -> Self::Output {
3360
+ self.context
3361
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3362
+ masm.v128_le(writable!(dst), dst, src, VectorCompareKind::F64x2)?;
3363
+ Ok(TypedReg::v128(dst))
3364
+ })
3365
+ }
3366
+
3367
+ fn visit_i8x16_gt_s(&mut self) -> Self::Output {
3368
+ self.context
3369
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3370
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::I8x16S)?;
3371
+ Ok(TypedReg::v128(dst))
3372
+ })
3373
+ }
3374
+
3375
+ fn visit_i8x16_gt_u(&mut self) -> Self::Output {
3376
+ self.context
3377
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3378
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::I8x16U)?;
3379
+ Ok(TypedReg::v128(dst))
3380
+ })
3381
+ }
3382
+
3383
+ fn visit_i16x8_gt_s(&mut self) -> Self::Output {
3384
+ self.context
3385
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3386
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::I16x8S)?;
3387
+ Ok(TypedReg::v128(dst))
3388
+ })
3389
+ }
3390
+
3391
+ fn visit_i16x8_gt_u(&mut self) -> Self::Output {
3392
+ self.context
3393
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3394
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::I16x8U)?;
3395
+ Ok(TypedReg::v128(dst))
3396
+ })
3397
+ }
3398
+
3399
+ fn visit_i32x4_gt_s(&mut self) -> Self::Output {
3400
+ self.context
3401
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3402
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::I32x4S)?;
3403
+ Ok(TypedReg::v128(dst))
3404
+ })
3405
+ }
3406
+
3407
+ fn visit_i32x4_gt_u(&mut self) -> Self::Output {
3408
+ self.context
3409
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3410
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::I32x4U)?;
3411
+ Ok(TypedReg::v128(dst))
3412
+ })
3413
+ }
3414
+
3415
+ fn visit_i64x2_gt_s(&mut self) -> Self::Output {
3416
+ self.context
3417
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3418
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::I64x2S)?;
3419
+ Ok(TypedReg::v128(dst))
3420
+ })
3421
+ }
3422
+
3423
+ fn visit_f32x4_gt(&mut self) -> Self::Output {
3424
+ self.context
3425
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3426
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::F32x4)?;
3427
+ Ok(TypedReg::v128(dst))
3428
+ })
3429
+ }
3430
+
3431
+ fn visit_f64x2_gt(&mut self) -> Self::Output {
3432
+ self.context
3433
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3434
+ masm.v128_gt(writable!(dst), dst, src, VectorCompareKind::F64x2)?;
3435
+ Ok(TypedReg::v128(dst))
3436
+ })
3437
+ }
3438
+
3439
+ fn visit_i8x16_ge_s(&mut self) -> Self::Output {
3440
+ self.context
3441
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3442
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::I8x16S)?;
3443
+ Ok(TypedReg::v128(dst))
3444
+ })
3445
+ }
3446
+
3447
+ fn visit_i8x16_ge_u(&mut self) -> Self::Output {
3448
+ self.context
3449
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3450
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::I8x16U)?;
3451
+ Ok(TypedReg::v128(dst))
3452
+ })
3453
+ }
3454
+
3455
+ fn visit_i16x8_ge_s(&mut self) -> Self::Output {
3456
+ self.context
3457
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3458
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::I16x8S)?;
3459
+ Ok(TypedReg::v128(dst))
3460
+ })
3461
+ }
3462
+
3463
+ fn visit_i16x8_ge_u(&mut self) -> Self::Output {
3464
+ self.context
3465
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3466
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::I16x8U)?;
3467
+ Ok(TypedReg::v128(dst))
3468
+ })
3469
+ }
3470
+
3471
+ fn visit_i32x4_ge_s(&mut self) -> Self::Output {
3472
+ self.context
3473
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3474
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::I32x4S)?;
3475
+ Ok(TypedReg::v128(dst))
3476
+ })
3477
+ }
3478
+
3479
+ fn visit_i32x4_ge_u(&mut self) -> Self::Output {
3480
+ self.context
3481
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3482
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::I32x4U)?;
3483
+ Ok(TypedReg::v128(dst))
3484
+ })
3485
+ }
3486
+
3487
+ fn visit_i64x2_ge_s(&mut self) -> Self::Output {
3488
+ self.context
3489
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3490
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::I64x2S)?;
3491
+ Ok(TypedReg::v128(dst))
3492
+ })
3493
+ }
3494
+
3495
+ fn visit_f32x4_ge(&mut self) -> Self::Output {
3496
+ self.context
3497
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3498
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::F32x4)?;
3499
+ Ok(TypedReg::v128(dst))
3500
+ })
3501
+ }
3502
+
3503
+ fn visit_f64x2_ge(&mut self) -> Self::Output {
3504
+ self.context
3505
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3506
+ masm.v128_ge(writable!(dst), dst, src, VectorCompareKind::F64x2)?;
3507
+ Ok(TypedReg::v128(dst))
3508
+ })
3509
+ }
3510
+
3511
+ fn visit_i8x16_replace_lane(&mut self, lane: u8) -> Self::Output {
3512
+ self.context
3513
+ .replace_lane_op(self.masm, ReplaceLaneKind::I8x16, |masm, src, dst, kind| {
3514
+ masm.replace_lane(src, dst, lane, kind)
3515
+ })
3516
+ }
3517
+
3518
+ fn visit_i16x8_replace_lane(&mut self, lane: u8) -> Self::Output {
3519
+ self.context
3520
+ .replace_lane_op(self.masm, ReplaceLaneKind::I16x8, |masm, src, dst, kind| {
3521
+ masm.replace_lane(src, dst, lane, kind)
3522
+ })
3523
+ }
3524
+
3525
+ fn visit_i32x4_replace_lane(&mut self, lane: u8) -> Self::Output {
3526
+ self.context
3527
+ .replace_lane_op(self.masm, ReplaceLaneKind::I32x4, |masm, src, dst, kind| {
3528
+ masm.replace_lane(src, dst, lane, kind)
3529
+ })
3530
+ }
3531
+
3532
+ fn visit_i64x2_replace_lane(&mut self, lane: u8) -> Self::Output {
3533
+ self.context
3534
+ .replace_lane_op(self.masm, ReplaceLaneKind::I64x2, |masm, src, dst, kind| {
3535
+ masm.replace_lane(src, dst, lane, kind)
3536
+ })
3537
+ }
3538
+
3539
+ fn visit_f32x4_replace_lane(&mut self, lane: u8) -> Self::Output {
3540
+ self.context
3541
+ .replace_lane_op(self.masm, ReplaceLaneKind::F32x4, |masm, src, dst, kind| {
3542
+ masm.replace_lane(src, dst, lane, kind)
3543
+ })
3544
+ }
3545
+
3546
+ fn visit_f64x2_replace_lane(&mut self, lane: u8) -> Self::Output {
3547
+ self.context
3548
+ .replace_lane_op(self.masm, ReplaceLaneKind::F64x2, |masm, src, dst, kind| {
3549
+ masm.replace_lane(src, dst, lane, kind)
3550
+ })
3551
+ }
3552
+
3553
+ fn visit_v128_not(&mut self) -> Self::Output {
3554
+ self.context.unop(self.masm, |masm, reg| {
3555
+ masm.v128_not(writable!(reg))?;
3556
+ Ok(TypedReg::new(WasmValType::V128, reg))
3557
+ })
3558
+ }
3559
+
3560
+ fn visit_v128_and(&mut self) -> Self::Output {
3561
+ self.context
3562
+ .binop(self.masm, OperandSize::S128, |masm, dst, src, _size| {
3563
+ masm.v128_and(dst, src, writable!(dst))?;
3564
+ Ok(TypedReg::new(WasmValType::V128, dst))
3565
+ })
3566
+ }
3567
+
3568
+ fn visit_v128_andnot(&mut self) -> Self::Output {
3569
+ self.context
3570
+ .binop(self.masm, OperandSize::S128, |masm, dst, src, _size| {
3571
+ // careful here: and_not is *not* commutative: dst = !src1 & src2
3572
+ masm.v128_and_not(src, dst, writable!(dst))?;
3573
+ Ok(TypedReg::new(WasmValType::V128, dst))
3574
+ })
3575
+ }
3576
+
3577
+ fn visit_v128_or(&mut self) -> Self::Output {
3578
+ self.context
3579
+ .binop(self.masm, OperandSize::S128, |masm, dst, src, _size| {
3580
+ // careful here: and_not is *not* commutative: dst = !src1 & src2
3581
+ masm.v128_or(src, dst, writable!(dst))?;
3582
+ Ok(TypedReg::new(WasmValType::V128, dst))
3583
+ })
3584
+ }
3585
+
3586
+ fn visit_v128_xor(&mut self) -> Self::Output {
3587
+ self.context
3588
+ .binop(self.masm, OperandSize::S128, |masm, dst, src, _size| {
3589
+ // careful here: and_not is *not* commutative: dst = !src1 & src2
3590
+ masm.v128_xor(src, dst, writable!(dst))?;
3591
+ Ok(TypedReg::new(WasmValType::V128, dst))
3592
+ })
3593
+ }
3594
+
3595
+ fn visit_v128_bitselect(&mut self) -> Self::Output {
3596
+ let mask = self.context.pop_to_reg(self.masm, None)?;
3597
+ let op2 = self.context.pop_to_reg(self.masm, None)?;
3598
+ let op1 = self.context.pop_to_reg(self.masm, None)?;
3599
+ let dst = self.context.any_fpr(self.masm)?;
3600
+
3601
+ // careful here: bitselect is *not* commutative.
3602
+ self.masm
3603
+ .v128_bitselect(op1.reg, op2.reg, mask.reg, writable!(dst))?;
3604
+
3605
+ self.context
3606
+ .stack
3607
+ .push(TypedReg::new(WasmValType::V128, dst).into());
3608
+ self.context.free_reg(op1);
3609
+ self.context.free_reg(op2);
3610
+ self.context.free_reg(mask);
3611
+
3612
+ Ok(())
3613
+ }
3614
+
3615
+ fn visit_v128_any_true(&mut self) -> Self::Output {
3616
+ let src = self.context.pop_to_reg(self.masm, None)?;
3617
+ let dst = self.context.any_gpr(self.masm)?;
3618
+
3619
+ self.masm.v128_any_true(src.reg, writable!(dst))?;
3620
+
3621
+ self.context
3622
+ .stack
3623
+ .push(TypedReg::new(WasmValType::I32, dst).into());
3624
+ self.context.free_reg(src);
3625
+
3626
+ Ok(())
3627
+ }
3628
+
3629
+ fn visit_v128_load8_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3630
+ self.emit_wasm_load(
3631
+ &arg,
3632
+ WasmValType::V128,
3633
+ LoadKind::vector_lane(lane, OperandSize::S8),
3634
+ )
3635
+ }
3636
+
3637
+ fn visit_v128_load16_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3638
+ self.emit_wasm_load(
3639
+ &arg,
3640
+ WasmValType::V128,
3641
+ LoadKind::vector_lane(lane, OperandSize::S16),
3642
+ )
3643
+ }
3644
+
3645
+ fn visit_v128_load32_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3646
+ self.emit_wasm_load(
3647
+ &arg,
3648
+ WasmValType::V128,
3649
+ LoadKind::vector_lane(lane, OperandSize::S32),
3650
+ )
3651
+ }
3652
+
3653
+ fn visit_v128_load64_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3654
+ self.emit_wasm_load(
3655
+ &arg,
3656
+ WasmValType::V128,
3657
+ LoadKind::vector_lane(lane, OperandSize::S64),
3658
+ )
3659
+ }
3660
+
3661
+ fn visit_v128_store8_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3662
+ self.emit_wasm_store(&arg, StoreKind::vector_lane(lane, OperandSize::S8))
3663
+ }
3664
+
3665
+ fn visit_v128_store16_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3666
+ self.emit_wasm_store(&arg, StoreKind::vector_lane(lane, OperandSize::S16))
3667
+ }
3668
+
3669
+ fn visit_v128_store32_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3670
+ self.emit_wasm_store(&arg, StoreKind::vector_lane(lane, OperandSize::S32))
3671
+ }
3672
+
3673
+ fn visit_v128_store64_lane(&mut self, arg: MemArg, lane: u8) -> Self::Output {
3674
+ self.emit_wasm_store(&arg, StoreKind::vector_lane(lane, OperandSize::S64))
3675
+ }
3676
+
3677
+ fn visit_f32x4_convert_i32x4_s(&mut self) -> Self::Output {
3678
+ self.context.unop(self.masm, |masm, reg| {
3679
+ masm.v128_convert(reg, writable!(reg), V128ConvertKind::I32x4S)?;
3680
+ Ok(TypedReg::v128(reg))
3681
+ })
3682
+ }
3683
+
3684
+ fn visit_f32x4_convert_i32x4_u(&mut self) -> Self::Output {
3685
+ self.context.unop(self.masm, |masm, reg| {
3686
+ masm.v128_convert(reg, writable!(reg), V128ConvertKind::I32x4U)?;
3687
+ Ok(TypedReg::v128(reg))
3688
+ })
3689
+ }
3690
+
3691
+ fn visit_f64x2_convert_low_i32x4_s(&mut self) -> Self::Output {
3692
+ self.context.unop(self.masm, |masm, reg| {
3693
+ masm.v128_convert(reg, writable!(reg), V128ConvertKind::I32x4LowS)?;
3694
+ Ok(TypedReg::v128(reg))
3695
+ })
3696
+ }
3697
+
3698
+ fn visit_f64x2_convert_low_i32x4_u(&mut self) -> Self::Output {
3699
+ self.context.unop(self.masm, |masm, reg| {
3700
+ masm.v128_convert(reg, writable!(reg), V128ConvertKind::I32x4LowU)?;
3701
+ Ok(TypedReg::v128(reg))
3702
+ })
3703
+ }
3704
+
3705
+ fn visit_i8x16_narrow_i16x8_s(&mut self) -> Self::Output {
3706
+ self.context
3707
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3708
+ masm.v128_narrow(dst, src, writable!(dst), V128NarrowKind::I16x8S)?;
3709
+ Ok(TypedReg::v128(dst))
3710
+ })
3711
+ }
3712
+
3713
+ fn visit_i8x16_narrow_i16x8_u(&mut self) -> Self::Output {
3714
+ self.context
3715
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3716
+ masm.v128_narrow(dst, src, writable!(dst), V128NarrowKind::I16x8U)?;
3717
+ Ok(TypedReg::v128(dst))
3718
+ })
3719
+ }
3720
+
3721
+ fn visit_i16x8_narrow_i32x4_s(&mut self) -> Self::Output {
3722
+ self.context
3723
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3724
+ masm.v128_narrow(dst, src, writable!(dst), V128NarrowKind::I32x4S)?;
3725
+ Ok(TypedReg::v128(dst))
3726
+ })
3727
+ }
3728
+
3729
+ fn visit_i16x8_narrow_i32x4_u(&mut self) -> Self::Output {
3730
+ self.context
3731
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3732
+ masm.v128_narrow(dst, src, writable!(dst), V128NarrowKind::I32x4U)?;
3733
+ Ok(TypedReg::v128(dst))
3734
+ })
3735
+ }
3736
+
3737
+ fn visit_f32x4_demote_f64x2_zero(&mut self) -> Self::Output {
3738
+ self.context.unop(self.masm, |masm, reg| {
3739
+ masm.v128_demote(reg, writable!(reg))?;
3740
+ Ok(TypedReg::v128(reg))
3741
+ })
3742
+ }
3743
+
3744
+ fn visit_f64x2_promote_low_f32x4(&mut self) -> Self::Output {
3745
+ self.context.unop(self.masm, |masm, reg| {
3746
+ masm.v128_promote(reg, writable!(reg))?;
3747
+ Ok(TypedReg::v128(reg))
3748
+ })
3749
+ }
3750
+
3751
+ fn visit_i16x8_extend_low_i8x16_s(&mut self) -> Self::Output {
3752
+ self.context.unop(self.masm, |masm, reg| {
3753
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::LowI8x16S)?;
3754
+ Ok(TypedReg::v128(reg))
3755
+ })
3756
+ }
3757
+
3758
+ fn visit_i16x8_extend_high_i8x16_s(&mut self) -> Self::Output {
3759
+ self.context.unop(self.masm, |masm, reg| {
3760
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::HighI8x16S)?;
3761
+ Ok(TypedReg::v128(reg))
3762
+ })
3763
+ }
3764
+
3765
+ fn visit_i16x8_extend_low_i8x16_u(&mut self) -> Self::Output {
3766
+ self.context.unop(self.masm, |masm, reg| {
3767
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::LowI8x16U)?;
3768
+ Ok(TypedReg::v128(reg))
3769
+ })
3770
+ }
3771
+
3772
+ fn visit_i16x8_extend_high_i8x16_u(&mut self) -> Self::Output {
3773
+ self.context.unop(self.masm, |masm, reg| {
3774
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::HighI8x16U)?;
3775
+ Ok(TypedReg::v128(reg))
3776
+ })
3777
+ }
3778
+
3779
+ fn visit_i32x4_extend_low_i16x8_s(&mut self) -> Self::Output {
3780
+ self.context.unop(self.masm, |masm, reg| {
3781
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::LowI16x8S)?;
3782
+ Ok(TypedReg::v128(reg))
3783
+ })
3784
+ }
3785
+
3786
+ fn visit_i32x4_extend_high_i16x8_s(&mut self) -> Self::Output {
3787
+ self.context.unop(self.masm, |masm, reg| {
3788
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::HighI16x8S)?;
3789
+ Ok(TypedReg::v128(reg))
3790
+ })
3791
+ }
3792
+
3793
+ fn visit_i32x4_extend_low_i16x8_u(&mut self) -> Self::Output {
3794
+ self.context.unop(self.masm, |masm, reg| {
3795
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::LowI16x8U)?;
3796
+ Ok(TypedReg::v128(reg))
3797
+ })
3798
+ }
3799
+
3800
+ fn visit_i32x4_extend_high_i16x8_u(&mut self) -> Self::Output {
3801
+ self.context.unop(self.masm, |masm, reg| {
3802
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::HighI16x8U)?;
3803
+ Ok(TypedReg::v128(reg))
3804
+ })
3805
+ }
3806
+
3807
+ fn visit_i64x2_extend_low_i32x4_s(&mut self) -> Self::Output {
3808
+ self.context.unop(self.masm, |masm, reg| {
3809
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::LowI32x4S)?;
3810
+ Ok(TypedReg::v128(reg))
3811
+ })
3812
+ }
3813
+
3814
+ fn visit_i64x2_extend_high_i32x4_s(&mut self) -> Self::Output {
3815
+ self.context.unop(self.masm, |masm, reg| {
3816
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::HighI32x4S)?;
3817
+ Ok(TypedReg::v128(reg))
3818
+ })
3819
+ }
3820
+
3821
+ fn visit_i64x2_extend_low_i32x4_u(&mut self) -> Self::Output {
3822
+ self.context.unop(self.masm, |masm, reg| {
3823
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::LowI32x4U)?;
3824
+ Ok(TypedReg::v128(reg))
3825
+ })
3826
+ }
3827
+
3828
+ fn visit_i64x2_extend_high_i32x4_u(&mut self) -> Self::Output {
3829
+ self.context.unop(self.masm, |masm, reg| {
3830
+ masm.v128_extend(reg, writable!(reg), V128ExtendKind::HighI32x4U)?;
3831
+ Ok(TypedReg::v128(reg))
3832
+ })
3833
+ }
3834
+
3835
+ fn visit_i8x16_add(&mut self) -> Self::Output {
3836
+ self.context
3837
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3838
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I8x16)?;
3839
+ Ok(TypedReg::new(WasmValType::V128, dst))
3840
+ })
3841
+ }
3842
+
3843
+ fn visit_i16x8_add(&mut self) -> Self::Output {
3844
+ self.context
3845
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3846
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I16x8)?;
3847
+ Ok(TypedReg::new(WasmValType::V128, dst))
3848
+ })
3849
+ }
3850
+
3851
+ fn visit_i32x4_add(&mut self) -> Self::Output {
3852
+ self.context
3853
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3854
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I32x4)?;
3855
+ Ok(TypedReg::new(WasmValType::V128, dst))
3856
+ })
3857
+ }
3858
+
3859
+ fn visit_i64x2_add(&mut self) -> Self::Output {
3860
+ self.context
3861
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3862
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I64x2)?;
3863
+ Ok(TypedReg::new(WasmValType::V128, dst))
3864
+ })
3865
+ }
3866
+
3867
+ fn visit_i8x16_sub(&mut self) -> Self::Output {
3868
+ self.context
3869
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3870
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I8x16)?;
3871
+ Ok(TypedReg::new(WasmValType::V128, dst))
3872
+ })
3873
+ }
3874
+
3875
+ fn visit_i16x8_sub(&mut self) -> Self::Output {
3876
+ self.context
3877
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3878
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I16x8)?;
3879
+ Ok(TypedReg::new(WasmValType::V128, dst))
3880
+ })
3881
+ }
3882
+
3883
+ fn visit_i32x4_sub(&mut self) -> Self::Output {
3884
+ self.context
3885
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
3886
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I32x4)?;
3887
+ Ok(TypedReg::new(WasmValType::V128, dst))
3888
+ })
3889
+ }
3890
+
3891
+ fn visit_i64x2_sub(&mut self) -> Self::Output {
3892
+ self.context
3893
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
3894
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I64x2)?;
3895
+ Ok(TypedReg::new(WasmValType::V128, dst))
3896
+ })
3897
+ }
3898
+
3899
+ fn visit_i16x8_mul(&mut self) -> Self::Output {
3900
+ self.masm.v128_mul(&mut self.context, V128MulKind::I16x8)
3901
+ }
3902
+
3903
+ fn visit_i32x4_mul(&mut self) -> Self::Output {
3904
+ self.masm.v128_mul(&mut self.context, V128MulKind::I32x4)
3905
+ }
3906
+
3907
+ fn visit_i64x2_mul(&mut self) -> Self::Output {
3908
+ self.masm.v128_mul(&mut self.context, V128MulKind::I64x2)
3909
+ }
3910
+
3911
+ fn visit_i8x16_add_sat_s(&mut self) -> Self::Output {
3912
+ self.context
3913
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3914
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I8x16SatS)?;
3915
+ Ok(TypedReg::new(WasmValType::V128, dst))
3916
+ })
3917
+ }
3918
+
3919
+ fn visit_i16x8_add_sat_s(&mut self) -> Self::Output {
3920
+ self.context
3921
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3922
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I16x8SatS)?;
3923
+ Ok(TypedReg::new(WasmValType::V128, dst))
3924
+ })
3925
+ }
3926
+
3927
+ fn visit_i8x16_add_sat_u(&mut self) -> Self::Output {
3928
+ self.context
3929
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3930
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I8x16SatU)?;
3931
+ Ok(TypedReg::new(WasmValType::V128, dst))
3932
+ })
3933
+ }
3934
+
3935
+ fn visit_i16x8_add_sat_u(&mut self) -> Self::Output {
3936
+ self.context
3937
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3938
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::I16x8SatU)?;
3939
+ Ok(TypedReg::new(WasmValType::V128, dst))
3940
+ })
3941
+ }
3942
+
3943
+ fn visit_i8x16_sub_sat_s(&mut self) -> Self::Output {
3944
+ self.context
3945
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3946
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I8x16SatS)?;
3947
+ Ok(TypedReg::new(WasmValType::V128, dst))
3948
+ })
3949
+ }
3950
+
3951
+ fn visit_i16x8_sub_sat_s(&mut self) -> Self::Output {
3952
+ self.context
3953
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3954
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I16x8SatS)?;
3955
+ Ok(TypedReg::new(WasmValType::V128, dst))
3956
+ })
3957
+ }
3958
+
3959
+ fn visit_i8x16_sub_sat_u(&mut self) -> Self::Output {
3960
+ self.context
3961
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
3962
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I8x16SatU)?;
3963
+ Ok(TypedReg::new(WasmValType::V128, dst))
3964
+ })
3965
+ }
3966
+
3967
+ fn visit_i16x8_sub_sat_u(&mut self) -> Self::Output {
3968
+ self.context
3969
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
3970
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::I16x8SatU)?;
3971
+ Ok(TypedReg::new(WasmValType::V128, dst))
3972
+ })
3973
+ }
3974
+
3975
+ fn visit_i8x16_abs(&mut self) -> Self::Output {
3976
+ self.context.unop(self.masm, |masm, reg| {
3977
+ masm.v128_abs(reg, writable!(reg), V128AbsKind::I8x16)?;
3978
+ Ok(TypedReg::new(WasmValType::V128, reg))
3979
+ })
3980
+ }
3981
+
3982
+ fn visit_i16x8_abs(&mut self) -> Self::Output {
3983
+ self.context.unop(self.masm, |masm, reg| {
3984
+ masm.v128_abs(reg, writable!(reg), V128AbsKind::I16x8)?;
3985
+ Ok(TypedReg::new(WasmValType::V128, reg))
3986
+ })
3987
+ }
3988
+
3989
+ fn visit_i32x4_abs(&mut self) -> Self::Output {
3990
+ self.context.unop(self.masm, |masm, reg| {
3991
+ masm.v128_abs(reg, writable!(reg), V128AbsKind::I32x4)?;
3992
+ Ok(TypedReg::new(WasmValType::V128, reg))
3993
+ })
3994
+ }
3995
+
3996
+ fn visit_i64x2_abs(&mut self) -> Self::Output {
3997
+ self.context.unop(self.masm, |masm, reg| {
3998
+ masm.v128_abs(reg, writable!(reg), V128AbsKind::I64x2)?;
3999
+ Ok(TypedReg::new(WasmValType::V128, reg))
4000
+ })
4001
+ }
4002
+
4003
+ fn visit_f32x4_abs(&mut self) -> Self::Output {
4004
+ self.context.unop(self.masm, |masm, reg| {
4005
+ masm.v128_abs(reg, writable!(reg), V128AbsKind::F32x4)?;
4006
+ Ok(TypedReg::new(WasmValType::V128, reg))
4007
+ })
4008
+ }
4009
+
4010
+ fn visit_f64x2_abs(&mut self) -> Self::Output {
4011
+ self.context.unop(self.masm, |masm, reg| {
4012
+ masm.v128_abs(reg, writable!(reg), V128AbsKind::F64x2)?;
4013
+ Ok(TypedReg::new(WasmValType::V128, reg))
4014
+ })
4015
+ }
4016
+
4017
+ fn visit_i8x16_neg(&mut self) -> Self::Output {
4018
+ self.context.unop(self.masm, |masm, op| {
4019
+ masm.v128_neg(writable!(op), V128NegKind::I8x16)?;
4020
+ Ok(TypedReg::new(WasmValType::V128, op))
4021
+ })
4022
+ }
4023
+
4024
+ fn visit_i16x8_neg(&mut self) -> Self::Output {
4025
+ self.context.unop(self.masm, |masm, op| {
4026
+ masm.v128_neg(writable!(op), V128NegKind::I16x8)?;
4027
+ Ok(TypedReg::new(WasmValType::V128, op))
4028
+ })
4029
+ }
4030
+
4031
+ fn visit_i32x4_neg(&mut self) -> Self::Output {
4032
+ self.context.unop(self.masm, |masm, op| {
4033
+ masm.v128_neg(writable!(op), V128NegKind::I32x4)?;
4034
+ Ok(TypedReg::new(WasmValType::V128, op))
4035
+ })
4036
+ }
4037
+
4038
+ fn visit_i64x2_neg(&mut self) -> Self::Output {
4039
+ self.context.unop(self.masm, |masm, op| {
4040
+ masm.v128_neg(writable!(op), V128NegKind::I64x2)?;
4041
+ Ok(TypedReg::new(WasmValType::V128, op))
4042
+ })
4043
+ }
4044
+
4045
+ fn visit_i8x16_shl(&mut self) -> Self::Output {
4046
+ self.masm
4047
+ .v128_shift(&mut self.context, OperandSize::S8, ShiftKind::Shl)
4048
+ }
4049
+
4050
+ fn visit_i16x8_shl(&mut self) -> Self::Output {
4051
+ self.masm
4052
+ .v128_shift(&mut self.context, OperandSize::S16, ShiftKind::Shl)
4053
+ }
4054
+
4055
+ fn visit_i32x4_shl(&mut self) -> Self::Output {
4056
+ self.masm
4057
+ .v128_shift(&mut self.context, OperandSize::S32, ShiftKind::Shl)
4058
+ }
4059
+
4060
+ fn visit_i64x2_shl(&mut self) -> Self::Output {
4061
+ self.masm
4062
+ .v128_shift(&mut self.context, OperandSize::S64, ShiftKind::Shl)
4063
+ }
4064
+
4065
+ fn visit_i8x16_shr_u(&mut self) -> Self::Output {
4066
+ self.masm
4067
+ .v128_shift(&mut self.context, OperandSize::S8, ShiftKind::ShrU)
4068
+ }
4069
+
4070
+ fn visit_i16x8_shr_u(&mut self) -> Self::Output {
4071
+ self.masm
4072
+ .v128_shift(&mut self.context, OperandSize::S16, ShiftKind::ShrU)
4073
+ }
4074
+
4075
+ fn visit_i32x4_shr_u(&mut self) -> Self::Output {
4076
+ self.masm
4077
+ .v128_shift(&mut self.context, OperandSize::S32, ShiftKind::ShrU)
4078
+ }
4079
+
4080
+ fn visit_i64x2_shr_u(&mut self) -> Self::Output {
4081
+ self.masm
4082
+ .v128_shift(&mut self.context, OperandSize::S64, ShiftKind::ShrU)
4083
+ }
4084
+
4085
+ fn visit_i8x16_shr_s(&mut self) -> Self::Output {
4086
+ self.masm
4087
+ .v128_shift(&mut self.context, OperandSize::S8, ShiftKind::ShrS)
4088
+ }
4089
+
4090
+ fn visit_i16x8_shr_s(&mut self) -> Self::Output {
4091
+ self.masm
4092
+ .v128_shift(&mut self.context, OperandSize::S16, ShiftKind::ShrS)
4093
+ }
4094
+
4095
+ fn visit_i32x4_shr_s(&mut self) -> Self::Output {
4096
+ self.masm
4097
+ .v128_shift(&mut self.context, OperandSize::S32, ShiftKind::ShrS)
4098
+ }
4099
+
4100
+ fn visit_i64x2_shr_s(&mut self) -> Self::Output {
4101
+ self.masm
4102
+ .v128_shift(&mut self.context, OperandSize::S64, ShiftKind::ShrS)
4103
+ }
4104
+
4105
+ fn visit_i16x8_q15mulr_sat_s(&mut self) -> Self::Output {
4106
+ self.context
4107
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, size| {
4108
+ masm.v128_q15mulr_sat_s(dst, src, writable!(dst), size)?;
4109
+ Ok(TypedReg::v128(dst))
4110
+ })
4111
+ }
4112
+
4113
+ fn visit_i8x16_min_s(&mut self) -> Self::Output {
4114
+ self.context
4115
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
4116
+ masm.v128_min(src, dst, writable!(dst), V128MinKind::I8x16S)?;
4117
+ Ok(TypedReg::v128(dst))
4118
+ })
4119
+ }
4120
+
4121
+ fn visit_i8x16_all_true(&mut self) -> Self::Output {
4122
+ self.context.v128_all_true_op(self.masm, |masm, src, dst| {
4123
+ masm.v128_all_true(src, writable!(dst), OperandSize::S8)
4124
+ })
4125
+ }
4126
+
4127
+ fn visit_i16x8_all_true(&mut self) -> Self::Output {
4128
+ self.context.v128_all_true_op(self.masm, |masm, src, dst| {
4129
+ masm.v128_all_true(src, writable!(dst), OperandSize::S16)
4130
+ })
4131
+ }
4132
+
4133
+ fn visit_i32x4_all_true(&mut self) -> Self::Output {
4134
+ self.context.v128_all_true_op(self.masm, |masm, src, dst| {
4135
+ masm.v128_all_true(src, writable!(dst), OperandSize::S32)
4136
+ })
4137
+ }
4138
+
4139
+ fn visit_i64x2_all_true(&mut self) -> Self::Output {
4140
+ self.context.v128_all_true_op(self.masm, |masm, src, dst| {
4141
+ masm.v128_all_true(src, writable!(dst), OperandSize::S64)
4142
+ })
4143
+ }
4144
+
4145
+ fn visit_i8x16_bitmask(&mut self) -> Self::Output {
4146
+ self.context.v128_bitmask_op(self.masm, |masm, src, dst| {
4147
+ masm.v128_bitmask(src, writable!(dst), OperandSize::S8)
4148
+ })
4149
+ }
4150
+
4151
+ fn visit_i16x8_bitmask(&mut self) -> Self::Output {
4152
+ self.context.v128_bitmask_op(self.masm, |masm, src, dst| {
4153
+ masm.v128_bitmask(src, writable!(dst), OperandSize::S16)
4154
+ })
4155
+ }
4156
+
4157
+ fn visit_i32x4_bitmask(&mut self) -> Self::Output {
4158
+ self.context.v128_bitmask_op(self.masm, |masm, src, dst| {
4159
+ masm.v128_bitmask(src, writable!(dst), OperandSize::S32)
4160
+ })
4161
+ }
4162
+
4163
+ fn visit_i64x2_bitmask(&mut self) -> Self::Output {
4164
+ self.context.v128_bitmask_op(self.masm, |masm, src, dst| {
4165
+ masm.v128_bitmask(src, writable!(dst), OperandSize::S64)
4166
+ })
4167
+ }
4168
+
4169
+ fn visit_i32x4_trunc_sat_f32x4_s(&mut self) -> Self::Output {
4170
+ self.masm
4171
+ .v128_trunc(&mut self.context, V128TruncKind::I32x4FromF32x4S)
4172
+ }
4173
+
4174
+ fn visit_i32x4_trunc_sat_f32x4_u(&mut self) -> Self::Output {
4175
+ self.masm
4176
+ .v128_trunc(&mut self.context, V128TruncKind::I32x4FromF32x4U)
4177
+ }
4178
+
4179
+ fn visit_i32x4_trunc_sat_f64x2_s_zero(&mut self) -> Self::Output {
4180
+ self.masm
4181
+ .v128_trunc(&mut self.context, V128TruncKind::I32x4FromF64x2SZero)
4182
+ }
4183
+
4184
+ fn visit_i32x4_trunc_sat_f64x2_u_zero(&mut self) -> Self::Output {
4185
+ self.masm
4186
+ .v128_trunc(&mut self.context, V128TruncKind::I32x4FromF64x2UZero)
4187
+ }
4188
+
4189
+ fn visit_i16x8_min_s(&mut self) -> Self::Output {
4190
+ self.context
4191
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
4192
+ masm.v128_min(src, dst, writable!(dst), V128MinKind::I16x8S)?;
4193
+ Ok(TypedReg::v128(dst))
4194
+ })
4195
+ }
4196
+
4197
+ fn visit_i32x4_dot_i16x8_s(&mut self) -> Self::Output {
4198
+ self.context
4199
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4200
+ masm.v128_dot(dst, src, writable!(dst))?;
4201
+ Ok(TypedReg::v128(dst))
4202
+ })
4203
+ }
4204
+
4205
+ fn visit_i8x16_popcnt(&mut self) -> Self::Output {
4206
+ self.masm.v128_popcnt(&mut self.context)
4207
+ }
4208
+
4209
+ fn visit_i8x16_avgr_u(&mut self) -> Self::Output {
4210
+ self.context
4211
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, size| {
4212
+ masm.v128_avgr(dst, src, writable!(dst), size)?;
4213
+ Ok(TypedReg::v128(dst))
4214
+ })
4215
+ }
4216
+
4217
+ fn visit_i32x4_min_s(&mut self) -> Self::Output {
4218
+ self.context
4219
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4220
+ masm.v128_min(src, dst, writable!(dst), V128MinKind::I32x4S)?;
4221
+ Ok(TypedReg::v128(dst))
4222
+ })
4223
+ }
4224
+
4225
+ fn visit_i8x16_min_u(&mut self) -> Self::Output {
4226
+ self.context
4227
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
4228
+ masm.v128_min(src, dst, writable!(dst), V128MinKind::I8x16U)?;
4229
+ Ok(TypedReg::v128(dst))
4230
+ })
4231
+ }
4232
+
4233
+ fn visit_i16x8_avgr_u(&mut self) -> Self::Output {
4234
+ self.context
4235
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, size| {
4236
+ masm.v128_avgr(dst, src, writable!(dst), size)?;
4237
+ Ok(TypedReg::v128(dst))
4238
+ })
4239
+ }
4240
+
4241
+ fn visit_i16x8_min_u(&mut self) -> Self::Output {
4242
+ self.context
4243
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
4244
+ masm.v128_min(src, dst, writable!(dst), V128MinKind::I16x8U)?;
4245
+ Ok(TypedReg::v128(dst))
4246
+ })
4247
+ }
4248
+
4249
+ fn visit_i32x4_min_u(&mut self) -> Self::Output {
4250
+ self.context
4251
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4252
+ masm.v128_min(src, dst, writable!(dst), V128MinKind::I32x4U)?;
4253
+ Ok(TypedReg::v128(dst))
4254
+ })
4255
+ }
4256
+
4257
+ fn visit_i8x16_max_s(&mut self) -> Self::Output {
4258
+ self.context
4259
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
4260
+ masm.v128_max(src, dst, writable!(dst), V128MaxKind::I8x16S)?;
4261
+ Ok(TypedReg::v128(dst))
4262
+ })
4263
+ }
4264
+
4265
+ fn visit_i16x8_max_s(&mut self) -> Self::Output {
4266
+ self.context
4267
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
4268
+ masm.v128_max(src, dst, writable!(dst), V128MaxKind::I16x8S)?;
4269
+ Ok(TypedReg::v128(dst))
4270
+ })
4271
+ }
4272
+
4273
+ fn visit_i32x4_max_s(&mut self) -> Self::Output {
4274
+ self.context
4275
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4276
+ masm.v128_max(src, dst, writable!(dst), V128MaxKind::I32x4S)?;
4277
+ Ok(TypedReg::v128(dst))
4278
+ })
4279
+ }
4280
+
4281
+ fn visit_i8x16_max_u(&mut self) -> Self::Output {
4282
+ self.context
4283
+ .binop(self.masm, OperandSize::S8, |masm, dst, src, _size| {
4284
+ masm.v128_max(src, dst, writable!(dst), V128MaxKind::I8x16U)?;
4285
+ Ok(TypedReg::v128(dst))
4286
+ })
4287
+ }
4288
+
4289
+ fn visit_i16x8_max_u(&mut self) -> Self::Output {
4290
+ self.context
4291
+ .binop(self.masm, OperandSize::S16, |masm, dst, src, _size| {
4292
+ masm.v128_max(src, dst, writable!(dst), V128MaxKind::I16x8U)?;
4293
+ Ok(TypedReg::v128(dst))
4294
+ })
4295
+ }
4296
+
4297
+ fn visit_i32x4_max_u(&mut self) -> Self::Output {
4298
+ self.context
4299
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4300
+ masm.v128_max(src, dst, writable!(dst), V128MaxKind::I32x4U)?;
4301
+ Ok(TypedReg::v128(dst))
4302
+ })
4303
+ }
4304
+
4305
+ fn visit_i16x8_extmul_low_i8x16_s(&mut self) -> Self::Output {
4306
+ self.masm
4307
+ .v128_extmul(&mut self.context, V128ExtMulKind::LowI8x16S)
4308
+ }
4309
+
4310
+ fn visit_i32x4_extmul_low_i16x8_s(&mut self) -> Self::Output {
4311
+ self.masm
4312
+ .v128_extmul(&mut self.context, V128ExtMulKind::LowI16x8S)
4313
+ }
4314
+
4315
+ fn visit_i64x2_extmul_low_i32x4_s(&mut self) -> Self::Output {
4316
+ self.masm
4317
+ .v128_extmul(&mut self.context, V128ExtMulKind::LowI32x4S)
4318
+ }
4319
+
4320
+ fn visit_i16x8_extmul_low_i8x16_u(&mut self) -> Self::Output {
4321
+ self.masm
4322
+ .v128_extmul(&mut self.context, V128ExtMulKind::LowI8x16U)
4323
+ }
4324
+
4325
+ fn visit_i32x4_extmul_low_i16x8_u(&mut self) -> Self::Output {
4326
+ self.masm
4327
+ .v128_extmul(&mut self.context, V128ExtMulKind::LowI16x8U)
4328
+ }
4329
+
4330
+ fn visit_i64x2_extmul_low_i32x4_u(&mut self) -> Self::Output {
4331
+ self.masm
4332
+ .v128_extmul(&mut self.context, V128ExtMulKind::LowI32x4U)
4333
+ }
4334
+
4335
+ fn visit_i16x8_extmul_high_i8x16_u(&mut self) -> Self::Output {
4336
+ self.masm
4337
+ .v128_extmul(&mut self.context, V128ExtMulKind::HighI8x16U)
4338
+ }
4339
+
4340
+ fn visit_i32x4_extmul_high_i16x8_u(&mut self) -> Self::Output {
4341
+ self.masm
4342
+ .v128_extmul(&mut self.context, V128ExtMulKind::HighI16x8U)
4343
+ }
4344
+
4345
+ fn visit_i64x2_extmul_high_i32x4_u(&mut self) -> Self::Output {
4346
+ self.masm
4347
+ .v128_extmul(&mut self.context, V128ExtMulKind::HighI32x4U)
4348
+ }
4349
+
4350
+ fn visit_i16x8_extmul_high_i8x16_s(&mut self) -> Self::Output {
4351
+ self.masm
4352
+ .v128_extmul(&mut self.context, V128ExtMulKind::HighI8x16S)
4353
+ }
4354
+
4355
+ fn visit_i32x4_extmul_high_i16x8_s(&mut self) -> Self::Output {
4356
+ self.masm
4357
+ .v128_extmul(&mut self.context, V128ExtMulKind::HighI16x8S)
4358
+ }
4359
+
4360
+ fn visit_i64x2_extmul_high_i32x4_s(&mut self) -> Self::Output {
4361
+ self.masm
4362
+ .v128_extmul(&mut self.context, V128ExtMulKind::HighI32x4S)
4363
+ }
4364
+
4365
+ fn visit_i16x8_extadd_pairwise_i8x16_s(&mut self) -> Self::Output {
4366
+ self.context.unop(self.masm, |masm, op| {
4367
+ masm.v128_extadd_pairwise(op, writable!(op), V128ExtAddKind::I8x16S)?;
4368
+ Ok(TypedReg::v128(op))
4369
+ })
4370
+ }
4371
+
4372
+ fn visit_i16x8_extadd_pairwise_i8x16_u(&mut self) -> Self::Output {
4373
+ self.context.unop(self.masm, |masm, op| {
4374
+ masm.v128_extadd_pairwise(op, writable!(op), V128ExtAddKind::I8x16U)?;
4375
+ Ok(TypedReg::v128(op))
4376
+ })
4377
+ }
4378
+
4379
+ fn visit_i32x4_extadd_pairwise_i16x8_s(&mut self) -> Self::Output {
4380
+ self.context.unop(self.masm, |masm, op| {
4381
+ masm.v128_extadd_pairwise(op, writable!(op), V128ExtAddKind::I16x8S)?;
4382
+ Ok(TypedReg::v128(op))
4383
+ })
4384
+ }
4385
+
4386
+ fn visit_i32x4_extadd_pairwise_i16x8_u(&mut self) -> Self::Output {
4387
+ self.context.unop(self.masm, |masm, op| {
4388
+ masm.v128_extadd_pairwise(op, writable!(op), V128ExtAddKind::I16x8U)?;
4389
+ Ok(TypedReg::v128(op))
4390
+ })
4391
+ }
4392
+
4393
+ fn visit_f32x4_add(&mut self) -> Self::Output {
4394
+ self.context
4395
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4396
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::F32x4)?;
4397
+ Ok(TypedReg::v128(dst))
4398
+ })
4399
+ }
4400
+
4401
+ fn visit_f64x2_add(&mut self) -> Self::Output {
4402
+ self.context
4403
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
4404
+ masm.v128_add(dst, src, writable!(dst), V128AddKind::F64x2)?;
4405
+ Ok(TypedReg::v128(dst))
4406
+ })
4407
+ }
4408
+
4409
+ fn visit_f32x4_sub(&mut self) -> Self::Output {
4410
+ self.context
4411
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4412
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::F32x4)?;
4413
+ Ok(TypedReg::v128(dst))
4414
+ })
4415
+ }
4416
+
4417
+ fn visit_f64x2_sub(&mut self) -> Self::Output {
4418
+ self.context
4419
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
4420
+ masm.v128_sub(dst, src, writable!(dst), V128SubKind::F64x2)?;
4421
+ Ok(TypedReg::v128(dst))
4422
+ })
4423
+ }
4424
+
4425
+ fn visit_f32x4_mul(&mut self) -> Self::Output {
4426
+ self.masm.v128_mul(&mut self.context, V128MulKind::F32x4)
4427
+ }
4428
+
4429
+ fn visit_f64x2_mul(&mut self) -> Self::Output {
4430
+ self.masm.v128_mul(&mut self.context, V128MulKind::F64x2)
4431
+ }
4432
+
4433
+ fn visit_f32x4_div(&mut self) -> Self::Output {
4434
+ self.context
4435
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, size| {
4436
+ masm.v128_div(dst, src, writable!(dst), size)?;
4437
+ Ok(TypedReg::v128(dst))
4438
+ })
4439
+ }
4440
+
4441
+ fn visit_f64x2_div(&mut self) -> Self::Output {
4442
+ self.context
4443
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, size| {
4444
+ masm.v128_div(dst, src, writable!(dst), size)?;
4445
+ Ok(TypedReg::v128(dst))
4446
+ })
4447
+ }
4448
+
4449
+ fn visit_f32x4_neg(&mut self) -> Self::Output {
4450
+ self.context.unop(self.masm, |masm, reg| {
4451
+ masm.v128_neg(writable!(reg), V128NegKind::F32x4)?;
4452
+ Ok(TypedReg::v128(reg))
4453
+ })
4454
+ }
4455
+
4456
+ fn visit_f32x4_ceil(&mut self) -> Self::Output {
4457
+ self.context.unop(self.masm, |masm, reg| {
4458
+ masm.v128_ceil(reg, writable!(reg), OperandSize::S32)?;
4459
+ Ok(TypedReg::v128(reg))
4460
+ })
4461
+ }
4462
+
4463
+ fn visit_f64x2_neg(&mut self) -> Self::Output {
4464
+ self.context.unop(self.masm, |masm, reg| {
4465
+ masm.v128_neg(writable!(reg), V128NegKind::F64x2)?;
4466
+ Ok(TypedReg::v128(reg))
4467
+ })
4468
+ }
4469
+
4470
+ fn visit_f64x2_ceil(&mut self) -> Self::Output {
4471
+ self.context.unop(self.masm, |masm, reg| {
4472
+ masm.v128_ceil(reg, writable!(reg), OperandSize::S64)?;
4473
+ Ok(TypedReg::v128(reg))
4474
+ })
4475
+ }
4476
+
4477
+ fn visit_f32x4_sqrt(&mut self) -> Self::Output {
4478
+ self.context.unop(self.masm, |masm, reg| {
4479
+ masm.v128_sqrt(reg, writable!(reg), OperandSize::S32)?;
4480
+ Ok(TypedReg::v128(reg))
4481
+ })
4482
+ }
4483
+
4484
+ fn visit_f32x4_floor(&mut self) -> Self::Output {
4485
+ self.context.unop(self.masm, |masm, reg| {
4486
+ masm.v128_floor(reg, writable!(reg), OperandSize::S32)?;
4487
+ Ok(TypedReg::v128(reg))
4488
+ })
4489
+ }
4490
+
4491
+ fn visit_f64x2_sqrt(&mut self) -> Self::Output {
4492
+ self.context.unop(self.masm, |masm, reg| {
4493
+ masm.v128_sqrt(reg, writable!(reg), OperandSize::S64)?;
4494
+ Ok(TypedReg::v128(reg))
4495
+ })
4496
+ }
4497
+
4498
+ fn visit_f64x2_floor(&mut self) -> Self::Output {
4499
+ self.context.unop(self.masm, |masm, reg| {
4500
+ masm.v128_floor(reg, writable!(reg), OperandSize::S64)?;
4501
+ Ok(TypedReg::v128(reg))
4502
+ })
4503
+ }
4504
+
4505
+ fn visit_f32x4_nearest(&mut self) -> Self::Output {
4506
+ self.context.unop(self.masm, |masm, reg| {
4507
+ masm.v128_nearest(reg, writable!(reg), OperandSize::S32)?;
4508
+ Ok(TypedReg::v128(reg))
4509
+ })
4510
+ }
4511
+
4512
+ fn visit_f64x2_nearest(&mut self) -> Self::Output {
4513
+ self.context.unop(self.masm, |masm, reg| {
4514
+ masm.v128_nearest(reg, writable!(reg), OperandSize::S64)?;
4515
+ Ok(TypedReg::v128(reg))
4516
+ })
4517
+ }
4518
+
4519
+ fn visit_f32x4_trunc(&mut self) -> Self::Output {
4520
+ self.masm
4521
+ .v128_trunc(&mut self.context, V128TruncKind::F32x4)
4522
+ }
4523
+
4524
+ fn visit_f64x2_trunc(&mut self) -> Self::Output {
4525
+ self.masm
4526
+ .v128_trunc(&mut self.context, V128TruncKind::F64x2)
4527
+ }
4528
+
4529
+ fn visit_v128_load32_zero(&mut self, memarg: MemArg) -> Self::Output {
4530
+ self.emit_wasm_load(
4531
+ &memarg,
4532
+ WasmValType::V128,
4533
+ LoadKind::VectorZero(OperandSize::S32),
4534
+ )
4535
+ }
4536
+
4537
+ fn visit_v128_load64_zero(&mut self, memarg: MemArg) -> Self::Output {
4538
+ self.emit_wasm_load(
4539
+ &memarg,
4540
+ WasmValType::V128,
4541
+ LoadKind::VectorZero(OperandSize::S64),
4542
+ )
4543
+ }
4544
+
4545
+ fn visit_f32x4_pmin(&mut self) -> Self::Output {
4546
+ self.context
4547
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, size| {
4548
+ masm.v128_pmin(dst, src, writable!(dst), size)?;
4549
+ Ok(TypedReg::v128(dst))
4550
+ })
4551
+ }
4552
+
4553
+ fn visit_f64x2_pmin(&mut self) -> Self::Output {
4554
+ self.context
4555
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, size| {
4556
+ masm.v128_pmin(dst, src, writable!(dst), size)?;
4557
+ Ok(TypedReg::v128(dst))
4558
+ })
4559
+ }
4560
+
4561
+ fn visit_f32x4_pmax(&mut self) -> Self::Output {
4562
+ self.context
4563
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, size| {
4564
+ masm.v128_pmax(dst, src, writable!(dst), size)?;
4565
+ Ok(TypedReg::v128(dst))
4566
+ })
4567
+ }
4568
+
4569
+ fn visit_f64x2_pmax(&mut self) -> Self::Output {
4570
+ self.context
4571
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, size| {
4572
+ masm.v128_pmax(dst, src, writable!(dst), size)?;
4573
+ Ok(TypedReg::v128(dst))
4574
+ })
4575
+ }
4576
+
4577
+ fn visit_f32x4_min(&mut self) -> Self::Output {
4578
+ self.context
4579
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4580
+ masm.v128_min(dst, src, writable!(dst), V128MinKind::F32x4)?;
4581
+ Ok(TypedReg::v128(dst))
4582
+ })
4583
+ }
4584
+
4585
+ fn visit_f64x2_min(&mut self) -> Self::Output {
4586
+ self.context
4587
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
4588
+ masm.v128_min(dst, src, writable!(dst), V128MinKind::F64x2)?;
4589
+ Ok(TypedReg::v128(dst))
4590
+ })
4591
+ }
4592
+
4593
+ fn visit_f32x4_max(&mut self) -> Self::Output {
4594
+ self.context
4595
+ .binop(self.masm, OperandSize::S32, |masm, dst, src, _size| {
4596
+ masm.v128_max(dst, src, writable!(dst), V128MaxKind::F32x4)?;
4597
+ Ok(TypedReg::v128(dst))
4598
+ })
4599
+ }
4600
+
4601
+ fn visit_f64x2_max(&mut self) -> Self::Output {
4602
+ self.context
4603
+ .binop(self.masm, OperandSize::S64, |masm, dst, src, _size| {
4604
+ masm.v128_max(dst, src, writable!(dst), V128MaxKind::F64x2)?;
4605
+ Ok(TypedReg::v128(dst))
4606
+ })
4607
+ }
4608
+
4609
+ wasmparser::for_each_visit_simd_operator!(def_unsupported);
4610
+ }
4611
+
4612
+ impl<'a, 'translation, 'data, M> CodeGen<'a, 'translation, 'data, M, Emission>
4613
+ where
4614
+ M: MacroAssembler,
4615
+ {
4616
+ fn cmp_i32s(&mut self, kind: IntCmpKind) -> Result<()> {
4617
+ self.context.i32_binop(self.masm, |masm, dst, src, size| {
4618
+ masm.cmp_with_set(writable!(dst), src, kind, size)?;
4619
+ Ok(TypedReg::i32(dst))
4620
+ })
4621
+ }
4622
+
4623
+ fn cmp_i64s(&mut self, kind: IntCmpKind) -> Result<()> {
4624
+ self.context
4625
+ .i64_binop(self.masm, move |masm, dst, src, size| {
4626
+ masm.cmp_with_set(writable!(dst), src, kind, size)?;
4627
+ Ok(TypedReg::i32(dst)) // Return value for comparisons is an `i32`.
4628
+ })
4629
+ }
4630
+ }
4631
+
4632
+ impl TryFrom<WasmValType> for OperandSize {
4633
+ type Error = anyhow::Error;
4634
+ fn try_from(ty: WasmValType) -> Result<OperandSize> {
4635
+ let ty = match ty {
4636
+ WasmValType::I32 | WasmValType::F32 => OperandSize::S32,
4637
+ WasmValType::I64 | WasmValType::F64 => OperandSize::S64,
4638
+ WasmValType::V128 => OperandSize::S128,
4639
+ WasmValType::Ref(rt) => {
4640
+ match rt.heap_type {
4641
+ // TODO: Hardcoded size, assuming 64-bit support only. Once
4642
+ // Wasmtime supports 32-bit architectures, this will need
4643
+ // to be updated in such a way that the calculation of the
4644
+ // OperandSize will depend on the target's pointer size.
4645
+ WasmHeapType::Func => OperandSize::S64,
4646
+ WasmHeapType::Extern => OperandSize::S64,
4647
+ _ => bail!(CodeGenError::unsupported_wasm_type()),
4648
+ }
4649
+ }
4650
+ };
4651
+ Ok(ty)
4652
+ }
4653
+ }