wasmtime 28.0.0 → 29.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2967) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +155 -120
  3. data/ext/Cargo.toml +5 -5
  4. data/ext/cargo-vendor/bitflags-2.8.0/.cargo-checksum.json +1 -0
  5. data/ext/cargo-vendor/bitflags-2.8.0/CHANGELOG.md +581 -0
  6. data/ext/cargo-vendor/bitflags-2.8.0/Cargo.lock +384 -0
  7. data/ext/cargo-vendor/bitflags-2.8.0/Cargo.toml +130 -0
  8. data/ext/cargo-vendor/bitflags-2.8.0/README.md +77 -0
  9. data/ext/cargo-vendor/bitflags-2.8.0/examples/custom_derive.rs +23 -0
  10. data/ext/cargo-vendor/bitflags-2.8.0/src/external/arbitrary.rs +33 -0
  11. data/ext/cargo-vendor/bitflags-2.8.0/src/lib.rs +1025 -0
  12. data/ext/cargo-vendor/bitflags-2.8.0/src/tests/bitflags_match.rs +93 -0
  13. data/ext/cargo-vendor/bitflags-2.8.0/src/tests/truncate.rs +29 -0
  14. data/ext/cargo-vendor/bitflags-2.8.0/src/tests/unknown.rs +40 -0
  15. data/ext/cargo-vendor/bitflags-2.8.0/src/tests.rs +134 -0
  16. data/ext/cargo-vendor/bitflags-2.8.0/src/traits.rs +444 -0
  17. data/ext/cargo-vendor/cc-1.2.10/.cargo-checksum.json +1 -0
  18. data/ext/cargo-vendor/cc-1.2.10/CHANGELOG.md +379 -0
  19. data/ext/cargo-vendor/cc-1.2.10/Cargo.lock +191 -0
  20. data/ext/cargo-vendor/cc-1.2.10/Cargo.toml +67 -0
  21. data/ext/cargo-vendor/cc-1.2.10/src/flags.rs +492 -0
  22. data/ext/cargo-vendor/cc-1.2.10/src/lib.rs +4216 -0
  23. data/ext/cargo-vendor/cc-1.2.10/src/target/generated.rs +3403 -0
  24. data/ext/cargo-vendor/cc-1.2.10/src/tool.rs +512 -0
  25. data/ext/cargo-vendor/cc-1.2.10/src/windows/windows_sys.rs +134 -0
  26. data/ext/cargo-vendor/cpufeatures-0.2.17/.cargo-checksum.json +1 -0
  27. data/ext/cargo-vendor/cpufeatures-0.2.17/CHANGELOG.md +168 -0
  28. data/ext/cargo-vendor/cpufeatures-0.2.17/Cargo.lock +16 -0
  29. data/ext/cargo-vendor/cpufeatures-0.2.17/Cargo.toml +71 -0
  30. data/ext/cargo-vendor/cpufeatures-0.2.17/LICENSE-MIT +25 -0
  31. data/ext/cargo-vendor/cpufeatures-0.2.17/README.md +126 -0
  32. data/ext/cargo-vendor/cranelift-bforest-0.116.1/.cargo-checksum.json +1 -0
  33. data/ext/cargo-vendor/cranelift-bforest-0.116.1/Cargo.lock +25 -0
  34. data/ext/cargo-vendor/cranelift-bforest-0.116.1/Cargo.toml +73 -0
  35. data/ext/cargo-vendor/cranelift-bitset-0.116.1/.cargo-checksum.json +1 -0
  36. data/ext/cargo-vendor/cranelift-bitset-0.116.1/Cargo.lock +73 -0
  37. data/ext/cargo-vendor/cranelift-bitset-0.116.1/Cargo.toml +88 -0
  38. data/ext/cargo-vendor/cranelift-bitset-0.116.1/src/scalar.rs +629 -0
  39. data/ext/cargo-vendor/cranelift-codegen-0.116.0/.cargo-checksum.json +1 -0
  40. data/ext/cargo-vendor/cranelift-codegen-0.116.0/Cargo.lock +1078 -0
  41. data/ext/cargo-vendor/cranelift-codegen-0.116.0/Cargo.toml +242 -0
  42. data/ext/cargo-vendor/cranelift-codegen-0.116.0/build.rs +223 -0
  43. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/binemit/mod.rs +174 -0
  44. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/ir/immediates.rs +1961 -0
  45. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/abi.rs +1540 -0
  46. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/inst/args.rs +711 -0
  47. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/inst/emit.rs +3577 -0
  48. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/inst/emit_tests.rs +7972 -0
  49. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/inst/mod.rs +3056 -0
  50. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/inst/regs.rs +281 -0
  51. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/inst.isle +5102 -0
  52. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/lower/isle.rs +765 -0
  53. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/lower.isle +3161 -0
  54. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/aarch64/mod.rs +260 -0
  55. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/mod.rs +476 -0
  56. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/abi.rs +943 -0
  57. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/inst/args.rs +580 -0
  58. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/inst/emit.rs +710 -0
  59. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/inst/mod.rs +846 -0
  60. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/inst/regs.rs +164 -0
  61. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/inst.isle +489 -0
  62. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/lower/isle.rs +162 -0
  63. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/lower.isle +1414 -0
  64. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/pulley_shared/mod.rs +287 -0
  65. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/riscv64/abi.rs +995 -0
  66. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/riscv64/inst/args.rs +1957 -0
  67. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/riscv64/inst/emit_tests.rs +2277 -0
  68. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/s390x/abi.rs +1399 -0
  69. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/s390x/inst/emit.rs +3435 -0
  70. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/x64/abi.rs +1386 -0
  71. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/x64/inst.isle +5758 -0
  72. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/x64/lower/isle/generated_code.rs +16 -0
  73. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isa/x64/lower/isle.rs +997 -0
  74. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/isle_prelude.rs +1156 -0
  75. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/machinst/abi.rs +2451 -0
  76. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/machinst/buffer.rs +2496 -0
  77. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/machinst/lower.rs +1603 -0
  78. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/prelude.isle +836 -0
  79. data/ext/cargo-vendor/cranelift-codegen-0.116.0/src/prelude_lower.isle +1128 -0
  80. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/.cargo-checksum.json +1 -0
  81. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/Cargo.lock +46 -0
  82. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/Cargo.toml +75 -0
  83. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/src/cdsl/instructions.rs +494 -0
  84. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/src/isa/pulley.rs +20 -0
  85. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/src/isle.rs +186 -0
  86. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/src/lib.rs +111 -0
  87. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/src/pulley.rs +401 -0
  88. data/ext/cargo-vendor/cranelift-codegen-meta-0.116.0/src/shared/instructions.rs +3786 -0
  89. data/ext/cargo-vendor/cranelift-codegen-shared-0.116.1/.cargo-checksum.json +1 -0
  90. data/ext/cargo-vendor/cranelift-codegen-shared-0.116.1/Cargo.lock +7 -0
  91. data/ext/cargo-vendor/cranelift-codegen-shared-0.116.1/Cargo.toml +33 -0
  92. data/ext/cargo-vendor/cranelift-control-0.116.1/.cargo-checksum.json +1 -0
  93. data/ext/cargo-vendor/cranelift-control-0.116.1/Cargo.lock +16 -0
  94. data/ext/cargo-vendor/cranelift-control-0.116.1/Cargo.toml +44 -0
  95. data/ext/cargo-vendor/cranelift-entity-0.116.1/.cargo-checksum.json +1 -0
  96. data/ext/cargo-vendor/cranelift-entity-0.116.1/Cargo.lock +77 -0
  97. data/ext/cargo-vendor/cranelift-entity-0.116.1/Cargo.toml +89 -0
  98. data/ext/cargo-vendor/cranelift-entity-0.116.1/src/sparse.rs +411 -0
  99. data/ext/cargo-vendor/cranelift-frontend-0.116.0/.cargo-checksum.json +1 -0
  100. data/ext/cargo-vendor/cranelift-frontend-0.116.0/Cargo.lock +544 -0
  101. data/ext/cargo-vendor/cranelift-frontend-0.116.0/Cargo.toml +111 -0
  102. data/ext/cargo-vendor/cranelift-isle-0.116.0/.cargo-checksum.json +1 -0
  103. data/ext/cargo-vendor/cranelift-isle-0.116.0/Cargo.lock +294 -0
  104. data/ext/cargo-vendor/cranelift-isle-0.116.0/Cargo.toml +83 -0
  105. data/ext/cargo-vendor/cranelift-native-0.116.0/.cargo-checksum.json +1 -0
  106. data/ext/cargo-vendor/cranelift-native-0.116.0/Cargo.lock +261 -0
  107. data/ext/cargo-vendor/cranelift-native-0.116.0/Cargo.toml +53 -0
  108. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.29/.cargo-checksum.json +1 -0
  109. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.29/Cargo.toml +70 -0
  110. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.29/README.md +52 -0
  111. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.29/tests/common/mod.rs +33 -0
  112. data/ext/cargo-vendor/indexmap-2.7.1/.cargo-checksum.json +1 -0
  113. data/ext/cargo-vendor/indexmap-2.7.1/Cargo.lock +333 -0
  114. data/ext/cargo-vendor/indexmap-2.7.1/Cargo.toml +150 -0
  115. data/ext/cargo-vendor/indexmap-2.7.1/RELEASES.md +541 -0
  116. data/ext/cargo-vendor/indexmap-2.7.1/src/lib.rs +273 -0
  117. data/ext/cargo-vendor/indexmap-2.7.1/src/map/core/entry.rs +571 -0
  118. data/ext/cargo-vendor/indexmap-2.7.1/src/map/core.rs +738 -0
  119. data/ext/cargo-vendor/indexmap-2.7.1/src/map/iter.rs +776 -0
  120. data/ext/cargo-vendor/indexmap-2.7.1/src/map.rs +1608 -0
  121. data/ext/cargo-vendor/indexmap-2.7.1/src/set/iter.rs +628 -0
  122. data/ext/cargo-vendor/indexmap-2.7.1/src/set.rs +1301 -0
  123. data/ext/cargo-vendor/indexmap-2.7.1/src/util.rs +58 -0
  124. data/ext/cargo-vendor/ipnet-2.11.0/.cargo-checksum.json +1 -0
  125. data/ext/cargo-vendor/ipnet-2.11.0/Cargo.lock +179 -0
  126. data/ext/cargo-vendor/ipnet-2.11.0/Cargo.toml +69 -0
  127. data/ext/cargo-vendor/ipnet-2.11.0/src/ipext.rs +989 -0
  128. data/ext/cargo-vendor/ipnet-2.11.0/src/ipnet.rs +2001 -0
  129. data/ext/cargo-vendor/ipnet-2.11.0/src/lib.rs +106 -0
  130. data/ext/cargo-vendor/js-sys-0.3.77/.cargo-checksum.json +1 -0
  131. data/ext/cargo-vendor/js-sys-0.3.77/Cargo.lock +127 -0
  132. data/ext/cargo-vendor/js-sys-0.3.77/Cargo.toml +69 -0
  133. data/ext/cargo-vendor/js-sys-0.3.77/src/lib.rs +6439 -0
  134. data/ext/cargo-vendor/log-0.4.25/.cargo-checksum.json +1 -0
  135. data/ext/cargo-vendor/log-0.4.25/CHANGELOG.md +368 -0
  136. data/ext/cargo-vendor/log-0.4.25/Cargo.toml +143 -0
  137. data/ext/cargo-vendor/log-0.4.25/README.md +134 -0
  138. data/ext/cargo-vendor/log-0.4.25/src/kv/key.rs +163 -0
  139. data/ext/cargo-vendor/log-0.4.25/src/kv/mod.rs +265 -0
  140. data/ext/cargo-vendor/log-0.4.25/src/kv/value.rs +1394 -0
  141. data/ext/cargo-vendor/log-0.4.25/src/lib.rs +1884 -0
  142. data/ext/cargo-vendor/log-0.4.25/src/serde.rs +397 -0
  143. data/ext/cargo-vendor/miniz_oxide-0.8.3/.cargo-checksum.json +1 -0
  144. data/ext/cargo-vendor/miniz_oxide-0.8.3/Cargo.lock +48 -0
  145. data/ext/cargo-vendor/miniz_oxide-0.8.3/Cargo.toml +90 -0
  146. data/ext/cargo-vendor/miniz_oxide-0.8.3/LICENSE +25 -0
  147. data/ext/cargo-vendor/miniz_oxide-0.8.3/LICENSE-MIT.md +24 -0
  148. data/ext/cargo-vendor/miniz_oxide-0.8.3/LICENSE-ZLIB.md +14 -0
  149. data/ext/cargo-vendor/miniz_oxide-0.8.3/src/deflate/core.rs +2459 -0
  150. data/ext/cargo-vendor/miniz_oxide-0.8.3/src/deflate/mod.rs +237 -0
  151. data/ext/cargo-vendor/miniz_oxide-0.8.3/src/deflate/stored.rs +306 -0
  152. data/ext/cargo-vendor/miniz_oxide-0.8.3/src/deflate/zlib.rs +112 -0
  153. data/ext/cargo-vendor/proc-macro2-1.0.93/.cargo-checksum.json +1 -0
  154. data/ext/cargo-vendor/proc-macro2-1.0.93/Cargo.lock +304 -0
  155. data/ext/cargo-vendor/proc-macro2-1.0.93/Cargo.toml +105 -0
  156. data/ext/cargo-vendor/proc-macro2-1.0.93/src/fallback.rs +1277 -0
  157. data/ext/cargo-vendor/proc-macro2-1.0.93/src/lib.rs +1389 -0
  158. data/ext/cargo-vendor/proc-macro2-1.0.93/src/rcvec.rs +146 -0
  159. data/ext/cargo-vendor/pulley-interpreter-29.0.0/.cargo-checksum.json +1 -0
  160. data/ext/cargo-vendor/pulley-interpreter-29.0.0/CONTRIBUTING.md +278 -0
  161. data/ext/cargo-vendor/pulley-interpreter-29.0.0/Cargo.lock +402 -0
  162. data/ext/cargo-vendor/pulley-interpreter-29.0.0/Cargo.toml +126 -0
  163. data/ext/cargo-vendor/pulley-interpreter-29.0.0/examples/objdump.rs +48 -0
  164. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/decode.rs +761 -0
  165. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/disas.rs +333 -0
  166. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/encode.rs +288 -0
  167. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/imms.rs +69 -0
  168. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/interp/debug.rs +128 -0
  169. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/interp/match_loop.rs +39 -0
  170. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/interp/tail_loop.rs +152 -0
  171. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/interp.rs +4655 -0
  172. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/lib.rs +1287 -0
  173. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/op.rs +279 -0
  174. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/opcode.rs +106 -0
  175. data/ext/cargo-vendor/pulley-interpreter-29.0.0/src/regs.rs +375 -0
  176. data/ext/cargo-vendor/pulley-interpreter-29.0.0/tests/all/disas.rs +189 -0
  177. data/ext/cargo-vendor/pulley-interpreter-29.0.0/tests/all/interp.rs +853 -0
  178. data/ext/cargo-vendor/rustix-0.38.44/.cargo-checksum.json +1 -0
  179. data/ext/cargo-vendor/rustix-0.38.44/Cargo.lock +1012 -0
  180. data/ext/cargo-vendor/rustix-0.38.44/Cargo.toml +308 -0
  181. data/ext/cargo-vendor/rustix-0.38.44/src/backend/libc/system/syscalls.rs +159 -0
  182. data/ext/cargo-vendor/rustix-0.38.44/src/backend/linux_raw/system/syscalls.rs +92 -0
  183. data/ext/cargo-vendor/rustix-0.38.44/src/lib.rs +408 -0
  184. data/ext/cargo-vendor/rustix-0.38.44/src/maybe_polyfill/std/mod.rs +41 -0
  185. data/ext/cargo-vendor/rustix-0.38.44/src/system.rs +284 -0
  186. data/ext/cargo-vendor/rustix-0.38.44/src/weak.rs +287 -0
  187. data/ext/cargo-vendor/rustversion-1.0.19/.cargo-checksum.json +1 -0
  188. data/ext/cargo-vendor/rustversion-1.0.19/Cargo.lock +294 -0
  189. data/ext/cargo-vendor/rustversion-1.0.19/Cargo.toml +62 -0
  190. data/ext/cargo-vendor/rustversion-1.0.19/README.md +167 -0
  191. data/ext/cargo-vendor/rustversion-1.0.19/build/build.rs +102 -0
  192. data/ext/cargo-vendor/rustversion-1.0.19/build/rustc.rs +126 -0
  193. data/ext/cargo-vendor/rustversion-1.0.19/src/attr.rs +35 -0
  194. data/ext/cargo-vendor/rustversion-1.0.19/src/bound.rs +63 -0
  195. data/ext/cargo-vendor/rustversion-1.0.19/src/constfn.rs +58 -0
  196. data/ext/cargo-vendor/rustversion-1.0.19/src/date.rs +50 -0
  197. data/ext/cargo-vendor/rustversion-1.0.19/src/error.rs +56 -0
  198. data/ext/cargo-vendor/rustversion-1.0.19/src/expand.rs +72 -0
  199. data/ext/cargo-vendor/rustversion-1.0.19/src/expr.rs +163 -0
  200. data/ext/cargo-vendor/rustversion-1.0.19/src/iter.rs +42 -0
  201. data/ext/cargo-vendor/rustversion-1.0.19/src/lib.rs +282 -0
  202. data/ext/cargo-vendor/rustversion-1.0.19/src/release.rs +34 -0
  203. data/ext/cargo-vendor/rustversion-1.0.19/src/time.rs +51 -0
  204. data/ext/cargo-vendor/rustversion-1.0.19/src/token.rs +78 -0
  205. data/ext/cargo-vendor/rustversion-1.0.19/src/version.rs +18 -0
  206. data/ext/cargo-vendor/rustversion-1.0.19/tests/test_const.rs +42 -0
  207. data/ext/cargo-vendor/rustversion-1.0.19/tests/test_eval.rs +20 -0
  208. data/ext/cargo-vendor/rustversion-1.0.19/tests/test_parse.rs +103 -0
  209. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-bound.rs +7 -0
  210. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-bound.stderr +11 -0
  211. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-date.rs +7 -0
  212. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-date.stderr +11 -0
  213. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-not.rs +7 -0
  214. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-not.stderr +11 -0
  215. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-version.rs +7 -0
  216. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/bad-version.stderr +11 -0
  217. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/const-not-fn.rs +4 -0
  218. data/ext/cargo-vendor/rustversion-1.0.19/tests/ui/const-not-fn.stderr +5 -0
  219. data/ext/cargo-vendor/semver-1.0.25/.cargo-checksum.json +1 -0
  220. data/ext/cargo-vendor/semver-1.0.25/Cargo.lock +65 -0
  221. data/ext/cargo-vendor/semver-1.0.25/Cargo.toml +74 -0
  222. data/ext/cargo-vendor/semver-1.0.25/src/lib.rs +580 -0
  223. data/ext/cargo-vendor/serde_json-1.0.137/.cargo-checksum.json +1 -0
  224. data/ext/cargo-vendor/serde_json-1.0.137/Cargo.lock +417 -0
  225. data/ext/cargo-vendor/serde_json-1.0.137/Cargo.toml +153 -0
  226. data/ext/cargo-vendor/serde_json-1.0.137/src/lib.rs +435 -0
  227. data/ext/cargo-vendor/serde_json-1.0.137/src/value/ser.rs +1063 -0
  228. data/ext/cargo-vendor/serde_json-1.0.137/tests/compiletest.rs +7 -0
  229. data/ext/cargo-vendor/syn-2.0.96/.cargo-checksum.json +1 -0
  230. data/ext/cargo-vendor/syn-2.0.96/Cargo.lock +1749 -0
  231. data/ext/cargo-vendor/syn-2.0.96/Cargo.toml +268 -0
  232. data/ext/cargo-vendor/syn-2.0.96/src/expr.rs +4102 -0
  233. data/ext/cargo-vendor/syn-2.0.96/src/fixup.rs +770 -0
  234. data/ext/cargo-vendor/syn-2.0.96/src/lib.rs +1010 -0
  235. data/ext/cargo-vendor/syn-2.0.96/tests/test_expr.rs +1646 -0
  236. data/ext/cargo-vendor/target-lexicon-0.13.1/.cargo-checksum.json +1 -0
  237. data/ext/cargo-vendor/target-lexicon-0.13.1/Cargo.lock +96 -0
  238. data/ext/cargo-vendor/target-lexicon-0.13.1/Cargo.toml +66 -0
  239. data/ext/cargo-vendor/target-lexicon-0.13.1/README.md +24 -0
  240. data/ext/cargo-vendor/target-lexicon-0.13.1/src/host.rs +63 -0
  241. data/ext/cargo-vendor/target-lexicon-0.13.1/src/lib.rs +109 -0
  242. data/ext/cargo-vendor/target-lexicon-0.13.1/src/targets.rs +2120 -0
  243. data/ext/cargo-vendor/target-lexicon-0.13.1/src/triple.rs +554 -0
  244. data/ext/cargo-vendor/trait-variant-0.1.2/.cargo-checksum.json +1 -0
  245. data/ext/cargo-vendor/trait-variant-0.1.2/Cargo.lock +151 -0
  246. data/ext/cargo-vendor/trait-variant-0.1.2/Cargo.toml +47 -0
  247. data/ext/cargo-vendor/trait-variant-0.1.2/README.md +50 -0
  248. data/ext/cargo-vendor/trait-variant-0.1.2/examples/variant.rs +60 -0
  249. data/ext/cargo-vendor/trait-variant-0.1.2/src/lib.rs +60 -0
  250. data/ext/cargo-vendor/trait-variant-0.1.2/src/variant.rs +248 -0
  251. data/ext/cargo-vendor/unicode-ident-1.0.15/.cargo-checksum.json +1 -0
  252. data/ext/cargo-vendor/unicode-ident-1.0.15/Cargo.lock +557 -0
  253. data/ext/cargo-vendor/unicode-ident-1.0.15/Cargo.toml +80 -0
  254. data/ext/cargo-vendor/unicode-ident-1.0.15/LICENSE-APACHE +176 -0
  255. data/ext/cargo-vendor/unicode-ident-1.0.15/LICENSE-MIT +23 -0
  256. data/ext/cargo-vendor/unicode-ident-1.0.15/README.md +282 -0
  257. data/ext/cargo-vendor/unicode-ident-1.0.15/benches/xid.rs +125 -0
  258. data/ext/cargo-vendor/unicode-ident-1.0.15/src/lib.rs +269 -0
  259. data/ext/cargo-vendor/uuid-1.12.1/.cargo-checksum.json +1 -0
  260. data/ext/cargo-vendor/uuid-1.12.1/Cargo.toml +220 -0
  261. data/ext/cargo-vendor/uuid-1.12.1/README.md +90 -0
  262. data/ext/cargo-vendor/uuid-1.12.1/src/builder.rs +879 -0
  263. data/ext/cargo-vendor/uuid-1.12.1/src/error.rs +175 -0
  264. data/ext/cargo-vendor/uuid-1.12.1/src/external/arbitrary_support.rs +71 -0
  265. data/ext/cargo-vendor/uuid-1.12.1/src/external/serde_support.rs +767 -0
  266. data/ext/cargo-vendor/uuid-1.12.1/src/external/slog_support.rs +48 -0
  267. data/ext/cargo-vendor/uuid-1.12.1/src/lib.rs +1894 -0
  268. data/ext/cargo-vendor/uuid-1.12.1/src/non_nil.rs +142 -0
  269. data/ext/cargo-vendor/uuid-1.12.1/src/timestamp.rs +978 -0
  270. data/ext/cargo-vendor/uuid-1.12.1/src/v5.rs +188 -0
  271. data/ext/cargo-vendor/uuid-1.12.1/src/v7.rs +242 -0
  272. data/ext/cargo-vendor/wasi-common-29.0.0/.cargo-checksum.json +1 -0
  273. data/ext/cargo-vendor/wasi-common-29.0.0/Cargo.lock +1843 -0
  274. data/ext/cargo-vendor/wasi-common-29.0.0/Cargo.toml +252 -0
  275. data/ext/cargo-vendor/wasi-common-29.0.0/witx/preview0/wasi_unstable.witx +513 -0
  276. data/ext/cargo-vendor/wasi-common-29.0.0/witx/preview1/typenames.witx +750 -0
  277. data/ext/cargo-vendor/wasi-common-29.0.0/witx/preview1/wasi_snapshot_preview1.witx +521 -0
  278. data/ext/cargo-vendor/wasm-bindgen-0.2.100/.cargo-checksum.json +1 -0
  279. data/ext/cargo-vendor/wasm-bindgen-0.2.100/Cargo.lock +184 -0
  280. data/ext/cargo-vendor/wasm-bindgen-0.2.100/Cargo.toml +106 -0
  281. data/ext/cargo-vendor/wasm-bindgen-0.2.100/src/cache/intern.rs +100 -0
  282. data/ext/cargo-vendor/wasm-bindgen-0.2.100/src/closure.rs +915 -0
  283. data/ext/cargo-vendor/wasm-bindgen-0.2.100/src/convert/closures.rs +253 -0
  284. data/ext/cargo-vendor/wasm-bindgen-0.2.100/src/externref.rs +174 -0
  285. data/ext/cargo-vendor/wasm-bindgen-0.2.100/src/lib.rs +1778 -0
  286. data/ext/cargo-vendor/wasm-bindgen-0.2.100/src/rt/marker.rs +47 -0
  287. data/ext/cargo-vendor/wasm-bindgen-0.2.100/src/rt/mod.rs +711 -0
  288. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.100/.cargo-checksum.json +1 -0
  289. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.100/Cargo.lock +71 -0
  290. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.100/Cargo.toml +68 -0
  291. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.100/src/ast.rs +607 -0
  292. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.100/src/codegen.rs +1976 -0
  293. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.100/src/encode.rs +626 -0
  294. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.100/.cargo-checksum.json +1 -0
  295. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.100/Cargo.lock +337 -0
  296. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.100/Cargo.toml +60 -0
  297. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.100/src/lib.rs +75 -0
  298. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.100/.cargo-checksum.json +1 -0
  299. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.100/Cargo.lock +84 -0
  300. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.100/Cargo.toml +70 -0
  301. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.100/src/lib.rs +203 -0
  302. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.100/src/parser.rs +2332 -0
  303. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.100/.cargo-checksum.json +1 -0
  304. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.100/Cargo.lock +16 -0
  305. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.100/Cargo.toml +52 -0
  306. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.100/src/identifier.rs +42 -0
  307. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.100/src/lib.rs +239 -0
  308. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.100/src/schema_hash_approval.rs +16 -0
  309. data/ext/cargo-vendor/wasm-encoder-0.224.0/.cargo-checksum.json +1 -0
  310. data/ext/cargo-vendor/wasm-encoder-0.224.0/Cargo.lock +248 -0
  311. data/ext/cargo-vendor/wasm-encoder-0.224.0/Cargo.toml +82 -0
  312. data/ext/cargo-vendor/wasm-encoder-0.224.0/src/component/types.rs +792 -0
  313. data/ext/cargo-vendor/wasm-encoder-0.224.0/src/reencode/component.rs +1446 -0
  314. data/ext/cargo-vendor/wasmparser-0.224.0/.cargo-checksum.json +1 -0
  315. data/ext/cargo-vendor/wasmparser-0.224.0/Cargo.lock +646 -0
  316. data/ext/cargo-vendor/wasmparser-0.224.0/Cargo.toml +139 -0
  317. data/ext/cargo-vendor/wasmparser-0.224.0/src/readers/component/types.rs +574 -0
  318. data/ext/cargo-vendor/wasmparser-0.224.0/src/validator/component.rs +4019 -0
  319. data/ext/cargo-vendor/wasmparser-0.224.0/src/validator/component_types.rs +3388 -0
  320. data/ext/cargo-vendor/wasmtime-29.0.0/.cargo-checksum.json +1 -0
  321. data/ext/cargo-vendor/wasmtime-29.0.0/Cargo.lock +1914 -0
  322. data/ext/cargo-vendor/wasmtime-29.0.0/Cargo.toml +477 -0
  323. data/ext/cargo-vendor/wasmtime-29.0.0/src/compile/code_builder.rs +317 -0
  324. data/ext/cargo-vendor/wasmtime-29.0.0/src/compile/runtime.rs +208 -0
  325. data/ext/cargo-vendor/wasmtime-29.0.0/src/compile.rs +888 -0
  326. data/ext/cargo-vendor/wasmtime-29.0.0/src/config.rs +3461 -0
  327. data/ext/cargo-vendor/wasmtime-29.0.0/src/engine/serialization.rs +947 -0
  328. data/ext/cargo-vendor/wasmtime-29.0.0/src/engine.rs +858 -0
  329. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/code_memory.rs +470 -0
  330. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/component/bindgen_examples/_7_async.rs +47 -0
  331. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/component/bindgen_examples/mod.rs +557 -0
  332. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/component/func/host.rs +455 -0
  333. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/component/func/typed.rs +2469 -0
  334. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/component/mod.rs +670 -0
  335. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/externals/global.rs +312 -0
  336. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/func/typed.rs +788 -0
  337. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/func.rs +2674 -0
  338. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/instance.rs +988 -0
  339. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/memory.rs +1092 -0
  340. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/module/registry.rs +344 -0
  341. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/profiling.rs +280 -0
  342. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/store.rs +2988 -0
  343. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/trampoline/global.rs +70 -0
  344. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/trampoline/memory.rs +261 -0
  345. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/trap.rs +620 -0
  346. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/values.rs +1092 -0
  347. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/arch/arm.rs +28 -0
  348. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/arch/mod.rs +48 -0
  349. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/arch/unsupported.rs +28 -0
  350. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/arch/x86.rs +39 -0
  351. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/component/libcalls.rs +559 -0
  352. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/component.rs +873 -0
  353. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/cow.rs +1144 -0
  354. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/gc/enabled/drc.rs +1094 -0
  355. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/helpers.c +207 -0
  356. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +1016 -0
  357. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/instance/allocator/pooling/table_pool.rs +255 -0
  358. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/instance/allocator/pooling/unix_stack_pool.rs +307 -0
  359. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/instance/allocator/pooling.rs +798 -0
  360. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/interpreter.rs +351 -0
  361. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/interpreter_disabled.rs +49 -0
  362. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/libcalls.rs +1346 -0
  363. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/memory/malloc.rs +203 -0
  364. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/memory/mmap.rs +235 -0
  365. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/memory/static_.rs +78 -0
  366. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/memory.rs +751 -0
  367. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/mmap.rs +443 -0
  368. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/mmap_vec.rs +265 -0
  369. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/custom/mmap.rs +140 -0
  370. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/custom/vm.rs +102 -0
  371. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/miri/mmap.rs +124 -0
  372. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/miri/vm.rs +55 -0
  373. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/unix/mmap.rs +210 -0
  374. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/unix/signals.rs +491 -0
  375. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/unix/unwind.rs +135 -0
  376. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/unix/vm.rs +174 -0
  377. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/windows/mmap.rs +246 -0
  378. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/windows/mod.rs +29 -0
  379. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/windows/traphandlers.rs +141 -0
  380. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/windows/unwind32.rs +23 -0
  381. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/sys/windows/vm.rs +71 -0
  382. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/traphandlers/backtrace.rs +274 -0
  383. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/traphandlers/coredump_enabled.rs +43 -0
  384. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/traphandlers/signals.rs +64 -0
  385. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/traphandlers.rs +955 -0
  386. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/unwind.rs +56 -0
  387. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm/vmcontext.rs +1364 -0
  388. data/ext/cargo-vendor/wasmtime-29.0.0/src/runtime/vm.rs +411 -0
  389. data/ext/cargo-vendor/wasmtime-asm-macros-29.0.0/.cargo-checksum.json +1 -0
  390. data/ext/cargo-vendor/wasmtime-asm-macros-29.0.0/Cargo.lock +16 -0
  391. data/ext/cargo-vendor/wasmtime-asm-macros-29.0.0/Cargo.toml +34 -0
  392. data/ext/cargo-vendor/wasmtime-cache-29.0.0/.cargo-checksum.json +1 -0
  393. data/ext/cargo-vendor/wasmtime-cache-29.0.0/Cargo.lock +767 -0
  394. data/ext/cargo-vendor/wasmtime-cache-29.0.0/Cargo.toml +122 -0
  395. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/.cargo-checksum.json +1 -0
  396. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/Cargo.lock +277 -0
  397. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/Cargo.toml +129 -0
  398. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/char.rs +387 -0
  399. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/char_async.rs +413 -0
  400. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/char_tracing_async.rs +460 -0
  401. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/conventions.rs +824 -0
  402. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/conventions_async.rs +898 -0
  403. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/conventions_tracing_async.rs +1189 -0
  404. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/dead-code.rs +279 -0
  405. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/dead-code_async.rs +298 -0
  406. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/dead-code_tracing_async.rs +311 -0
  407. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/direct-import_async.rs +218 -0
  408. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/direct-import_tracing_async.rs +231 -0
  409. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/flags.rs +859 -0
  410. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/flags_async.rs +920 -0
  411. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/flags_tracing_async.rs +1095 -0
  412. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/floats.rs +447 -0
  413. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/floats_async.rs +487 -0
  414. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/floats_tracing_async.rs +581 -0
  415. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/host-world_async.rs +218 -0
  416. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/host-world_tracing_async.rs +231 -0
  417. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/integers.rs +989 -0
  418. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/integers_async.rs +1127 -0
  419. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/integers_tracing_async.rs +1554 -0
  420. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/lists.rs +2032 -0
  421. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/lists_async.rs +2287 -0
  422. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/lists_tracing_async.rs +2979 -0
  423. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/many-arguments.rs +730 -0
  424. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/many-arguments_async.rs +757 -0
  425. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/many-arguments_tracing_async.rs +818 -0
  426. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/multi-return.rs +475 -0
  427. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/multi-return_async.rs +518 -0
  428. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/multi-return_tracing_async.rs +632 -0
  429. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/multiversion.rs +508 -0
  430. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/multiversion_async.rs +535 -0
  431. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/multiversion_tracing_async.rs +583 -0
  432. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/path1.rs +208 -0
  433. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/path1_async.rs +220 -0
  434. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/path1_tracing_async.rs +220 -0
  435. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/path2.rs +208 -0
  436. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/path2_async.rs +220 -0
  437. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/path2_tracing_async.rs +220 -0
  438. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/records.rs +1056 -0
  439. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/records_async.rs +1145 -0
  440. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/records_tracing_async.rs +1405 -0
  441. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/rename.rs +268 -0
  442. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/rename_async.rs +287 -0
  443. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/rename_tracing_async.rs +300 -0
  444. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/resources-export.rs +879 -0
  445. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/resources-export_async.rs +935 -0
  446. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/resources-export_tracing_async.rs +1009 -0
  447. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/resources-import.rs +1217 -0
  448. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/resources-import_async.rs +1350 -0
  449. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/resources-import_tracing_async.rs +1763 -0
  450. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/share-types.rs +429 -0
  451. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/share-types_async.rs +451 -0
  452. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/share-types_tracing_async.rs +475 -0
  453. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-functions.rs +522 -0
  454. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-functions_async.rs +573 -0
  455. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-functions_tracing_async.rs +717 -0
  456. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-lists.rs +545 -0
  457. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-lists_async.rs +589 -0
  458. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-lists_tracing_async.rs +686 -0
  459. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-wasi.rs +331 -0
  460. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-wasi_async.rs +352 -0
  461. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/simple-wasi_tracing_async.rs +378 -0
  462. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/small-anonymous.rs +454 -0
  463. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/small-anonymous_async.rs +473 -0
  464. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/small-anonymous_tracing_async.rs +495 -0
  465. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/smoke-export.rs +263 -0
  466. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/smoke-export_async.rs +272 -0
  467. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/smoke-export_tracing_async.rs +280 -0
  468. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/smoke.rs +218 -0
  469. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/smoke_async.rs +232 -0
  470. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/smoke_tracing_async.rs +245 -0
  471. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/strings.rs +432 -0
  472. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/strings_async.rs +465 -0
  473. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/strings_tracing_async.rs +537 -0
  474. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/unstable-features.rs +482 -0
  475. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/unstable-features_async.rs +523 -0
  476. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/unstable-features_tracing_async.rs +581 -0
  477. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/unversioned-foo.rs +250 -0
  478. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/unversioned-foo_async.rs +264 -0
  479. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/unversioned-foo_tracing_async.rs +277 -0
  480. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/use-paths.rs +402 -0
  481. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/use-paths_async.rs +438 -0
  482. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/use-paths_tracing_async.rs +490 -0
  483. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/variants.rs +2016 -0
  484. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/variants_async.rs +2182 -0
  485. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/variants_tracing_async.rs +2704 -0
  486. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/wat.rs +265 -0
  487. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/wat_async.rs +271 -0
  488. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/wat_tracing_async.rs +271 -0
  489. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/worlds-with-types.rs +263 -0
  490. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/worlds-with-types_async.rs +278 -0
  491. data/ext/cargo-vendor/wasmtime-component-macro-29.0.0/tests/expanded/worlds-with-types_tracing_async.rs +286 -0
  492. data/ext/cargo-vendor/wasmtime-component-util-29.0.0/.cargo-checksum.json +1 -0
  493. data/ext/cargo-vendor/wasmtime-component-util-29.0.0/Cargo.lock +7 -0
  494. data/ext/cargo-vendor/wasmtime-component-util-29.0.0/Cargo.toml +37 -0
  495. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/.cargo-checksum.json +1 -0
  496. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/Cargo.lock +647 -0
  497. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/Cargo.toml +170 -0
  498. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/compiler/component.rs +996 -0
  499. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/compiler.rs +1192 -0
  500. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/debug/gc.rs +288 -0
  501. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/debug/transform/attr.rs +453 -0
  502. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/debug/transform/debug_transform_logging.rs +276 -0
  503. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/debug/transform/mod.rs +274 -0
  504. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/debug/transform/unit.rs +539 -0
  505. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/debug/transform/utils.rs +62 -0
  506. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/func_environ.rs +3435 -0
  507. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/gc/enabled/drc.rs +747 -0
  508. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/gc/enabled/null.rs +285 -0
  509. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/gc/enabled.rs +1496 -0
  510. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/lib.rs +430 -0
  511. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/obj.rs +657 -0
  512. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/code_translator/bounds_checks.rs +798 -0
  513. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/code_translator.rs +4082 -0
  514. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/environ/mod.rs +6 -0
  515. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/environ/spec.rs +55 -0
  516. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/func_translator.rs +284 -0
  517. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/mod.rs +26 -0
  518. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/state.rs +546 -0
  519. data/ext/cargo-vendor/wasmtime-cranelift-29.0.0/src/translate/table.rs +122 -0
  520. data/ext/cargo-vendor/wasmtime-environ-29.0.0/.cargo-checksum.json +1 -0
  521. data/ext/cargo-vendor/wasmtime-environ-29.0.0/Cargo.lock +713 -0
  522. data/ext/cargo-vendor/wasmtime-environ-29.0.0/Cargo.toml +217 -0
  523. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/builtin.rs +385 -0
  524. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/compile/mod.rs +390 -0
  525. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/compile/module_artifacts.rs +318 -0
  526. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/component/info.rs +693 -0
  527. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/component/vmcomponent_offsets.rs +316 -0
  528. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/component.rs +108 -0
  529. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/demangling.rs +31 -0
  530. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/ext.rs +40 -0
  531. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/hostcall.rs +59 -0
  532. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/lib.rs +74 -0
  533. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/module_artifacts.rs +142 -0
  534. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/tunables.rs +244 -0
  535. data/ext/cargo-vendor/wasmtime-environ-29.0.0/src/vmoffsets.rs +903 -0
  536. data/ext/cargo-vendor/wasmtime-fiber-29.0.0/.cargo-checksum.json +1 -0
  537. data/ext/cargo-vendor/wasmtime-fiber-29.0.0/Cargo.lock +279 -0
  538. data/ext/cargo-vendor/wasmtime-fiber-29.0.0/Cargo.toml +101 -0
  539. data/ext/cargo-vendor/wasmtime-jit-debug-29.0.0/.cargo-checksum.json +1 -0
  540. data/ext/cargo-vendor/wasmtime-jit-debug-29.0.0/Cargo.lock +187 -0
  541. data/ext/cargo-vendor/wasmtime-jit-debug-29.0.0/Cargo.toml +95 -0
  542. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-29.0.0/.cargo-checksum.json +1 -0
  543. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-29.0.0/Cargo.lock +104 -0
  544. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-29.0.0/Cargo.toml +85 -0
  545. data/ext/cargo-vendor/wasmtime-math-29.0.0/.cargo-checksum.json +1 -0
  546. data/ext/cargo-vendor/wasmtime-math-29.0.0/Cargo.lock +16 -0
  547. data/ext/cargo-vendor/wasmtime-math-29.0.0/Cargo.toml +72 -0
  548. data/ext/cargo-vendor/wasmtime-math-29.0.0/src/lib.rs +281 -0
  549. data/ext/cargo-vendor/wasmtime-slab-29.0.0/.cargo-checksum.json +1 -0
  550. data/ext/cargo-vendor/wasmtime-slab-29.0.0/Cargo.lock +7 -0
  551. data/ext/cargo-vendor/wasmtime-slab-29.0.0/Cargo.toml +64 -0
  552. data/ext/cargo-vendor/wasmtime-versioned-export-macros-29.0.0/.cargo-checksum.json +1 -0
  553. data/ext/cargo-vendor/wasmtime-versioned-export-macros-29.0.0/Cargo.lock +47 -0
  554. data/ext/cargo-vendor/wasmtime-versioned-export-macros-29.0.0/Cargo.toml +42 -0
  555. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/.cargo-checksum.json +1 -0
  556. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/Cargo.lock +2112 -0
  557. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/Cargo.toml +238 -0
  558. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/bindings.rs +565 -0
  559. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/host/filesystem.rs +1088 -0
  560. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/host/io.rs +370 -0
  561. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/host/tcp.rs +546 -0
  562. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/host/udp.rs +760 -0
  563. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/ip_name_lookup.rs +130 -0
  564. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/pipe.rs +836 -0
  565. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/src/poll.rs +243 -0
  566. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/cli/command.wit +10 -0
  567. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/cli/imports.wit +36 -0
  568. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/cli/stdio.wit +26 -0
  569. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/clocks/monotonic-clock.wit +50 -0
  570. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/clocks/timezone.wit +55 -0
  571. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/clocks/wall-clock.wit +46 -0
  572. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/clocks/world.wit +11 -0
  573. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/filesystem/preopens.wit +11 -0
  574. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/filesystem/types.wit +672 -0
  575. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/filesystem/world.wit +9 -0
  576. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/io/error.wit +34 -0
  577. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/io/poll.wit +47 -0
  578. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/io/streams.wit +290 -0
  579. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/io/world.wit +10 -0
  580. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/random/insecure-seed.wit +27 -0
  581. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/random/insecure.wit +25 -0
  582. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/random/random.wit +29 -0
  583. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/random/world.wit +13 -0
  584. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/sockets/ip-name-lookup.wit +56 -0
  585. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/sockets/network.wit +169 -0
  586. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/sockets/tcp.wit +387 -0
  587. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/sockets/udp.wit +288 -0
  588. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/deps/sockets/world.wit +19 -0
  589. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/test.wit +13 -0
  590. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/wit/world.wit +6 -0
  591. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/witx/preview0/wasi_unstable.witx +513 -0
  592. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/witx/preview1/typenames.witx +750 -0
  593. data/ext/cargo-vendor/wasmtime-wasi-29.0.0/witx/preview1/wasi_snapshot_preview1.witx +521 -0
  594. data/ext/cargo-vendor/wasmtime-winch-29.0.0/.cargo-checksum.json +1 -0
  595. data/ext/cargo-vendor/wasmtime-winch-29.0.0/Cargo.lock +587 -0
  596. data/ext/cargo-vendor/wasmtime-winch-29.0.0/Cargo.toml +120 -0
  597. data/ext/cargo-vendor/wasmtime-winch-29.0.0/src/builder.rs +100 -0
  598. data/ext/cargo-vendor/wasmtime-wit-bindgen-29.0.0/.cargo-checksum.json +1 -0
  599. data/ext/cargo-vendor/wasmtime-wit-bindgen-29.0.0/Cargo.lock +185 -0
  600. data/ext/cargo-vendor/wasmtime-wit-bindgen-29.0.0/Cargo.toml +80 -0
  601. data/ext/cargo-vendor/wasmtime-wit-bindgen-29.0.0/src/lib.rs +3356 -0
  602. data/ext/cargo-vendor/wast-224.0.0/.cargo-checksum.json +1 -0
  603. data/ext/cargo-vendor/wast-224.0.0/Cargo.lock +518 -0
  604. data/ext/cargo-vendor/wast-224.0.0/Cargo.toml +111 -0
  605. data/ext/cargo-vendor/wast-224.0.0/src/component/binary.rs +959 -0
  606. data/ext/cargo-vendor/wast-224.0.0/src/component/expand.rs +1078 -0
  607. data/ext/cargo-vendor/wast-224.0.0/src/component/resolve.rs +1178 -0
  608. data/ext/cargo-vendor/wast-224.0.0/src/component/types.rs +1041 -0
  609. data/ext/cargo-vendor/wat-1.224.0/.cargo-checksum.json +1 -0
  610. data/ext/cargo-vendor/wat-1.224.0/Cargo.lock +126 -0
  611. data/ext/cargo-vendor/wat-1.224.0/Cargo.toml +61 -0
  612. data/ext/cargo-vendor/wiggle-29.0.0/.cargo-checksum.json +1 -0
  613. data/ext/cargo-vendor/wiggle-29.0.0/Cargo.lock +1233 -0
  614. data/ext/cargo-vendor/wiggle-29.0.0/Cargo.toml +133 -0
  615. data/ext/cargo-vendor/wiggle-generate-29.0.0/.cargo-checksum.json +1 -0
  616. data/ext/cargo-vendor/wiggle-generate-29.0.0/Cargo.lock +223 -0
  617. data/ext/cargo-vendor/wiggle-generate-29.0.0/Cargo.toml +99 -0
  618. data/ext/cargo-vendor/wiggle-macro-29.0.0/.cargo-checksum.json +1 -0
  619. data/ext/cargo-vendor/wiggle-macro-29.0.0/Cargo.lock +235 -0
  620. data/ext/cargo-vendor/wiggle-macro-29.0.0/Cargo.toml +92 -0
  621. data/ext/cargo-vendor/winch-codegen-29.0.0/.cargo-checksum.json +1 -0
  622. data/ext/cargo-vendor/winch-codegen-29.0.0/Cargo.lock +559 -0
  623. data/ext/cargo-vendor/winch-codegen-29.0.0/Cargo.toml +118 -0
  624. data/ext/cargo-vendor/winch-codegen-29.0.0/src/abi/mod.rs +666 -0
  625. data/ext/cargo-vendor/winch-codegen-29.0.0/src/codegen/bounds.rs +230 -0
  626. data/ext/cargo-vendor/winch-codegen-29.0.0/src/codegen/builtin.rs +274 -0
  627. data/ext/cargo-vendor/winch-codegen-29.0.0/src/codegen/call.rs +444 -0
  628. data/ext/cargo-vendor/winch-codegen-29.0.0/src/codegen/context.rs +710 -0
  629. data/ext/cargo-vendor/winch-codegen-29.0.0/src/codegen/control.rs +1055 -0
  630. data/ext/cargo-vendor/winch-codegen-29.0.0/src/codegen/error.rs +182 -0
  631. data/ext/cargo-vendor/winch-codegen-29.0.0/src/codegen/mod.rs +1304 -0
  632. data/ext/cargo-vendor/winch-codegen-29.0.0/src/frame/mod.rs +294 -0
  633. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/aarch64/abi.rs +299 -0
  634. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/aarch64/asm.rs +1085 -0
  635. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/aarch64/masm.rs +886 -0
  636. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/aarch64/mod.rs +175 -0
  637. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/mod.rs +338 -0
  638. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/x64/abi.rs +494 -0
  639. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/x64/asm.rs +1478 -0
  640. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/x64/masm.rs +1361 -0
  641. data/ext/cargo-vendor/winch-codegen-29.0.0/src/isa/x64/mod.rs +176 -0
  642. data/ext/cargo-vendor/winch-codegen-29.0.0/src/masm.rs +1131 -0
  643. data/ext/cargo-vendor/winch-codegen-29.0.0/src/regalloc.rs +74 -0
  644. data/ext/cargo-vendor/winch-codegen-29.0.0/src/stack.rs +458 -0
  645. data/ext/cargo-vendor/winch-codegen-29.0.0/src/visitor.rs +2312 -0
  646. data/ext/cargo-vendor/winnow-0.6.24/.cargo-checksum.json +1 -0
  647. data/ext/cargo-vendor/winnow-0.6.24/Cargo.lock +1567 -0
  648. data/ext/cargo-vendor/winnow-0.6.24/Cargo.toml +359 -0
  649. data/ext/cargo-vendor/winnow-0.6.24/examples/json/parser_partial.rs +350 -0
  650. data/ext/cargo-vendor/winnow-0.6.24/src/_topic/nom.rs +104 -0
  651. data/ext/cargo-vendor/winnow-0.6.24/src/_topic/stream.rs +65 -0
  652. data/ext/cargo-vendor/winnow-0.6.24/src/_topic/why.rs +127 -0
  653. data/ext/cargo-vendor/winnow-0.6.24/src/ascii/mod.rs +1895 -0
  654. data/ext/cargo-vendor/winnow-0.6.24/src/binary/bits/mod.rs +412 -0
  655. data/ext/cargo-vendor/winnow-0.6.24/src/binary/bits/tests.rs +192 -0
  656. data/ext/cargo-vendor/winnow-0.6.24/src/combinator/core.rs +528 -0
  657. data/ext/cargo-vendor/winnow-0.6.24/src/combinator/impls.rs +728 -0
  658. data/ext/cargo-vendor/winnow-0.6.24/src/combinator/mod.rs +182 -0
  659. data/ext/cargo-vendor/winnow-0.6.24/src/combinator/multi.rs +1612 -0
  660. data/ext/cargo-vendor/winnow-0.6.24/src/combinator/tests.rs +1373 -0
  661. data/ext/cargo-vendor/winnow-0.6.24/src/error.rs +1422 -0
  662. data/ext/cargo-vendor/winnow-0.6.24/src/lib.rs +166 -0
  663. data/ext/cargo-vendor/winnow-0.6.24/src/macros/mod.rs +5 -0
  664. data/ext/cargo-vendor/winnow-0.6.24/src/parser.rs +1373 -0
  665. data/ext/cargo-vendor/winnow-0.6.24/src/stream/mod.rs +3827 -0
  666. data/ext/cargo-vendor/winnow-0.6.24/src/token/mod.rs +1105 -0
  667. data/ext/cargo-vendor/winnow-0.6.24/src/token/tests.rs +863 -0
  668. data/lib/wasmtime/version.rb +1 -1
  669. metadata +2408 -2300
  670. data/ext/cargo-vendor/bitflags-2.6.0/.cargo-checksum.json +0 -1
  671. data/ext/cargo-vendor/bitflags-2.6.0/CHANGELOG.md +0 -553
  672. data/ext/cargo-vendor/bitflags-2.6.0/Cargo.lock +0 -383
  673. data/ext/cargo-vendor/bitflags-2.6.0/Cargo.toml +0 -96
  674. data/ext/cargo-vendor/bitflags-2.6.0/README.md +0 -77
  675. data/ext/cargo-vendor/bitflags-2.6.0/examples/custom_derive.rs +0 -23
  676. data/ext/cargo-vendor/bitflags-2.6.0/src/external/arbitrary.rs +0 -33
  677. data/ext/cargo-vendor/bitflags-2.6.0/src/lib.rs +0 -927
  678. data/ext/cargo-vendor/bitflags-2.6.0/src/tests.rs +0 -131
  679. data/ext/cargo-vendor/bitflags-2.6.0/src/traits.rs +0 -431
  680. data/ext/cargo-vendor/cc-1.2.7/.cargo-checksum.json +0 -1
  681. data/ext/cargo-vendor/cc-1.2.7/CHANGELOG.md +0 -352
  682. data/ext/cargo-vendor/cc-1.2.7/Cargo.lock +0 -191
  683. data/ext/cargo-vendor/cc-1.2.7/Cargo.toml +0 -67
  684. data/ext/cargo-vendor/cc-1.2.7/src/flags.rs +0 -480
  685. data/ext/cargo-vendor/cc-1.2.7/src/lib.rs +0 -4210
  686. data/ext/cargo-vendor/cc-1.2.7/src/target/generated.rs +0 -3343
  687. data/ext/cargo-vendor/cc-1.2.7/src/tool.rs +0 -478
  688. data/ext/cargo-vendor/cc-1.2.7/src/windows/windows_sys.rs +0 -121
  689. data/ext/cargo-vendor/cpufeatures-0.2.16/.cargo-checksum.json +0 -1
  690. data/ext/cargo-vendor/cpufeatures-0.2.16/CHANGELOG.md +0 -162
  691. data/ext/cargo-vendor/cpufeatures-0.2.16/Cargo.lock +0 -16
  692. data/ext/cargo-vendor/cpufeatures-0.2.16/Cargo.toml +0 -67
  693. data/ext/cargo-vendor/cpufeatures-0.2.16/LICENSE-MIT +0 -25
  694. data/ext/cargo-vendor/cpufeatures-0.2.16/README.md +0 -126
  695. data/ext/cargo-vendor/cranelift-bforest-0.115.0/.cargo-checksum.json +0 -1
  696. data/ext/cargo-vendor/cranelift-bforest-0.115.0/Cargo.toml +0 -70
  697. data/ext/cargo-vendor/cranelift-bitset-0.115.0/.cargo-checksum.json +0 -1
  698. data/ext/cargo-vendor/cranelift-bitset-0.115.0/Cargo.toml +0 -85
  699. data/ext/cargo-vendor/cranelift-bitset-0.115.0/src/scalar.rs +0 -626
  700. data/ext/cargo-vendor/cranelift-codegen-0.115.0/.cargo-checksum.json +0 -1
  701. data/ext/cargo-vendor/cranelift-codegen-0.115.0/Cargo.toml +0 -238
  702. data/ext/cargo-vendor/cranelift-codegen-0.115.0/build.rs +0 -255
  703. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/binemit/mod.rs +0 -173
  704. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/ir/immediates.rs +0 -1941
  705. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/abi.rs +0 -1536
  706. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/inst/args.rs +0 -711
  707. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/inst/emit.rs +0 -3567
  708. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/inst/emit_tests.rs +0 -7972
  709. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/inst/mod.rs +0 -3056
  710. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/inst/regs.rs +0 -269
  711. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/inst.isle +0 -5097
  712. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/lower/isle.rs +0 -752
  713. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/lower.isle +0 -3123
  714. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/aarch64/mod.rs +0 -260
  715. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/mod.rs +0 -472
  716. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/abi.rs +0 -762
  717. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/inst/args.rs +0 -226
  718. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/inst/emit.rs +0 -598
  719. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/inst/mod.rs +0 -976
  720. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/inst/regs.rs +0 -164
  721. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/inst.isle +0 -589
  722. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/lower/isle.rs +0 -148
  723. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/lower.isle +0 -251
  724. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/pulley_shared/mod.rs +0 -281
  725. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/riscv64/abi.rs +0 -989
  726. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/riscv64/inst/args.rs +0 -1957
  727. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/riscv64/inst/emit_tests.rs +0 -2277
  728. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/s390x/abi.rs +0 -1397
  729. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/s390x/inst/emit.rs +0 -3426
  730. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/x64/abi.rs +0 -1384
  731. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/x64/inst.isle +0 -5758
  732. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/x64/lower/isle/generated_code.rs +0 -15
  733. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isa/x64/lower/isle.rs +0 -1001
  734. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/isle_prelude.rs +0 -1144
  735. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/machinst/abi.rs +0 -2451
  736. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/machinst/buffer.rs +0 -2496
  737. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/machinst/lower.rs +0 -1602
  738. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/prelude.isle +0 -827
  739. data/ext/cargo-vendor/cranelift-codegen-0.115.0/src/prelude_lower.isle +0 -1116
  740. data/ext/cargo-vendor/cranelift-codegen-meta-0.115.0/.cargo-checksum.json +0 -1
  741. data/ext/cargo-vendor/cranelift-codegen-meta-0.115.0/Cargo.toml +0 -65
  742. data/ext/cargo-vendor/cranelift-codegen-meta-0.115.0/src/cdsl/instructions.rs +0 -494
  743. data/ext/cargo-vendor/cranelift-codegen-meta-0.115.0/src/isa/pulley.rs +0 -14
  744. data/ext/cargo-vendor/cranelift-codegen-meta-0.115.0/src/isle.rs +0 -182
  745. data/ext/cargo-vendor/cranelift-codegen-meta-0.115.0/src/lib.rs +0 -98
  746. data/ext/cargo-vendor/cranelift-codegen-meta-0.115.0/src/shared/instructions.rs +0 -3786
  747. data/ext/cargo-vendor/cranelift-codegen-shared-0.115.0/.cargo-checksum.json +0 -1
  748. data/ext/cargo-vendor/cranelift-codegen-shared-0.115.0/Cargo.toml +0 -33
  749. data/ext/cargo-vendor/cranelift-control-0.115.0/.cargo-checksum.json +0 -1
  750. data/ext/cargo-vendor/cranelift-control-0.115.0/Cargo.toml +0 -44
  751. data/ext/cargo-vendor/cranelift-entity-0.115.0/.cargo-checksum.json +0 -1
  752. data/ext/cargo-vendor/cranelift-entity-0.115.0/Cargo.toml +0 -86
  753. data/ext/cargo-vendor/cranelift-entity-0.115.0/src/sparse.rs +0 -367
  754. data/ext/cargo-vendor/cranelift-frontend-0.115.0/.cargo-checksum.json +0 -1
  755. data/ext/cargo-vendor/cranelift-frontend-0.115.0/Cargo.toml +0 -108
  756. data/ext/cargo-vendor/cranelift-isle-0.115.0/.cargo-checksum.json +0 -1
  757. data/ext/cargo-vendor/cranelift-isle-0.115.0/Cargo.toml +0 -80
  758. data/ext/cargo-vendor/cranelift-native-0.115.0/.cargo-checksum.json +0 -1
  759. data/ext/cargo-vendor/cranelift-native-0.115.0/Cargo.toml +0 -53
  760. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.28/.cargo-checksum.json +0 -1
  761. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.28/Cargo.toml +0 -70
  762. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.28/README.md +0 -52
  763. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.28/tests/common/mod.rs +0 -33
  764. data/ext/cargo-vendor/indexmap-2.7.0/.cargo-checksum.json +0 -1
  765. data/ext/cargo-vendor/indexmap-2.7.0/Cargo.toml +0 -153
  766. data/ext/cargo-vendor/indexmap-2.7.0/RELEASES.md +0 -536
  767. data/ext/cargo-vendor/indexmap-2.7.0/src/lib.rs +0 -274
  768. data/ext/cargo-vendor/indexmap-2.7.0/src/map/core/entry.rs +0 -569
  769. data/ext/cargo-vendor/indexmap-2.7.0/src/map/core.rs +0 -722
  770. data/ext/cargo-vendor/indexmap-2.7.0/src/map/iter.rs +0 -775
  771. data/ext/cargo-vendor/indexmap-2.7.0/src/map.rs +0 -1578
  772. data/ext/cargo-vendor/indexmap-2.7.0/src/set/iter.rs +0 -627
  773. data/ext/cargo-vendor/indexmap-2.7.0/src/set.rs +0 -1290
  774. data/ext/cargo-vendor/indexmap-2.7.0/src/util.rs +0 -53
  775. data/ext/cargo-vendor/ipnet-2.10.1/.cargo-checksum.json +0 -1
  776. data/ext/cargo-vendor/ipnet-2.10.1/Cargo.toml +0 -68
  777. data/ext/cargo-vendor/ipnet-2.10.1/src/ipext.rs +0 -995
  778. data/ext/cargo-vendor/ipnet-2.10.1/src/ipnet.rs +0 -2002
  779. data/ext/cargo-vendor/ipnet-2.10.1/src/lib.rs +0 -108
  780. data/ext/cargo-vendor/js-sys-0.3.76/.cargo-checksum.json +0 -1
  781. data/ext/cargo-vendor/js-sys-0.3.76/Cargo.toml +0 -69
  782. data/ext/cargo-vendor/js-sys-0.3.76/src/lib.rs +0 -6426
  783. data/ext/cargo-vendor/log-0.4.22/.cargo-checksum.json +0 -1
  784. data/ext/cargo-vendor/log-0.4.22/CHANGELOG.md +0 -324
  785. data/ext/cargo-vendor/log-0.4.22/Cargo.toml +0 -139
  786. data/ext/cargo-vendor/log-0.4.22/README.md +0 -130
  787. data/ext/cargo-vendor/log-0.4.22/src/kv/key.rs +0 -143
  788. data/ext/cargo-vendor/log-0.4.22/src/kv/mod.rs +0 -265
  789. data/ext/cargo-vendor/log-0.4.22/src/kv/value.rs +0 -1394
  790. data/ext/cargo-vendor/log-0.4.22/src/lib.rs +0 -1878
  791. data/ext/cargo-vendor/log-0.4.22/src/serde.rs +0 -397
  792. data/ext/cargo-vendor/miniz_oxide-0.8.2/.cargo-checksum.json +0 -1
  793. data/ext/cargo-vendor/miniz_oxide-0.8.2/Cargo.toml +0 -87
  794. data/ext/cargo-vendor/miniz_oxide-0.8.2/LICENSE +0 -21
  795. data/ext/cargo-vendor/miniz_oxide-0.8.2/LICENSE-MIT.md +0 -21
  796. data/ext/cargo-vendor/miniz_oxide-0.8.2/LICENSE-ZLIB.md +0 -11
  797. data/ext/cargo-vendor/miniz_oxide-0.8.2/src/deflate/core.rs +0 -2528
  798. data/ext/cargo-vendor/miniz_oxide-0.8.2/src/deflate/mod.rs +0 -226
  799. data/ext/cargo-vendor/proc-macro2-1.0.92/.cargo-checksum.json +0 -1
  800. data/ext/cargo-vendor/proc-macro2-1.0.92/Cargo.lock +0 -313
  801. data/ext/cargo-vendor/proc-macro2-1.0.92/Cargo.toml +0 -105
  802. data/ext/cargo-vendor/proc-macro2-1.0.92/src/fallback.rs +0 -1266
  803. data/ext/cargo-vendor/proc-macro2-1.0.92/src/lib.rs +0 -1389
  804. data/ext/cargo-vendor/proc-macro2-1.0.92/src/rcvec.rs +0 -145
  805. data/ext/cargo-vendor/pulley-interpreter-28.0.0/.cargo-checksum.json +0 -1
  806. data/ext/cargo-vendor/pulley-interpreter-28.0.0/Cargo.lock +0 -386
  807. data/ext/cargo-vendor/pulley-interpreter-28.0.0/Cargo.toml +0 -118
  808. data/ext/cargo-vendor/pulley-interpreter-28.0.0/examples/objdump.rs +0 -48
  809. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/decode.rs +0 -734
  810. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/disas.rs +0 -292
  811. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/encode.rs +0 -198
  812. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/imms.rs +0 -31
  813. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/interp/match_loop.rs +0 -38
  814. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/interp/tail_loop.rs +0 -137
  815. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/interp.rs +0 -1269
  816. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/lib.rs +0 -258
  817. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/op.rs +0 -256
  818. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/opcode.rs +0 -123
  819. data/ext/cargo-vendor/pulley-interpreter-28.0.0/src/regs.rs +0 -345
  820. data/ext/cargo-vendor/pulley-interpreter-28.0.0/tests/all/disas.rs +0 -189
  821. data/ext/cargo-vendor/pulley-interpreter-28.0.0/tests/all/interp.rs +0 -1216
  822. data/ext/cargo-vendor/rustix-0.38.43/.cargo-checksum.json +0 -1
  823. data/ext/cargo-vendor/rustix-0.38.43/Cargo.lock +0 -1012
  824. data/ext/cargo-vendor/rustix-0.38.43/Cargo.toml +0 -308
  825. data/ext/cargo-vendor/rustix-0.38.43/src/backend/libc/system/syscalls.rs +0 -121
  826. data/ext/cargo-vendor/rustix-0.38.43/src/backend/linux_raw/system/syscalls.rs +0 -86
  827. data/ext/cargo-vendor/rustix-0.38.43/src/lib.rs +0 -401
  828. data/ext/cargo-vendor/rustix-0.38.43/src/maybe_polyfill/std/mod.rs +0 -43
  829. data/ext/cargo-vendor/rustix-0.38.43/src/system.rs +0 -261
  830. data/ext/cargo-vendor/rustix-0.38.43/src/weak.rs +0 -287
  831. data/ext/cargo-vendor/semver-1.0.24/.cargo-checksum.json +0 -1
  832. data/ext/cargo-vendor/semver-1.0.24/Cargo.lock +0 -65
  833. data/ext/cargo-vendor/semver-1.0.24/Cargo.toml +0 -71
  834. data/ext/cargo-vendor/semver-1.0.24/src/lib.rs +0 -580
  835. data/ext/cargo-vendor/serde_json-1.0.135/.cargo-checksum.json +0 -1
  836. data/ext/cargo-vendor/serde_json-1.0.135/Cargo.lock +0 -417
  837. data/ext/cargo-vendor/serde_json-1.0.135/Cargo.toml +0 -149
  838. data/ext/cargo-vendor/serde_json-1.0.135/src/lib.rs +0 -435
  839. data/ext/cargo-vendor/serde_json-1.0.135/src/value/ser.rs +0 -1063
  840. data/ext/cargo-vendor/syn-2.0.95/.cargo-checksum.json +0 -1
  841. data/ext/cargo-vendor/syn-2.0.95/Cargo.lock +0 -1749
  842. data/ext/cargo-vendor/syn-2.0.95/Cargo.toml +0 -268
  843. data/ext/cargo-vendor/syn-2.0.95/src/expr.rs +0 -4099
  844. data/ext/cargo-vendor/syn-2.0.95/src/fixup.rs +0 -725
  845. data/ext/cargo-vendor/syn-2.0.95/src/lib.rs +0 -1010
  846. data/ext/cargo-vendor/syn-2.0.95/tests/test_expr.rs +0 -1631
  847. data/ext/cargo-vendor/target-lexicon-0.12.16/.cargo-checksum.json +0 -1
  848. data/ext/cargo-vendor/target-lexicon-0.12.16/Cargo.lock +0 -89
  849. data/ext/cargo-vendor/target-lexicon-0.12.16/Cargo.toml +0 -65
  850. data/ext/cargo-vendor/target-lexicon-0.12.16/README.md +0 -20
  851. data/ext/cargo-vendor/target-lexicon-0.12.16/src/host.rs +0 -63
  852. data/ext/cargo-vendor/target-lexicon-0.12.16/src/lib.rs +0 -109
  853. data/ext/cargo-vendor/target-lexicon-0.12.16/src/targets.rs +0 -1955
  854. data/ext/cargo-vendor/target-lexicon-0.12.16/src/triple.rs +0 -554
  855. data/ext/cargo-vendor/unicode-ident-1.0.14/.cargo-checksum.json +0 -1
  856. data/ext/cargo-vendor/unicode-ident-1.0.14/Cargo.lock +0 -566
  857. data/ext/cargo-vendor/unicode-ident-1.0.14/Cargo.toml +0 -80
  858. data/ext/cargo-vendor/unicode-ident-1.0.14/README.md +0 -282
  859. data/ext/cargo-vendor/unicode-ident-1.0.14/benches/xid.rs +0 -127
  860. data/ext/cargo-vendor/unicode-ident-1.0.14/src/lib.rs +0 -269
  861. data/ext/cargo-vendor/uuid-1.11.0/.cargo-checksum.json +0 -1
  862. data/ext/cargo-vendor/uuid-1.11.0/Cargo.toml +0 -219
  863. data/ext/cargo-vendor/uuid-1.11.0/README.md +0 -93
  864. data/ext/cargo-vendor/uuid-1.11.0/src/builder.rs +0 -930
  865. data/ext/cargo-vendor/uuid-1.11.0/src/error.rs +0 -172
  866. data/ext/cargo-vendor/uuid-1.11.0/src/external/arbitrary_support.rs +0 -45
  867. data/ext/cargo-vendor/uuid-1.11.0/src/external/serde_support.rs +0 -735
  868. data/ext/cargo-vendor/uuid-1.11.0/src/external/slog_support.rs +0 -37
  869. data/ext/cargo-vendor/uuid-1.11.0/src/lib.rs +0 -1895
  870. data/ext/cargo-vendor/uuid-1.11.0/src/timestamp.rs +0 -972
  871. data/ext/cargo-vendor/uuid-1.11.0/src/v5.rs +0 -188
  872. data/ext/cargo-vendor/uuid-1.11.0/src/v7.rs +0 -241
  873. data/ext/cargo-vendor/wasi-common-28.0.0/.cargo-checksum.json +0 -1
  874. data/ext/cargo-vendor/wasi-common-28.0.0/Cargo.toml +0 -249
  875. data/ext/cargo-vendor/wasi-common-28.0.0/witx/preview0/wasi_unstable.witx +0 -513
  876. data/ext/cargo-vendor/wasi-common-28.0.0/witx/preview1/typenames.witx +0 -750
  877. data/ext/cargo-vendor/wasi-common-28.0.0/witx/preview1/wasi_snapshot_preview1.witx +0 -521
  878. data/ext/cargo-vendor/wasm-bindgen-0.2.99/.cargo-checksum.json +0 -1
  879. data/ext/cargo-vendor/wasm-bindgen-0.2.99/Cargo.toml +0 -104
  880. data/ext/cargo-vendor/wasm-bindgen-0.2.99/src/cache/intern.rs +0 -103
  881. data/ext/cargo-vendor/wasm-bindgen-0.2.99/src/closure.rs +0 -913
  882. data/ext/cargo-vendor/wasm-bindgen-0.2.99/src/convert/closures.rs +0 -249
  883. data/ext/cargo-vendor/wasm-bindgen-0.2.99/src/externref.rs +0 -177
  884. data/ext/cargo-vendor/wasm-bindgen-0.2.99/src/lib.rs +0 -2525
  885. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.99/.cargo-checksum.json +0 -1
  886. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.99/Cargo.toml +0 -71
  887. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.99/src/ast.rs +0 -581
  888. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.99/src/codegen.rs +0 -1945
  889. data/ext/cargo-vendor/wasm-bindgen-backend-0.2.99/src/encode.rs +0 -616
  890. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.99/.cargo-checksum.json +0 -1
  891. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.99/Cargo.toml +0 -64
  892. data/ext/cargo-vendor/wasm-bindgen-macro-0.2.99/src/lib.rs +0 -61
  893. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.99/.cargo-checksum.json +0 -1
  894. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.99/Cargo.toml +0 -74
  895. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.99/src/lib.rs +0 -170
  896. data/ext/cargo-vendor/wasm-bindgen-macro-support-0.2.99/src/parser.rs +0 -2067
  897. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.99/.cargo-checksum.json +0 -1
  898. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.99/Cargo.toml +0 -49
  899. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.99/src/lib.rs +0 -230
  900. data/ext/cargo-vendor/wasm-bindgen-shared-0.2.99/src/schema_hash_approval.rs +0 -16
  901. data/ext/cargo-vendor/wasm-encoder-0.223.0/.cargo-checksum.json +0 -1
  902. data/ext/cargo-vendor/wasm-encoder-0.223.0/Cargo.toml +0 -82
  903. data/ext/cargo-vendor/wasm-encoder-0.223.0/src/component/types.rs +0 -792
  904. data/ext/cargo-vendor/wasm-encoder-0.223.0/src/reencode/component.rs +0 -1446
  905. data/ext/cargo-vendor/wasmparser-0.223.0/.cargo-checksum.json +0 -1
  906. data/ext/cargo-vendor/wasmparser-0.223.0/Cargo.lock +0 -646
  907. data/ext/cargo-vendor/wasmparser-0.223.0/Cargo.toml +0 -139
  908. data/ext/cargo-vendor/wasmparser-0.223.0/src/readers/component/types.rs +0 -574
  909. data/ext/cargo-vendor/wasmparser-0.223.0/src/validator/component.rs +0 -4006
  910. data/ext/cargo-vendor/wasmparser-0.223.0/src/validator/component_types.rs +0 -3377
  911. data/ext/cargo-vendor/wasmtime-28.0.0/.cargo-checksum.json +0 -1
  912. data/ext/cargo-vendor/wasmtime-28.0.0/Cargo.toml +0 -467
  913. data/ext/cargo-vendor/wasmtime-28.0.0/src/compile/code_builder.rs +0 -317
  914. data/ext/cargo-vendor/wasmtime-28.0.0/src/compile/runtime.rs +0 -171
  915. data/ext/cargo-vendor/wasmtime-28.0.0/src/compile.rs +0 -914
  916. data/ext/cargo-vendor/wasmtime-28.0.0/src/config.rs +0 -3439
  917. data/ext/cargo-vendor/wasmtime-28.0.0/src/engine/serialization.rs +0 -942
  918. data/ext/cargo-vendor/wasmtime-28.0.0/src/engine.rs +0 -823
  919. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/code_memory.rs +0 -395
  920. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/component/bindgen_examples/mod.rs +0 -488
  921. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/component/func/host.rs +0 -455
  922. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/component/func/typed.rs +0 -2482
  923. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/component/mod.rs +0 -677
  924. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/externals/global.rs +0 -312
  925. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/func/typed.rs +0 -788
  926. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/func.rs +0 -2672
  927. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/instance.rs +0 -986
  928. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/memory.rs +0 -1092
  929. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/module/registry.rs +0 -344
  930. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/profiling.rs +0 -280
  931. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/store.rs +0 -2962
  932. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/trampoline/global.rs +0 -70
  933. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/trampoline/memory.rs +0 -261
  934. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/trap.rs +0 -625
  935. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/values.rs +0 -1080
  936. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/arch/mod.rs +0 -45
  937. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/arch/unsupported.rs +0 -36
  938. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/arch/x86_64.rs +0 -28
  939. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/component/libcalls.rs +0 -570
  940. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/component.rs +0 -863
  941. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/cow.rs +0 -1155
  942. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/gc/enabled/drc.rs +0 -1093
  943. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/helpers.c +0 -200
  944. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +0 -1007
  945. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/instance/allocator/pooling/table_pool.rs +0 -256
  946. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/instance/allocator/pooling/unix_stack_pool.rs +0 -308
  947. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/instance/allocator/pooling.rs +0 -797
  948. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/libcalls.rs +0 -1439
  949. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/memory/malloc.rs +0 -203
  950. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/memory/mmap.rs +0 -229
  951. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/memory/static_.rs +0 -79
  952. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/memory.rs +0 -700
  953. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/mmap.rs +0 -355
  954. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/mmap_vec.rs +0 -201
  955. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/custom/mmap.rs +0 -125
  956. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/custom/vm.rs +0 -106
  957. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/miri/mmap.rs +0 -116
  958. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/miri/vm.rs +0 -59
  959. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/unix/mmap.rs +0 -192
  960. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/unix/signals.rs +0 -479
  961. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/unix/unwind.rs +0 -118
  962. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/unix/vm.rs +0 -187
  963. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/windows/mmap.rs +0 -231
  964. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/windows/mod.rs +0 -20
  965. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/windows/traphandlers.rs +0 -136
  966. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/sys/windows/vm.rs +0 -75
  967. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/traphandlers/backtrace.rs +0 -267
  968. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/traphandlers/coredump_enabled.rs +0 -42
  969. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/traphandlers/signals.rs +0 -164
  970. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/traphandlers.rs +0 -740
  971. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm/vmcontext.rs +0 -1321
  972. data/ext/cargo-vendor/wasmtime-28.0.0/src/runtime/vm.rs +0 -401
  973. data/ext/cargo-vendor/wasmtime-asm-macros-28.0.0/.cargo-checksum.json +0 -1
  974. data/ext/cargo-vendor/wasmtime-asm-macros-28.0.0/Cargo.toml +0 -34
  975. data/ext/cargo-vendor/wasmtime-cache-28.0.0/.cargo-checksum.json +0 -1
  976. data/ext/cargo-vendor/wasmtime-cache-28.0.0/Cargo.toml +0 -119
  977. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/.cargo-checksum.json +0 -1
  978. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/Cargo.toml +0 -126
  979. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/char.rs +0 -387
  980. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/char_async.rs +0 -414
  981. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/char_tracing_async.rs +0 -461
  982. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/conventions.rs +0 -824
  983. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/conventions_async.rs +0 -899
  984. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/conventions_tracing_async.rs +0 -1190
  985. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/dead-code.rs +0 -279
  986. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/dead-code_async.rs +0 -300
  987. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/dead-code_tracing_async.rs +0 -313
  988. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/direct-import_async.rs +0 -219
  989. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/direct-import_tracing_async.rs +0 -232
  990. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/flags.rs +0 -859
  991. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/flags_async.rs +0 -921
  992. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/flags_tracing_async.rs +0 -1096
  993. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/floats.rs +0 -447
  994. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/floats_async.rs +0 -488
  995. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/floats_tracing_async.rs +0 -582
  996. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/host-world_async.rs +0 -219
  997. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/host-world_tracing_async.rs +0 -232
  998. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/integers.rs +0 -989
  999. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/integers_async.rs +0 -1128
  1000. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/integers_tracing_async.rs +0 -1555
  1001. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/lists.rs +0 -2032
  1002. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/lists_async.rs +0 -2288
  1003. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/lists_tracing_async.rs +0 -2980
  1004. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/many-arguments.rs +0 -730
  1005. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/many-arguments_async.rs +0 -758
  1006. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/many-arguments_tracing_async.rs +0 -819
  1007. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/multi-return.rs +0 -475
  1008. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/multi-return_async.rs +0 -519
  1009. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/multi-return_tracing_async.rs +0 -633
  1010. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/multiversion.rs +0 -508
  1011. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/multiversion_async.rs +0 -537
  1012. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/multiversion_tracing_async.rs +0 -585
  1013. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/path1.rs +0 -208
  1014. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/path1_async.rs +0 -221
  1015. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/path1_tracing_async.rs +0 -221
  1016. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/path2.rs +0 -208
  1017. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/path2_async.rs +0 -221
  1018. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/path2_tracing_async.rs +0 -221
  1019. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/records.rs +0 -1056
  1020. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/records_async.rs +0 -1146
  1021. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/records_tracing_async.rs +0 -1406
  1022. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/rename.rs +0 -268
  1023. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/rename_async.rs +0 -289
  1024. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/rename_tracing_async.rs +0 -302
  1025. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/resources-export.rs +0 -879
  1026. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/resources-export_async.rs +0 -937
  1027. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/resources-export_tracing_async.rs +0 -1011
  1028. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/resources-import.rs +0 -1217
  1029. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/resources-import_async.rs +0 -1361
  1030. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/resources-import_tracing_async.rs +0 -1774
  1031. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/share-types.rs +0 -429
  1032. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/share-types_async.rs +0 -453
  1033. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/share-types_tracing_async.rs +0 -477
  1034. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-functions.rs +0 -522
  1035. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-functions_async.rs +0 -574
  1036. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-functions_tracing_async.rs +0 -718
  1037. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-lists.rs +0 -545
  1038. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-lists_async.rs +0 -590
  1039. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-lists_tracing_async.rs +0 -687
  1040. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-wasi.rs +0 -331
  1041. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-wasi_async.rs +0 -354
  1042. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/simple-wasi_tracing_async.rs +0 -380
  1043. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/small-anonymous.rs +0 -454
  1044. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/small-anonymous_async.rs +0 -474
  1045. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/small-anonymous_tracing_async.rs +0 -496
  1046. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/smoke-export.rs +0 -263
  1047. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/smoke-export_async.rs +0 -272
  1048. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/smoke-export_tracing_async.rs +0 -280
  1049. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/smoke.rs +0 -218
  1050. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/smoke_async.rs +0 -233
  1051. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/smoke_tracing_async.rs +0 -246
  1052. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/strings.rs +0 -432
  1053. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/strings_async.rs +0 -466
  1054. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/strings_tracing_async.rs +0 -538
  1055. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/unstable-features.rs +0 -482
  1056. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/unstable-features_async.rs +0 -527
  1057. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/unstable-features_tracing_async.rs +0 -585
  1058. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/unversioned-foo.rs +0 -250
  1059. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/unversioned-foo_async.rs +0 -265
  1060. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/unversioned-foo_tracing_async.rs +0 -278
  1061. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/use-paths.rs +0 -402
  1062. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/use-paths_async.rs +0 -442
  1063. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/use-paths_tracing_async.rs +0 -494
  1064. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/variants.rs +0 -2016
  1065. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/variants_async.rs +0 -2183
  1066. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/variants_tracing_async.rs +0 -2705
  1067. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/wat.rs +0 -265
  1068. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/wat_async.rs +0 -271
  1069. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/wat_tracing_async.rs +0 -271
  1070. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/worlds-with-types.rs +0 -263
  1071. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/worlds-with-types_async.rs +0 -279
  1072. data/ext/cargo-vendor/wasmtime-component-macro-28.0.0/tests/expanded/worlds-with-types_tracing_async.rs +0 -287
  1073. data/ext/cargo-vendor/wasmtime-component-util-28.0.0/.cargo-checksum.json +0 -1
  1074. data/ext/cargo-vendor/wasmtime-component-util-28.0.0/Cargo.toml +0 -37
  1075. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/.cargo-checksum.json +0 -1
  1076. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/Cargo.toml +0 -167
  1077. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/compiler/component.rs +0 -982
  1078. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/compiler.rs +0 -1175
  1079. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/debug/gc.rs +0 -259
  1080. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/debug/transform/attr.rs +0 -309
  1081. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/debug/transform/debug_transform_logging.rs +0 -252
  1082. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/debug/transform/mod.rs +0 -274
  1083. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/debug/transform/unit.rs +0 -529
  1084. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/debug/transform/utils.rs +0 -46
  1085. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/func_environ.rs +0 -3403
  1086. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/gc/enabled/drc.rs +0 -748
  1087. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/gc/enabled/null.rs +0 -286
  1088. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/gc/enabled.rs +0 -1497
  1089. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/lib.rs +0 -435
  1090. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/obj.rs +0 -638
  1091. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/code_translator/bounds_checks.rs +0 -721
  1092. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/code_translator.rs +0 -4090
  1093. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/environ/mod.rs +0 -8
  1094. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/environ/spec.rs +0 -961
  1095. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/func_translator.rs +0 -283
  1096. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/mod.rs +0 -26
  1097. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/state.rs +0 -548
  1098. data/ext/cargo-vendor/wasmtime-cranelift-28.0.0/src/translate/table.rs +0 -117
  1099. data/ext/cargo-vendor/wasmtime-environ-28.0.0/.cargo-checksum.json +0 -1
  1100. data/ext/cargo-vendor/wasmtime-environ-28.0.0/Cargo.lock +0 -713
  1101. data/ext/cargo-vendor/wasmtime-environ-28.0.0/Cargo.toml +0 -214
  1102. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/builtin.rs +0 -290
  1103. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/compile/mod.rs +0 -384
  1104. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/compile/module_artifacts.rs +0 -329
  1105. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/component/info.rs +0 -682
  1106. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/component/vmcomponent_offsets.rs +0 -316
  1107. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/component.rs +0 -111
  1108. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/demangling.rs +0 -28
  1109. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/lib.rs +0 -69
  1110. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/module_artifacts.rs +0 -146
  1111. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/tunables.rs +0 -241
  1112. data/ext/cargo-vendor/wasmtime-environ-28.0.0/src/vmoffsets.rs +0 -894
  1113. data/ext/cargo-vendor/wasmtime-fiber-28.0.0/.cargo-checksum.json +0 -1
  1114. data/ext/cargo-vendor/wasmtime-fiber-28.0.0/Cargo.toml +0 -98
  1115. data/ext/cargo-vendor/wasmtime-jit-debug-28.0.0/.cargo-checksum.json +0 -1
  1116. data/ext/cargo-vendor/wasmtime-jit-debug-28.0.0/Cargo.toml +0 -92
  1117. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-28.0.0/.cargo-checksum.json +0 -1
  1118. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-28.0.0/Cargo.toml +0 -82
  1119. data/ext/cargo-vendor/wasmtime-slab-28.0.0/.cargo-checksum.json +0 -1
  1120. data/ext/cargo-vendor/wasmtime-slab-28.0.0/Cargo.toml +0 -61
  1121. data/ext/cargo-vendor/wasmtime-versioned-export-macros-28.0.0/.cargo-checksum.json +0 -1
  1122. data/ext/cargo-vendor/wasmtime-versioned-export-macros-28.0.0/Cargo.toml +0 -42
  1123. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/.cargo-checksum.json +0 -1
  1124. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/Cargo.toml +0 -232
  1125. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/bindings.rs +0 -566
  1126. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/host/filesystem.rs +0 -1091
  1127. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/host/io.rs +0 -372
  1128. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/host/tcp.rs +0 -547
  1129. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/host/udp.rs +0 -762
  1130. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/ip_name_lookup.rs +0 -132
  1131. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/pipe.rs +0 -833
  1132. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/src/poll.rs +0 -245
  1133. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/cli/command.wit +0 -10
  1134. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/cli/imports.wit +0 -36
  1135. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/cli/stdio.wit +0 -26
  1136. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/clocks/monotonic-clock.wit +0 -50
  1137. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/clocks/timezone.wit +0 -55
  1138. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/clocks/wall-clock.wit +0 -46
  1139. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/clocks/world.wit +0 -11
  1140. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/filesystem/preopens.wit +0 -11
  1141. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/filesystem/types.wit +0 -672
  1142. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/filesystem/world.wit +0 -9
  1143. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/io/error.wit +0 -34
  1144. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/io/poll.wit +0 -47
  1145. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/io/streams.wit +0 -290
  1146. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/io/world.wit +0 -10
  1147. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/random/insecure-seed.wit +0 -27
  1148. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/random/insecure.wit +0 -25
  1149. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/random/random.wit +0 -29
  1150. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/random/world.wit +0 -13
  1151. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/sockets/ip-name-lookup.wit +0 -56
  1152. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/sockets/network.wit +0 -169
  1153. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/sockets/tcp.wit +0 -387
  1154. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/sockets/udp.wit +0 -288
  1155. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/deps/sockets/world.wit +0 -19
  1156. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/test.wit +0 -13
  1157. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/wit/world.wit +0 -6
  1158. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/witx/preview0/wasi_unstable.witx +0 -513
  1159. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/witx/preview1/typenames.witx +0 -750
  1160. data/ext/cargo-vendor/wasmtime-wasi-28.0.0/witx/preview1/wasi_snapshot_preview1.witx +0 -521
  1161. data/ext/cargo-vendor/wasmtime-winch-28.0.0/.cargo-checksum.json +0 -1
  1162. data/ext/cargo-vendor/wasmtime-winch-28.0.0/Cargo.toml +0 -117
  1163. data/ext/cargo-vendor/wasmtime-winch-28.0.0/src/builder.rs +0 -104
  1164. data/ext/cargo-vendor/wasmtime-wit-bindgen-28.0.0/.cargo-checksum.json +0 -1
  1165. data/ext/cargo-vendor/wasmtime-wit-bindgen-28.0.0/Cargo.toml +0 -77
  1166. data/ext/cargo-vendor/wasmtime-wit-bindgen-28.0.0/src/lib.rs +0 -3360
  1167. data/ext/cargo-vendor/wast-223.0.0/.cargo-checksum.json +0 -1
  1168. data/ext/cargo-vendor/wast-223.0.0/Cargo.toml +0 -111
  1169. data/ext/cargo-vendor/wast-223.0.0/src/component/binary.rs +0 -959
  1170. data/ext/cargo-vendor/wast-223.0.0/src/component/expand.rs +0 -1076
  1171. data/ext/cargo-vendor/wast-223.0.0/src/component/resolve.rs +0 -1176
  1172. data/ext/cargo-vendor/wast-223.0.0/src/component/types.rs +0 -1041
  1173. data/ext/cargo-vendor/wat-1.223.0/.cargo-checksum.json +0 -1
  1174. data/ext/cargo-vendor/wat-1.223.0/Cargo.toml +0 -61
  1175. data/ext/cargo-vendor/wiggle-28.0.0/.cargo-checksum.json +0 -1
  1176. data/ext/cargo-vendor/wiggle-28.0.0/Cargo.toml +0 -130
  1177. data/ext/cargo-vendor/wiggle-generate-28.0.0/.cargo-checksum.json +0 -1
  1178. data/ext/cargo-vendor/wiggle-generate-28.0.0/Cargo.toml +0 -96
  1179. data/ext/cargo-vendor/wiggle-macro-28.0.0/.cargo-checksum.json +0 -1
  1180. data/ext/cargo-vendor/wiggle-macro-28.0.0/Cargo.toml +0 -89
  1181. data/ext/cargo-vendor/winch-codegen-28.0.0/.cargo-checksum.json +0 -1
  1182. data/ext/cargo-vendor/winch-codegen-28.0.0/Cargo.toml +0 -112
  1183. data/ext/cargo-vendor/winch-codegen-28.0.0/src/abi/mod.rs +0 -652
  1184. data/ext/cargo-vendor/winch-codegen-28.0.0/src/codegen/bounds.rs +0 -224
  1185. data/ext/cargo-vendor/winch-codegen-28.0.0/src/codegen/builtin.rs +0 -274
  1186. data/ext/cargo-vendor/winch-codegen-28.0.0/src/codegen/call.rs +0 -414
  1187. data/ext/cargo-vendor/winch-codegen-28.0.0/src/codegen/context.rs +0 -627
  1188. data/ext/cargo-vendor/winch-codegen-28.0.0/src/codegen/control.rs +0 -995
  1189. data/ext/cargo-vendor/winch-codegen-28.0.0/src/codegen/mod.rs +0 -1152
  1190. data/ext/cargo-vendor/winch-codegen-28.0.0/src/frame/mod.rs +0 -294
  1191. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/aarch64/abi.rs +0 -299
  1192. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/aarch64/asm.rs +0 -904
  1193. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/aarch64/masm.rs +0 -736
  1194. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/aarch64/mod.rs +0 -175
  1195. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/mod.rs +0 -327
  1196. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/x64/abi.rs +0 -494
  1197. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/x64/asm.rs +0 -1482
  1198. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/x64/masm.rs +0 -1217
  1199. data/ext/cargo-vendor/winch-codegen-28.0.0/src/isa/x64/mod.rs +0 -176
  1200. data/ext/cargo-vendor/winch-codegen-28.0.0/src/masm.rs +0 -1057
  1201. data/ext/cargo-vendor/winch-codegen-28.0.0/src/regalloc.rs +0 -65
  1202. data/ext/cargo-vendor/winch-codegen-28.0.0/src/stack.rs +0 -447
  1203. data/ext/cargo-vendor/winch-codegen-28.0.0/src/visitor.rs +0 -2274
  1204. data/ext/cargo-vendor/winnow-0.6.22/.cargo-checksum.json +0 -1
  1205. data/ext/cargo-vendor/winnow-0.6.22/Cargo.lock +0 -1567
  1206. data/ext/cargo-vendor/winnow-0.6.22/Cargo.toml +0 -359
  1207. data/ext/cargo-vendor/winnow-0.6.22/examples/json/parser_partial.rs +0 -350
  1208. data/ext/cargo-vendor/winnow-0.6.22/src/_topic/nom.rs +0 -104
  1209. data/ext/cargo-vendor/winnow-0.6.22/src/_topic/stream.rs +0 -65
  1210. data/ext/cargo-vendor/winnow-0.6.22/src/_topic/why.rs +0 -126
  1211. data/ext/cargo-vendor/winnow-0.6.22/src/ascii/mod.rs +0 -1895
  1212. data/ext/cargo-vendor/winnow-0.6.22/src/binary/bits/mod.rs +0 -420
  1213. data/ext/cargo-vendor/winnow-0.6.22/src/binary/bits/tests.rs +0 -191
  1214. data/ext/cargo-vendor/winnow-0.6.22/src/combinator/core.rs +0 -580
  1215. data/ext/cargo-vendor/winnow-0.6.22/src/combinator/mod.rs +0 -180
  1216. data/ext/cargo-vendor/winnow-0.6.22/src/combinator/multi.rs +0 -1328
  1217. data/ext/cargo-vendor/winnow-0.6.22/src/combinator/parser.rs +0 -1093
  1218. data/ext/cargo-vendor/winnow-0.6.22/src/combinator/tests.rs +0 -1393
  1219. data/ext/cargo-vendor/winnow-0.6.22/src/error.rs +0 -1423
  1220. data/ext/cargo-vendor/winnow-0.6.22/src/lib.rs +0 -164
  1221. data/ext/cargo-vendor/winnow-0.6.22/src/macros/mod.rs +0 -5
  1222. data/ext/cargo-vendor/winnow-0.6.22/src/parser.rs +0 -1245
  1223. data/ext/cargo-vendor/winnow-0.6.22/src/stream/mod.rs +0 -3822
  1224. data/ext/cargo-vendor/winnow-0.6.22/src/token/mod.rs +0 -1031
  1225. data/ext/cargo-vendor/winnow-0.6.22/src/token/tests.rs +0 -836
  1226. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/CODE_OF_CONDUCT.md +0 -0
  1227. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/CONTRIBUTING.md +0 -0
  1228. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/LICENSE-APACHE +0 -0
  1229. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/LICENSE-MIT +0 -0
  1230. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/SECURITY.md +0 -0
  1231. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/benches/parse.rs +0 -0
  1232. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/examples/custom_bits_type.rs +0 -0
  1233. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/examples/fmt.rs +0 -0
  1234. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/examples/macro_free.rs +0 -0
  1235. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/examples/serde.rs +0 -0
  1236. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/spec.md +0 -0
  1237. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/example_generated.rs +0 -0
  1238. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/external/bytemuck.rs +0 -0
  1239. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/external/serde.rs +0 -0
  1240. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/external.rs +0 -0
  1241. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/internal.rs +0 -0
  1242. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/iter.rs +0 -0
  1243. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/parser.rs +0 -0
  1244. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/public.rs +0 -0
  1245. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/all.rs +0 -0
  1246. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/bits.rs +0 -0
  1247. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/complement.rs +0 -0
  1248. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/contains.rs +0 -0
  1249. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/difference.rs +0 -0
  1250. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/empty.rs +0 -0
  1251. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/eq.rs +0 -0
  1252. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/extend.rs +0 -0
  1253. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/flags.rs +0 -0
  1254. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/fmt.rs +0 -0
  1255. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/from_bits.rs +0 -0
  1256. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/from_bits_retain.rs +0 -0
  1257. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/from_bits_truncate.rs +0 -0
  1258. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/from_name.rs +0 -0
  1259. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/insert.rs +0 -0
  1260. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/intersection.rs +0 -0
  1261. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/intersects.rs +0 -0
  1262. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/is_all.rs +0 -0
  1263. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/is_empty.rs +0 -0
  1264. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/iter.rs +0 -0
  1265. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/parser.rs +0 -0
  1266. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/remove.rs +0 -0
  1267. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/symmetric_difference.rs +0 -0
  1268. /data/ext/cargo-vendor/{bitflags-2.6.0 → bitflags-2.8.0}/src/tests/union.rs +0 -0
  1269. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/LICENSE-APACHE +0 -0
  1270. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/LICENSE-MIT +0 -0
  1271. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/README.md +0 -0
  1272. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/clippy.toml +0 -0
  1273. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/command_helpers.rs +0 -0
  1274. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/detect_compiler_family.c +0 -0
  1275. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/parallel/async_executor.rs +0 -0
  1276. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/parallel/job_token.rs +0 -0
  1277. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/parallel/mod.rs +0 -0
  1278. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/parallel/stderr.rs +0 -0
  1279. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/target/apple.rs +0 -0
  1280. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/target/llvm.rs +0 -0
  1281. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/target/parser.rs +0 -0
  1282. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/target.rs +0 -0
  1283. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/tempfile.rs +0 -0
  1284. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/utilities.rs +0 -0
  1285. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/com.rs +0 -0
  1286. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/find_tools.rs +0 -0
  1287. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/mod.rs +0 -0
  1288. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/registry.rs +0 -0
  1289. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/setup_config.rs +0 -0
  1290. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/vs_instances.rs +0 -0
  1291. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/winapi.rs +0 -0
  1292. /data/ext/cargo-vendor/{cc-1.2.7 → cc-1.2.10}/src/windows/windows_targets.rs +0 -0
  1293. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/LICENSE-APACHE +0 -0
  1294. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/src/aarch64.rs +0 -0
  1295. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/src/lib.rs +0 -0
  1296. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/src/loongarch64.rs +0 -0
  1297. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/src/miri.rs +0 -0
  1298. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/src/x86.rs +0 -0
  1299. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/tests/aarch64.rs +0 -0
  1300. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/tests/loongarch64.rs +0 -0
  1301. /data/ext/cargo-vendor/{cpufeatures-0.2.16 → cpufeatures-0.2.17}/tests/x86.rs +0 -0
  1302. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/LICENSE +0 -0
  1303. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/README.md +0 -0
  1304. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/src/lib.rs +0 -0
  1305. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/src/map.rs +0 -0
  1306. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/src/node.rs +0 -0
  1307. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/src/path.rs +0 -0
  1308. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/src/pool.rs +0 -0
  1309. /data/ext/cargo-vendor/{cranelift-bforest-0.115.0 → cranelift-bforest-0.116.1}/src/set.rs +0 -0
  1310. /data/ext/cargo-vendor/{cranelift-bitset-0.115.0 → cranelift-bitset-0.116.1}/src/compound.rs +0 -0
  1311. /data/ext/cargo-vendor/{cranelift-bitset-0.115.0 → cranelift-bitset-0.116.1}/src/lib.rs +0 -0
  1312. /data/ext/cargo-vendor/{cranelift-bitset-0.115.0 → cranelift-bitset-0.116.1}/tests/bitset.rs +0 -0
  1313. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/LICENSE +0 -0
  1314. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/README.md +0 -0
  1315. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/benches/x64-evex-encoding.rs +0 -0
  1316. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/alias_analysis.rs +0 -0
  1317. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/cfg_printer.rs +0 -0
  1318. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/constant_hash.rs +0 -0
  1319. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/context.rs +0 -0
  1320. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ctxhash.rs +0 -0
  1321. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/cursor.rs +0 -0
  1322. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/data_value.rs +0 -0
  1323. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/dbg.rs +0 -0
  1324. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/dominator_tree.rs +0 -0
  1325. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/egraph/cost.rs +0 -0
  1326. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/egraph/elaborate.rs +0 -0
  1327. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/egraph.rs +0 -0
  1328. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/flowgraph.rs +0 -0
  1329. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/incremental_cache.rs +0 -0
  1330. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/inst_predicates.rs +0 -0
  1331. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/inst_specs.isle +0 -0
  1332. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/atomic_rmw_op.rs +0 -0
  1333. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/builder.rs +0 -0
  1334. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/condcodes.rs +0 -0
  1335. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/constant.rs +0 -0
  1336. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/dfg.rs +0 -0
  1337. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/dynamic_type.rs +0 -0
  1338. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/entities.rs +0 -0
  1339. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/extfunc.rs +0 -0
  1340. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/extname.rs +0 -0
  1341. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/function.rs +0 -0
  1342. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/globalvalue.rs +0 -0
  1343. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/instructions.rs +0 -0
  1344. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/jumptable.rs +0 -0
  1345. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/known_symbol.rs +0 -0
  1346. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/layout.rs +0 -0
  1347. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/libcall.rs +0 -0
  1348. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/memflags.rs +0 -0
  1349. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/memtype.rs +0 -0
  1350. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/mod.rs +0 -0
  1351. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/pcc.rs +0 -0
  1352. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/progpoint.rs +0 -0
  1353. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/sourceloc.rs +0 -0
  1354. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/stackslot.rs +0 -0
  1355. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/trapcode.rs +0 -0
  1356. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/types.rs +0 -0
  1357. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ir/user_stack_maps.rs +0 -0
  1358. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/inst/imms.rs +0 -0
  1359. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/inst/unwind/systemv.rs +0 -0
  1360. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/inst/unwind.rs +0 -0
  1361. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/inst_neon.isle +0 -0
  1362. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/lower/isle/generated_code.rs +0 -0
  1363. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/lower.rs +0 -0
  1364. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/lower_dynamic_neon.isle +0 -0
  1365. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/pcc.rs +0 -0
  1366. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/aarch64/settings.rs +0 -0
  1367. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/call_conv.rs +0 -0
  1368. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/pulley32.rs +0 -0
  1369. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/pulley64.rs +0 -0
  1370. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/pulley_shared/lower/isle/generated_code.rs +0 -0
  1371. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/pulley_shared/lower.rs +0 -0
  1372. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/pulley_shared/settings.rs +0 -0
  1373. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/emit.rs +0 -0
  1374. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/encode.rs +0 -0
  1375. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/imms.rs +0 -0
  1376. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/mod.rs +0 -0
  1377. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/regs.rs +0 -0
  1378. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/unwind/systemv.rs +0 -0
  1379. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/unwind.rs +0 -0
  1380. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst/vector.rs +0 -0
  1381. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst.isle +0 -0
  1382. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/inst_vector.isle +0 -0
  1383. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/lower/isle/generated_code.rs +0 -0
  1384. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/lower/isle.rs +0 -0
  1385. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/lower.isle +0 -0
  1386. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/lower.rs +0 -0
  1387. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/mod.rs +0 -0
  1388. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/riscv64/settings.rs +0 -0
  1389. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst/args.rs +0 -0
  1390. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst/emit_tests.rs +0 -0
  1391. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst/imms.rs +0 -0
  1392. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst/mod.rs +0 -0
  1393. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst/regs.rs +0 -0
  1394. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst/unwind/systemv.rs +0 -0
  1395. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst/unwind.rs +0 -0
  1396. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/inst.isle +0 -0
  1397. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/lower/isle/generated_code.rs +0 -0
  1398. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/lower/isle.rs +0 -0
  1399. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/lower.isle +0 -0
  1400. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/lower.rs +0 -0
  1401. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/mod.rs +0 -0
  1402. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/s390x/settings.rs +0 -0
  1403. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/unwind/systemv.rs +0 -0
  1404. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/unwind/winarm64.rs +0 -0
  1405. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/unwind/winx64.rs +0 -0
  1406. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/unwind.rs +0 -0
  1407. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/winch.rs +0 -0
  1408. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/encoding/evex.rs +0 -0
  1409. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/encoding/mod.rs +0 -0
  1410. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/encoding/rex.rs +0 -0
  1411. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/encoding/vex.rs +0 -0
  1412. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/args.rs +0 -0
  1413. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/emit.rs +0 -0
  1414. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/emit_state.rs +0 -0
  1415. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/emit_tests.rs +0 -0
  1416. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/mod.rs +0 -0
  1417. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/regs.rs +0 -0
  1418. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/stack_switch.rs +0 -0
  1419. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/unwind/systemv.rs +0 -0
  1420. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/unwind/winx64.rs +0 -0
  1421. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/inst/unwind.rs +0 -0
  1422. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/lower.isle +0 -0
  1423. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/lower.rs +0 -0
  1424. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/mod.rs +0 -0
  1425. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/pcc.rs +0 -0
  1426. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/isa/x64/settings.rs +0 -0
  1427. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/iterators.rs +0 -0
  1428. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/legalizer/globalvalue.rs +0 -0
  1429. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/legalizer/mod.rs +0 -0
  1430. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/lib.rs +0 -0
  1431. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/loop_analysis.rs +0 -0
  1432. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/blockorder.rs +0 -0
  1433. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/compile.rs +0 -0
  1434. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/helpers.rs +0 -0
  1435. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/inst_common.rs +0 -0
  1436. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/isle.rs +0 -0
  1437. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/mod.rs +0 -0
  1438. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/pcc.rs +0 -0
  1439. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/reg.rs +0 -0
  1440. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/valueregs.rs +0 -0
  1441. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/machinst/vcode.rs +0 -0
  1442. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/nan_canonicalization.rs +0 -0
  1443. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/README.md +0 -0
  1444. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/arithmetic.isle +0 -0
  1445. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/bitops.isle +0 -0
  1446. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/cprop.isle +0 -0
  1447. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/extends.isle +0 -0
  1448. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/generated_code.rs +0 -0
  1449. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/icmp.isle +0 -0
  1450. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/remat.isle +0 -0
  1451. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/selects.isle +0 -0
  1452. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/shifts.isle +0 -0
  1453. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/spaceship.isle +0 -0
  1454. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/spectre.isle +0 -0
  1455. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts/vector.isle +0 -0
  1456. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/opts.rs +0 -0
  1457. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/prelude_opt.isle +0 -0
  1458. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/print_errors.rs +0 -0
  1459. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/ranges.rs +0 -0
  1460. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/remove_constant_phis.rs +0 -0
  1461. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/result.rs +0 -0
  1462. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/scoped_hash_map.rs +0 -0
  1463. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/settings.rs +0 -0
  1464. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/souper_harvest.rs +0 -0
  1465. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/timing.rs +0 -0
  1466. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/traversals.rs +0 -0
  1467. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/unionfind.rs +0 -0
  1468. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/unreachable_code.rs +0 -0
  1469. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/value_label.rs +0 -0
  1470. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/verifier/mod.rs +0 -0
  1471. /data/ext/cargo-vendor/{cranelift-codegen-0.115.0 → cranelift-codegen-0.116.0}/src/write.rs +0 -0
  1472. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/LICENSE +0 -0
  1473. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/README.md +0 -0
  1474. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/cdsl/formats.rs +0 -0
  1475. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/cdsl/isa.rs +0 -0
  1476. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/cdsl/mod.rs +0 -0
  1477. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/cdsl/operands.rs +0 -0
  1478. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/cdsl/settings.rs +0 -0
  1479. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/cdsl/types.rs +0 -0
  1480. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/cdsl/typevar.rs +0 -0
  1481. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/constant_hash.rs +0 -0
  1482. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/error.rs +0 -0
  1483. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/gen_inst.rs +0 -0
  1484. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/gen_isle.rs +0 -0
  1485. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/gen_settings.rs +0 -0
  1486. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/gen_types.rs +0 -0
  1487. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/isa/arm64.rs +0 -0
  1488. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/isa/mod.rs +0 -0
  1489. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/isa/riscv64.rs +0 -0
  1490. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/isa/s390x.rs +0 -0
  1491. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/isa/x86.rs +0 -0
  1492. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/shared/entities.rs +0 -0
  1493. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/shared/formats.rs +0 -0
  1494. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/shared/immediates.rs +0 -0
  1495. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/shared/mod.rs +0 -0
  1496. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/shared/settings.rs +0 -0
  1497. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/shared/types.rs +0 -0
  1498. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/srcgen.rs +0 -0
  1499. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.115.0 → cranelift-codegen-meta-0.116.0}/src/unique_table.rs +0 -0
  1500. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.115.0 → cranelift-codegen-shared-0.116.1}/LICENSE +0 -0
  1501. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.115.0 → cranelift-codegen-shared-0.116.1}/README.md +0 -0
  1502. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.115.0 → cranelift-codegen-shared-0.116.1}/src/constant_hash.rs +0 -0
  1503. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.115.0 → cranelift-codegen-shared-0.116.1}/src/constants.rs +0 -0
  1504. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.115.0 → cranelift-codegen-shared-0.116.1}/src/lib.rs +0 -0
  1505. /data/ext/cargo-vendor/{cranelift-control-0.115.0 → cranelift-control-0.116.1}/LICENSE +0 -0
  1506. /data/ext/cargo-vendor/{cranelift-control-0.115.0 → cranelift-control-0.116.1}/README.md +0 -0
  1507. /data/ext/cargo-vendor/{cranelift-control-0.115.0 → cranelift-control-0.116.1}/src/chaos.rs +0 -0
  1508. /data/ext/cargo-vendor/{cranelift-control-0.115.0 → cranelift-control-0.116.1}/src/lib.rs +0 -0
  1509. /data/ext/cargo-vendor/{cranelift-control-0.115.0 → cranelift-control-0.116.1}/src/zero_sized.rs +0 -0
  1510. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/LICENSE +0 -0
  1511. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/README.md +0 -0
  1512. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/boxed_slice.rs +0 -0
  1513. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/iter.rs +0 -0
  1514. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/keys.rs +0 -0
  1515. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/lib.rs +0 -0
  1516. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/list.rs +0 -0
  1517. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/map.rs +0 -0
  1518. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/packed_option.rs +0 -0
  1519. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/primary.rs +0 -0
  1520. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/set.rs +0 -0
  1521. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/signed.rs +0 -0
  1522. /data/ext/cargo-vendor/{cranelift-entity-0.115.0 → cranelift-entity-0.116.1}/src/unsigned.rs +0 -0
  1523. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/LICENSE +0 -0
  1524. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/README.md +0 -0
  1525. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/src/frontend/safepoints.rs +0 -0
  1526. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/src/frontend.rs +0 -0
  1527. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/src/lib.rs +0 -0
  1528. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/src/ssa.rs +0 -0
  1529. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/src/switch.rs +0 -0
  1530. /data/ext/cargo-vendor/{cranelift-frontend-0.115.0 → cranelift-frontend-0.116.0}/src/variable.rs +0 -0
  1531. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/README.md +0 -0
  1532. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/build.rs +0 -0
  1533. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/bad_converters.isle +0 -0
  1534. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/bound_var_type_mismatch.isle +0 -0
  1535. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/converter_extractor_constructor.isle +0 -0
  1536. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/error1.isle +0 -0
  1537. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/extra_parens.isle +0 -0
  1538. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/impure_expression.isle +0 -0
  1539. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/impure_rhs.isle +0 -0
  1540. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/multi_internal_etor.isle +0 -0
  1541. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/fail/multi_prio.isle +0 -0
  1542. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/borrows.isle +0 -0
  1543. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/borrows_main.rs +0 -0
  1544. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/iflets.isle +0 -0
  1545. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/iflets_main.rs +0 -0
  1546. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/multi_constructor.isle +0 -0
  1547. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/multi_constructor_main.rs +0 -0
  1548. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/multi_extractor.isle +0 -0
  1549. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/multi_extractor_main.rs +0 -0
  1550. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/test.isle +0 -0
  1551. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/link/test_main.rs +0 -0
  1552. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/bound_var.isle +0 -0
  1553. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/construct_and_extract.isle +0 -0
  1554. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/conversions.isle +0 -0
  1555. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/conversions_extern.isle +0 -0
  1556. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/let.isle +0 -0
  1557. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/nodebug.isle +0 -0
  1558. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/prio_trie_bug.isle +0 -0
  1559. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/test2.isle +0 -0
  1560. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/test3.isle +0 -0
  1561. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/test4.isle +0 -0
  1562. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/tutorial.isle +0 -0
  1563. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/pass/veri_spec.isle +0 -0
  1564. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/run/iconst.isle +0 -0
  1565. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/run/iconst_main.rs +0 -0
  1566. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/run/let_shadowing.isle +0 -0
  1567. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/isle_examples/run/let_shadowing_main.rs +0 -0
  1568. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/ast.rs +0 -0
  1569. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/codegen.rs +0 -0
  1570. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/compile.rs +0 -0
  1571. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/disjointsets.rs +0 -0
  1572. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/error.rs +0 -0
  1573. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/files.rs +0 -0
  1574. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/lexer.rs +0 -0
  1575. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/lib.rs +0 -0
  1576. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/log.rs +0 -0
  1577. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/overlap.rs +0 -0
  1578. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/parser.rs +0 -0
  1579. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/sema.rs +0 -0
  1580. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/serialize.rs +0 -0
  1581. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/stablemapset.rs +0 -0
  1582. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/src/trie_again.rs +0 -0
  1583. /data/ext/cargo-vendor/{cranelift-isle-0.115.0 → cranelift-isle-0.116.0}/tests/run_tests.rs +0 -0
  1584. /data/ext/cargo-vendor/{cranelift-native-0.115.0 → cranelift-native-0.116.0}/LICENSE +0 -0
  1585. /data/ext/cargo-vendor/{cranelift-native-0.115.0 → cranelift-native-0.116.0}/README.md +0 -0
  1586. /data/ext/cargo-vendor/{cranelift-native-0.115.0 → cranelift-native-0.116.0}/src/lib.rs +0 -0
  1587. /data/ext/cargo-vendor/{cranelift-native-0.115.0 → cranelift-native-0.116.0}/src/riscv.rs +0 -0
  1588. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.28 → deterministic-wasi-ctx-0.1.29}/src/clocks.rs +0 -0
  1589. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.28 → deterministic-wasi-ctx-0.1.29}/src/lib.rs +0 -0
  1590. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.28 → deterministic-wasi-ctx-0.1.29}/src/noop_scheduler.rs +0 -0
  1591. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.28 → deterministic-wasi-ctx-0.1.29}/tests/clocks.rs +0 -0
  1592. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.28 → deterministic-wasi-ctx-0.1.29}/tests/random.rs +0 -0
  1593. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.28 → deterministic-wasi-ctx-0.1.29}/tests/scheduler.rs +0 -0
  1594. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/LICENSE-APACHE +0 -0
  1595. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/LICENSE-MIT +0 -0
  1596. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/README.md +0 -0
  1597. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/benches/bench.rs +0 -0
  1598. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/benches/faststring.rs +0 -0
  1599. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/arbitrary.rs +0 -0
  1600. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/borsh.rs +0 -0
  1601. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/macros.rs +0 -0
  1602. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/map/core/raw_entry_v1.rs +0 -0
  1603. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/map/mutable.rs +0 -0
  1604. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/map/serde_seq.rs +0 -0
  1605. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/map/slice.rs +0 -0
  1606. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/map/tests.rs +0 -0
  1607. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/rayon/map.rs +0 -0
  1608. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/rayon/mod.rs +0 -0
  1609. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/rayon/set.rs +0 -0
  1610. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/rustc.rs +0 -0
  1611. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/serde.rs +0 -0
  1612. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/set/mutable.rs +0 -0
  1613. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/set/slice.rs +0 -0
  1614. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/src/set/tests.rs +0 -0
  1615. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/tests/equivalent_trait.rs +0 -0
  1616. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/tests/macros_full_path.rs +0 -0
  1617. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/tests/quick.rs +0 -0
  1618. /data/ext/cargo-vendor/{indexmap-2.7.0 → indexmap-2.7.1}/tests/tests.rs +0 -0
  1619. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/LICENSE-APACHE +0 -0
  1620. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/LICENSE-MIT +0 -0
  1621. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/README.md +0 -0
  1622. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/RELEASES.md +0 -0
  1623. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/src/ipnet_schemars.rs +0 -0
  1624. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/src/ipnet_serde.rs +0 -0
  1625. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/src/mask.rs +0 -0
  1626. /data/ext/cargo-vendor/{ipnet-2.10.1 → ipnet-2.11.0}/src/parser.rs +0 -0
  1627. /data/ext/cargo-vendor/{js-sys-0.3.76 → js-sys-0.3.77}/LICENSE-APACHE +0 -0
  1628. /data/ext/cargo-vendor/{js-sys-0.3.76 → js-sys-0.3.77}/LICENSE-MIT +0 -0
  1629. /data/ext/cargo-vendor/{js-sys-0.3.76 → js-sys-0.3.77}/src/Temporal.rs +0 -0
  1630. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/LICENSE-APACHE +0 -0
  1631. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/LICENSE-MIT +0 -0
  1632. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/benches/value.rs +0 -0
  1633. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/src/__private_api.rs +0 -0
  1634. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/src/kv/error.rs +0 -0
  1635. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/src/kv/source.rs +0 -0
  1636. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/src/macros.rs +0 -0
  1637. /data/ext/cargo-vendor/{log-0.4.22 → log-0.4.25}/triagebot.toml +0 -0
  1638. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/LICENSE-APACHE.md +0 -0
  1639. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/Readme.md +0 -0
  1640. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/deflate/buffer.rs +0 -0
  1641. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/deflate/stream.rs +0 -0
  1642. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/inflate/core.rs +0 -0
  1643. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/inflate/mod.rs +0 -0
  1644. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/inflate/output_buffer.rs +0 -0
  1645. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/inflate/stream.rs +0 -0
  1646. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/lib.rs +0 -0
  1647. /data/ext/cargo-vendor/{miniz_oxide-0.8.2 → miniz_oxide-0.8.3}/src/shared.rs +0 -0
  1648. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/LICENSE-APACHE +0 -0
  1649. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/LICENSE-MIT +0 -0
  1650. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/README.md +0 -0
  1651. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/build/probe.rs +0 -0
  1652. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/build.rs +0 -0
  1653. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/rust-toolchain.toml +0 -0
  1654. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/src/detection.rs +0 -0
  1655. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/src/extra.rs +0 -0
  1656. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/src/location.rs +0 -0
  1657. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/src/marker.rs +0 -0
  1658. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/src/parse.rs +0 -0
  1659. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/src/wrapper.rs +0 -0
  1660. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/tests/comments.rs +0 -0
  1661. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/tests/features.rs +0 -0
  1662. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/tests/marker.rs +0 -0
  1663. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/tests/test.rs +0 -0
  1664. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/tests/test_fmt.rs +0 -0
  1665. /data/ext/cargo-vendor/{proc-macro2-1.0.92 → proc-macro2-1.0.93}/tests/test_size.rs +0 -0
  1666. /data/ext/cargo-vendor/{pulley-interpreter-28.0.0 → pulley-interpreter-29.0.0}/README.md +0 -0
  1667. /data/ext/cargo-vendor/{pulley-interpreter-28.0.0 → pulley-interpreter-29.0.0}/tests/all/main.rs +0 -0
  1668. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/CODE_OF_CONDUCT.md +0 -0
  1669. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/CONTRIBUTING.md +0 -0
  1670. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/COPYRIGHT +0 -0
  1671. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/LICENSE-APACHE +0 -0
  1672. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/LICENSE-Apache-2.0_WITH_LLVM-exception +0 -0
  1673. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/LICENSE-MIT +0 -0
  1674. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/ORG_CODE_OF_CONDUCT.md +0 -0
  1675. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/README.md +0 -0
  1676. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/SECURITY.md +0 -0
  1677. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/benches/mod.rs +0 -0
  1678. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/build.rs +0 -0
  1679. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/c.rs +0 -0
  1680. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/conv.rs +0 -0
  1681. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/event/epoll.rs +0 -0
  1682. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/event/mod.rs +0 -0
  1683. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/event/poll_fd.rs +0 -0
  1684. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/event/syscalls.rs +0 -0
  1685. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/event/types.rs +0 -0
  1686. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/event/windows_syscalls.rs +0 -0
  1687. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/fs/dir.rs +0 -0
  1688. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/fs/inotify.rs +0 -0
  1689. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/fs/makedev.rs +0 -0
  1690. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/fs/mod.rs +0 -0
  1691. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/fs/syscalls.rs +0 -0
  1692. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/fs/types.rs +0 -0
  1693. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/io/errno.rs +0 -0
  1694. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/io/mod.rs +0 -0
  1695. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/io/syscalls.rs +0 -0
  1696. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/io/types.rs +0 -0
  1697. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/io/windows_syscalls.rs +0 -0
  1698. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/io_uring/mod.rs +0 -0
  1699. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/io_uring/syscalls.rs +0 -0
  1700. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/mm/mod.rs +0 -0
  1701. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/mm/syscalls.rs +0 -0
  1702. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/mm/types.rs +0 -0
  1703. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/mod.rs +0 -0
  1704. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/mount/mod.rs +0 -0
  1705. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/mount/syscalls.rs +0 -0
  1706. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/mount/types.rs +0 -0
  1707. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/addr.rs +0 -0
  1708. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/ext.rs +0 -0
  1709. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/mod.rs +0 -0
  1710. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/msghdr.rs +0 -0
  1711. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/netdevice.rs +0 -0
  1712. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/read_sockaddr.rs +0 -0
  1713. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/send_recv.rs +0 -0
  1714. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/sockopt.rs +0 -0
  1715. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/syscalls.rs +0 -0
  1716. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/net/write_sockaddr.rs +0 -0
  1717. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/param/auxv.rs +0 -0
  1718. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/param/mod.rs +0 -0
  1719. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/pid/mod.rs +0 -0
  1720. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/pid/syscalls.rs +0 -0
  1721. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/pipe/mod.rs +0 -0
  1722. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/pipe/syscalls.rs +0 -0
  1723. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/pipe/types.rs +0 -0
  1724. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/prctl/mod.rs +0 -0
  1725. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/prctl/syscalls.rs +0 -0
  1726. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/process/cpu_set.rs +0 -0
  1727. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/process/mod.rs +0 -0
  1728. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/process/syscalls.rs +0 -0
  1729. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/process/types.rs +0 -0
  1730. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/process/wait.rs +0 -0
  1731. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/pty/mod.rs +0 -0
  1732. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/pty/syscalls.rs +0 -0
  1733. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/rand/mod.rs +0 -0
  1734. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/rand/syscalls.rs +0 -0
  1735. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/rand/types.rs +0 -0
  1736. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/shm/mod.rs +0 -0
  1737. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/shm/syscalls.rs +0 -0
  1738. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/shm/types.rs +0 -0
  1739. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/system/mod.rs +0 -0
  1740. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/system/types.rs +0 -0
  1741. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/termios/mod.rs +0 -0
  1742. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/termios/syscalls.rs +0 -0
  1743. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/thread/futex.rs +0 -0
  1744. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/thread/mod.rs +0 -0
  1745. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/thread/syscalls.rs +0 -0
  1746. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/time/mod.rs +0 -0
  1747. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/time/syscalls.rs +0 -0
  1748. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/time/types.rs +0 -0
  1749. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/ugid/mod.rs +0 -0
  1750. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/ugid/syscalls.rs +0 -0
  1751. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/libc/winsock_c.rs +0 -0
  1752. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/aarch64.rs +0 -0
  1753. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/arm.rs +0 -0
  1754. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/mips.rs +0 -0
  1755. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/mips32r6.rs +0 -0
  1756. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/mips64.rs +0 -0
  1757. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/mips64r6.rs +0 -0
  1758. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/mod.rs +0 -0
  1759. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/powerpc64.rs +0 -0
  1760. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/riscv64.rs +0 -0
  1761. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/s390x.rs +0 -0
  1762. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/thumb.rs +0 -0
  1763. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/x86.rs +0 -0
  1764. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/arch/x86_64.rs +0 -0
  1765. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/c.rs +0 -0
  1766. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/conv.rs +0 -0
  1767. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/event/epoll.rs +0 -0
  1768. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/event/mod.rs +0 -0
  1769. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/event/poll_fd.rs +0 -0
  1770. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/event/syscalls.rs +0 -0
  1771. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/event/types.rs +0 -0
  1772. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/fs/dir.rs +0 -0
  1773. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/fs/inotify.rs +0 -0
  1774. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/fs/makedev.rs +0 -0
  1775. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/fs/mod.rs +0 -0
  1776. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/fs/syscalls.rs +0 -0
  1777. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/fs/types.rs +0 -0
  1778. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/io/errno.rs +0 -0
  1779. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/io/mod.rs +0 -0
  1780. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/io/syscalls.rs +0 -0
  1781. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/io/types.rs +0 -0
  1782. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/io_uring/mod.rs +0 -0
  1783. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/io_uring/syscalls.rs +0 -0
  1784. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/mm/mod.rs +0 -0
  1785. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/mm/syscalls.rs +0 -0
  1786. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/mm/types.rs +0 -0
  1787. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/mod.rs +0 -0
  1788. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/mount/mod.rs +0 -0
  1789. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/mount/syscalls.rs +0 -0
  1790. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/mount/types.rs +0 -0
  1791. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/addr.rs +0 -0
  1792. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/mod.rs +0 -0
  1793. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/msghdr.rs +0 -0
  1794. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/netdevice.rs +0 -0
  1795. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/read_sockaddr.rs +0 -0
  1796. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/send_recv.rs +0 -0
  1797. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/sockopt.rs +0 -0
  1798. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/syscalls.rs +0 -0
  1799. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/net/write_sockaddr.rs +0 -0
  1800. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/param/auxv.rs +0 -0
  1801. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/param/init.rs +0 -0
  1802. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/param/libc_auxv.rs +0 -0
  1803. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/param/mod.rs +0 -0
  1804. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/pid/mod.rs +0 -0
  1805. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/pid/syscalls.rs +0 -0
  1806. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/pipe/mod.rs +0 -0
  1807. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/pipe/syscalls.rs +0 -0
  1808. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/pipe/types.rs +0 -0
  1809. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/prctl/mod.rs +0 -0
  1810. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/prctl/syscalls.rs +0 -0
  1811. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/process/cpu_set.rs +0 -0
  1812. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/process/mod.rs +0 -0
  1813. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/process/syscalls.rs +0 -0
  1814. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/process/types.rs +0 -0
  1815. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/process/wait.rs +0 -0
  1816. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/pty/mod.rs +0 -0
  1817. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/pty/syscalls.rs +0 -0
  1818. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/rand/mod.rs +0 -0
  1819. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/rand/syscalls.rs +0 -0
  1820. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/rand/types.rs +0 -0
  1821. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/reg.rs +0 -0
  1822. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/runtime/mod.rs +0 -0
  1823. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/runtime/syscalls.rs +0 -0
  1824. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/runtime/tls.rs +0 -0
  1825. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/shm/mod.rs +0 -0
  1826. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/shm/syscalls.rs +0 -0
  1827. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/shm/types.rs +0 -0
  1828. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/system/mod.rs +0 -0
  1829. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/system/types.rs +0 -0
  1830. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/termios/mod.rs +0 -0
  1831. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/termios/syscalls.rs +0 -0
  1832. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/thread/futex.rs +0 -0
  1833. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/thread/mod.rs +0 -0
  1834. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/thread/syscalls.rs +0 -0
  1835. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/time/mod.rs +0 -0
  1836. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/time/syscalls.rs +0 -0
  1837. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/time/types.rs +0 -0
  1838. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/ugid/mod.rs +0 -0
  1839. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/ugid/syscalls.rs +0 -0
  1840. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/vdso.rs +0 -0
  1841. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/backend/linux_raw/vdso_wrappers.rs +0 -0
  1842. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/bitcast.rs +0 -0
  1843. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/buffer.rs +0 -0
  1844. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/check_types.rs +0 -0
  1845. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/clockid.rs +0 -0
  1846. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/cstr.rs +0 -0
  1847. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/epoll.rs +0 -0
  1848. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/eventfd.rs +0 -0
  1849. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/kqueue.rs +0 -0
  1850. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/mod.rs +0 -0
  1851. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/pause.rs +0 -0
  1852. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/poll.rs +0 -0
  1853. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/port.rs +0 -0
  1854. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/event/select.rs +0 -0
  1855. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/ffi.rs +0 -0
  1856. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/abs.rs +0 -0
  1857. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/at.rs +0 -0
  1858. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/constants.rs +0 -0
  1859. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/copy_file_range.rs +0 -0
  1860. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/cwd.rs +0 -0
  1861. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/dir.rs +0 -0
  1862. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/fadvise.rs +0 -0
  1863. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/fcntl.rs +0 -0
  1864. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/fcntl_apple.rs +0 -0
  1865. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/fcopyfile.rs +0 -0
  1866. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/fd.rs +0 -0
  1867. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/getpath.rs +0 -0
  1868. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/id.rs +0 -0
  1869. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/inotify.rs +0 -0
  1870. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/ioctl.rs +0 -0
  1871. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/makedev.rs +0 -0
  1872. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/memfd_create.rs +0 -0
  1873. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/mod.rs +0 -0
  1874. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/mount.rs +0 -0
  1875. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/openat2.rs +0 -0
  1876. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/raw_dir.rs +0 -0
  1877. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/seek_from.rs +0 -0
  1878. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/sendfile.rs +0 -0
  1879. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/special.rs +0 -0
  1880. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/statx.rs +0 -0
  1881. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/sync.rs +0 -0
  1882. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/fs/xattr.rs +0 -0
  1883. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/close.rs +0 -0
  1884. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/dup.rs +0 -0
  1885. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/errno.rs +0 -0
  1886. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/fcntl.rs +0 -0
  1887. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/ioctl.rs +0 -0
  1888. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/is_read_write.rs +0 -0
  1889. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/mod.rs +0 -0
  1890. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io/read_write.rs +0 -0
  1891. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/io_uring.rs +0 -0
  1892. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/ioctl/bsd.rs +0 -0
  1893. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/ioctl/linux.rs +0 -0
  1894. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/ioctl/mod.rs +0 -0
  1895. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/ioctl/patterns.rs +0 -0
  1896. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/io/mod.rs +0 -0
  1897. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/mod.rs +0 -0
  1898. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/net/mod.rs +0 -0
  1899. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/fd/mod.rs +0 -0
  1900. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/fd/owned.rs +0 -0
  1901. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/fd/raw.rs +0 -0
  1902. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/mod.rs +0 -0
  1903. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/windows/io/mod.rs +0 -0
  1904. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/windows/io/raw.rs +0 -0
  1905. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/windows/io/socket.rs +0 -0
  1906. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/maybe_polyfill/no_std/os/windows/mod.rs +0 -0
  1907. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mm/madvise.rs +0 -0
  1908. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mm/mmap.rs +0 -0
  1909. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mm/mod.rs +0 -0
  1910. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mm/msync.rs +0 -0
  1911. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mm/userfaultfd.rs +0 -0
  1912. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mount/fsopen.rs +0 -0
  1913. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mount/mod.rs +0 -0
  1914. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mount/mount_unmount.rs +0 -0
  1915. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/mount/types.rs +0 -0
  1916. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/mod.rs +0 -0
  1917. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/netdevice.rs +0 -0
  1918. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/send_recv/mod.rs +0 -0
  1919. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/send_recv/msg.rs +0 -0
  1920. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/socket.rs +0 -0
  1921. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/socket_addr_any.rs +0 -0
  1922. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/socketpair.rs +0 -0
  1923. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/sockopt.rs +0 -0
  1924. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/types.rs +0 -0
  1925. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/net/wsa.rs +0 -0
  1926. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/param/auxv.rs +0 -0
  1927. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/param/init.rs +0 -0
  1928. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/param/mod.rs +0 -0
  1929. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/path/arg.rs +0 -0
  1930. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/path/dec_int.rs +0 -0
  1931. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/path/mod.rs +0 -0
  1932. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/pid.rs +0 -0
  1933. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/pipe.rs +0 -0
  1934. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/prctl.rs +0 -0
  1935. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/chdir.rs +0 -0
  1936. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/chroot.rs +0 -0
  1937. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/exit.rs +0 -0
  1938. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/id.rs +0 -0
  1939. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/ioctl.rs +0 -0
  1940. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/kill.rs +0 -0
  1941. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/membarrier.rs +0 -0
  1942. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/mod.rs +0 -0
  1943. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/pidfd.rs +0 -0
  1944. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/pidfd_getfd.rs +0 -0
  1945. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/pivot_root.rs +0 -0
  1946. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/prctl.rs +0 -0
  1947. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/priority.rs +0 -0
  1948. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/procctl.rs +0 -0
  1949. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/rlimit.rs +0 -0
  1950. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/sched.rs +0 -0
  1951. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/sched_yield.rs +0 -0
  1952. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/umask.rs +0 -0
  1953. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/process/wait.rs +0 -0
  1954. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/procfs.rs +0 -0
  1955. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/pty.rs +0 -0
  1956. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/rand/getrandom.rs +0 -0
  1957. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/rand/mod.rs +0 -0
  1958. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/runtime.rs +0 -0
  1959. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/shm.rs +0 -0
  1960. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/signal.rs +0 -0
  1961. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/static_assertions.rs +0 -0
  1962. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/stdio.rs +0 -0
  1963. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/termios/ioctl.rs +0 -0
  1964. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/termios/mod.rs +0 -0
  1965. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/termios/tc.rs +0 -0
  1966. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/termios/tty.rs +0 -0
  1967. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/termios/types.rs +0 -0
  1968. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/thread/clock.rs +0 -0
  1969. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/thread/futex.rs +0 -0
  1970. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/thread/id.rs +0 -0
  1971. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/thread/libcap.rs +0 -0
  1972. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/thread/mod.rs +0 -0
  1973. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/thread/prctl.rs +0 -0
  1974. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/thread/setns.rs +0 -0
  1975. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/time/clock.rs +0 -0
  1976. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/time/mod.rs +0 -0
  1977. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/time/timerfd.rs +0 -0
  1978. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/timespec.rs +0 -0
  1979. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/ugid.rs +0 -0
  1980. /data/ext/cargo-vendor/{rustix-0.38.43 → rustix-0.38.44}/src/utils.rs +0 -0
  1981. /data/ext/cargo-vendor/{semver-1.0.24 → rustversion-1.0.19}/LICENSE-APACHE +0 -0
  1982. /data/ext/cargo-vendor/{semver-1.0.24 → rustversion-1.0.19}/LICENSE-MIT +0 -0
  1983. /data/ext/cargo-vendor/{serde_json-1.0.135 → rustversion-1.0.19}/tests/compiletest.rs +0 -0
  1984. /data/ext/cargo-vendor/{serde_json-1.0.135 → semver-1.0.25}/LICENSE-APACHE +0 -0
  1985. /data/ext/cargo-vendor/{serde_json-1.0.135 → semver-1.0.25}/LICENSE-MIT +0 -0
  1986. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/README.md +0 -0
  1987. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/benches/parse.rs +0 -0
  1988. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/build.rs +0 -0
  1989. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/backport.rs +0 -0
  1990. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/display.rs +0 -0
  1991. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/error.rs +0 -0
  1992. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/eval.rs +0 -0
  1993. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/identifier.rs +0 -0
  1994. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/impls.rs +0 -0
  1995. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/parse.rs +0 -0
  1996. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/src/serde.rs +0 -0
  1997. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/tests/node/mod.rs +0 -0
  1998. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/tests/test_autotrait.rs +0 -0
  1999. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/tests/test_identifier.rs +0 -0
  2000. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/tests/test_version.rs +0 -0
  2001. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/tests/test_version_req.rs +0 -0
  2002. /data/ext/cargo-vendor/{semver-1.0.24 → semver-1.0.25}/tests/util/mod.rs +0 -0
  2003. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/CONTRIBUTING.md +0 -0
  2004. /data/ext/cargo-vendor/{syn-2.0.95 → serde_json-1.0.137}/LICENSE-APACHE +0 -0
  2005. /data/ext/cargo-vendor/{syn-2.0.95 → serde_json-1.0.137}/LICENSE-MIT +0 -0
  2006. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/README.md +0 -0
  2007. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/build.rs +0 -0
  2008. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/de.rs +0 -0
  2009. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/error.rs +0 -0
  2010. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/io/core.rs +0 -0
  2011. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/io/mod.rs +0 -0
  2012. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/iter.rs +0 -0
  2013. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/algorithm.rs +0 -0
  2014. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/bhcomp.rs +0 -0
  2015. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/bignum.rs +0 -0
  2016. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/cached.rs +0 -0
  2017. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/cached_float80.rs +0 -0
  2018. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/digit.rs +0 -0
  2019. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/errors.rs +0 -0
  2020. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/exponent.rs +0 -0
  2021. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/float.rs +0 -0
  2022. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/large_powers.rs +0 -0
  2023. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/large_powers32.rs +0 -0
  2024. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/large_powers64.rs +0 -0
  2025. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/math.rs +0 -0
  2026. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/mod.rs +0 -0
  2027. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/num.rs +0 -0
  2028. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/parse.rs +0 -0
  2029. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/rounding.rs +0 -0
  2030. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/shift.rs +0 -0
  2031. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/lexical/small_powers.rs +0 -0
  2032. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/macros.rs +0 -0
  2033. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/map.rs +0 -0
  2034. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/number.rs +0 -0
  2035. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/raw.rs +0 -0
  2036. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/read.rs +0 -0
  2037. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/ser.rs +0 -0
  2038. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/value/de.rs +0 -0
  2039. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/value/from.rs +0 -0
  2040. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/value/index.rs +0 -0
  2041. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/value/mod.rs +0 -0
  2042. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/src/value/partial_eq.rs +0 -0
  2043. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/debug.rs +0 -0
  2044. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical/algorithm.rs +0 -0
  2045. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical/exponent.rs +0 -0
  2046. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical/float.rs +0 -0
  2047. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical/math.rs +0 -0
  2048. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical/num.rs +0 -0
  2049. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical/parse.rs +0 -0
  2050. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical/rounding.rs +0 -0
  2051. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/lexical.rs +0 -0
  2052. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/macros/mod.rs +0 -0
  2053. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/map.rs +0 -0
  2054. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/regression/issue1004.rs +0 -0
  2055. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/regression/issue520.rs +0 -0
  2056. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/regression/issue795.rs +0 -0
  2057. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/regression/issue845.rs +0 -0
  2058. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/regression/issue953.rs +0 -0
  2059. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/regression.rs +0 -0
  2060. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/stream.rs +0 -0
  2061. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/test.rs +0 -0
  2062. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/missing_colon.rs +0 -0
  2063. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/missing_colon.stderr +0 -0
  2064. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/missing_comma.rs +0 -0
  2065. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/missing_comma.stderr +0 -0
  2066. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/missing_value.rs +0 -0
  2067. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/missing_value.stderr +0 -0
  2068. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/not_found.rs +0 -0
  2069. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/not_found.stderr +0 -0
  2070. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/parse_expr.rs +0 -0
  2071. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/parse_expr.stderr +0 -0
  2072. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/parse_key.rs +0 -0
  2073. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/parse_key.stderr +0 -0
  2074. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_after_array_element.rs +0 -0
  2075. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_after_array_element.stderr +0 -0
  2076. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_after_map_entry.rs +0 -0
  2077. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_after_map_entry.stderr +0 -0
  2078. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_colon.rs +0 -0
  2079. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_colon.stderr +0 -0
  2080. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_comma.rs +0 -0
  2081. /data/ext/cargo-vendor/{serde_json-1.0.135 → serde_json-1.0.137}/tests/ui/unexpected_comma.stderr +0 -0
  2082. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → syn-2.0.96}/LICENSE-APACHE +0 -0
  2083. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → syn-2.0.96}/LICENSE-MIT +0 -0
  2084. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/README.md +0 -0
  2085. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/benches/file.rs +0 -0
  2086. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/benches/rust.rs +0 -0
  2087. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/attr.rs +0 -0
  2088. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/bigint.rs +0 -0
  2089. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/buffer.rs +0 -0
  2090. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/classify.rs +0 -0
  2091. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/custom_keyword.rs +0 -0
  2092. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/custom_punctuation.rs +0 -0
  2093. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/data.rs +0 -0
  2094. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/derive.rs +0 -0
  2095. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/discouraged.rs +0 -0
  2096. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/drops.rs +0 -0
  2097. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/error.rs +0 -0
  2098. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/export.rs +0 -0
  2099. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/ext.rs +0 -0
  2100. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/file.rs +0 -0
  2101. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/clone.rs +0 -0
  2102. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/debug.rs +0 -0
  2103. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/eq.rs +0 -0
  2104. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/fold.rs +0 -0
  2105. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/hash.rs +0 -0
  2106. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/token.css +0 -0
  2107. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/visit.rs +0 -0
  2108. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/gen/visit_mut.rs +0 -0
  2109. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/generics.rs +0 -0
  2110. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/group.rs +0 -0
  2111. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/ident.rs +0 -0
  2112. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/item.rs +0 -0
  2113. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/lifetime.rs +0 -0
  2114. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/lit.rs +0 -0
  2115. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/lookahead.rs +0 -0
  2116. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/mac.rs +0 -0
  2117. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/macros.rs +0 -0
  2118. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/meta.rs +0 -0
  2119. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/op.rs +0 -0
  2120. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/parse.rs +0 -0
  2121. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/parse_macro_input.rs +0 -0
  2122. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/parse_quote.rs +0 -0
  2123. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/pat.rs +0 -0
  2124. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/path.rs +0 -0
  2125. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/precedence.rs +0 -0
  2126. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/print.rs +0 -0
  2127. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/punctuated.rs +0 -0
  2128. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/restriction.rs +0 -0
  2129. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/scan_expr.rs +0 -0
  2130. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/sealed.rs +0 -0
  2131. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/span.rs +0 -0
  2132. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/spanned.rs +0 -0
  2133. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/stmt.rs +0 -0
  2134. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/thread.rs +0 -0
  2135. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/token.rs +0 -0
  2136. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/tt.rs +0 -0
  2137. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/ty.rs +0 -0
  2138. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/verbatim.rs +0 -0
  2139. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/src/whitespace.rs +0 -0
  2140. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/common/eq.rs +0 -0
  2141. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/common/mod.rs +0 -0
  2142. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/common/parse.rs +0 -0
  2143. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/common/visit.rs +0 -0
  2144. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/debug/gen.rs +0 -0
  2145. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/debug/mod.rs +0 -0
  2146. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/macros/mod.rs +0 -0
  2147. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/regression/issue1108.rs +0 -0
  2148. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/regression/issue1235.rs +0 -0
  2149. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/regression.rs +0 -0
  2150. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/repo/mod.rs +0 -0
  2151. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/repo/progress.rs +0 -0
  2152. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_asyncness.rs +0 -0
  2153. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_attribute.rs +0 -0
  2154. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_derive_input.rs +0 -0
  2155. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_generics.rs +0 -0
  2156. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_grouping.rs +0 -0
  2157. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_ident.rs +0 -0
  2158. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_item.rs +0 -0
  2159. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_iterators.rs +0 -0
  2160. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_lit.rs +0 -0
  2161. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_meta.rs +0 -0
  2162. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_parse_buffer.rs +0 -0
  2163. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_parse_quote.rs +0 -0
  2164. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_parse_stream.rs +0 -0
  2165. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_pat.rs +0 -0
  2166. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_path.rs +0 -0
  2167. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_precedence.rs +0 -0
  2168. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_receiver.rs +0 -0
  2169. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_round_trip.rs +0 -0
  2170. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_shebang.rs +0 -0
  2171. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_size.rs +0 -0
  2172. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_stmt.rs +0 -0
  2173. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_token_trees.rs +0 -0
  2174. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_ty.rs +0 -0
  2175. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_unparenthesize.rs +0 -0
  2176. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/test_visibility.rs +0 -0
  2177. /data/ext/cargo-vendor/{syn-2.0.95 → syn-2.0.96}/tests/zzz_stable.rs +0 -0
  2178. /data/ext/cargo-vendor/{target-lexicon-0.12.16 → target-lexicon-0.13.1}/LICENSE +0 -0
  2179. /data/ext/cargo-vendor/{target-lexicon-0.12.16 → target-lexicon-0.13.1}/build.rs +0 -0
  2180. /data/ext/cargo-vendor/{target-lexicon-0.12.16 → target-lexicon-0.13.1}/examples/host.rs +0 -0
  2181. /data/ext/cargo-vendor/{target-lexicon-0.12.16 → target-lexicon-0.13.1}/examples/misc.rs +0 -0
  2182. /data/ext/cargo-vendor/{target-lexicon-0.12.16 → target-lexicon-0.13.1}/scripts/rust-targets.sh +0 -0
  2183. /data/ext/cargo-vendor/{target-lexicon-0.12.16 → target-lexicon-0.13.1}/src/data_model.rs +0 -0
  2184. /data/ext/cargo-vendor/{target-lexicon-0.12.16 → target-lexicon-0.13.1}/src/parse_error.rs +0 -0
  2185. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/LICENSE-UNICODE +0 -0
  2186. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/src/tables.rs +0 -0
  2187. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/compare.rs +0 -0
  2188. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/fst/mod.rs +0 -0
  2189. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/fst/xid_continue.fst +0 -0
  2190. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/fst/xid_start.fst +0 -0
  2191. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/roaring/mod.rs +0 -0
  2192. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/static_size.rs +0 -0
  2193. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/tables/mod.rs +0 -0
  2194. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/tables/tables.rs +0 -0
  2195. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/trie/mod.rs +0 -0
  2196. /data/ext/cargo-vendor/{unicode-ident-1.0.14 → unicode-ident-1.0.15}/tests/trie/trie.rs +0 -0
  2197. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/LICENSE-APACHE +0 -0
  2198. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/LICENSE-MIT +0 -0
  2199. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/external/borsh_support.rs +0 -0
  2200. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/external.rs +0 -0
  2201. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/fmt.rs +0 -0
  2202. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/macros.rs +0 -0
  2203. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/md5.rs +0 -0
  2204. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/parser.rs +0 -0
  2205. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/rng.rs +0 -0
  2206. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/sha1.rs +0 -0
  2207. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/v1.rs +0 -0
  2208. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/v3.rs +0 -0
  2209. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/v4.rs +0 -0
  2210. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/v6.rs +0 -0
  2211. /data/ext/cargo-vendor/{uuid-1.11.0 → uuid-1.12.1}/src/v8.rs +0 -0
  2212. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/LICENSE +0 -0
  2213. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/README.md +0 -0
  2214. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/clocks.rs +0 -0
  2215. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/ctx.rs +0 -0
  2216. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/dir.rs +0 -0
  2217. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/error.rs +0 -0
  2218. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/file.rs +0 -0
  2219. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/lib.rs +0 -0
  2220. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/pipe.rs +0 -0
  2221. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/random.rs +0 -0
  2222. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sched/subscription.rs +0 -0
  2223. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sched.rs +0 -0
  2224. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/snapshots/mod.rs +0 -0
  2225. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/snapshots/preview_0.rs +0 -0
  2226. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/snapshots/preview_1/error.rs +0 -0
  2227. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/snapshots/preview_1.rs +0 -0
  2228. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/string_array.rs +0 -0
  2229. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/clocks.rs +0 -0
  2230. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/dir.rs +0 -0
  2231. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/file.rs +0 -0
  2232. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/mod.rs +0 -0
  2233. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/net.rs +0 -0
  2234. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/sched/unix.rs +0 -0
  2235. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/sched/windows.rs +0 -0
  2236. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/sched.rs +0 -0
  2237. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/sync/stdio.rs +0 -0
  2238. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/table.rs +0 -0
  2239. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/dir.rs +0 -0
  2240. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/file.rs +0 -0
  2241. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/mod.rs +0 -0
  2242. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/net.rs +0 -0
  2243. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/sched/unix.rs +0 -0
  2244. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/sched/windows.rs +0 -0
  2245. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/sched.rs +0 -0
  2246. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/src/tokio/stdio.rs +0 -0
  2247. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/tests/all/async_.rs +0 -0
  2248. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/tests/all/main.rs +0 -0
  2249. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/tests/all/sync.rs +0 -0
  2250. /data/ext/cargo-vendor/{wasi-common-28.0.0 → wasi-common-29.0.0}/witx/preview0/typenames.witx +0 -0
  2251. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/LICENSE-APACHE +0 -0
  2252. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/LICENSE-MIT +0 -0
  2253. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/build.rs +0 -0
  2254. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/cache/mod.rs +0 -0
  2255. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/cast.rs +0 -0
  2256. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/convert/impls.rs +0 -0
  2257. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/convert/mod.rs +0 -0
  2258. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/convert/slices.rs +0 -0
  2259. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/convert/traits.rs +0 -0
  2260. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/describe.rs +0 -0
  2261. /data/ext/cargo-vendor/{wasm-bindgen-0.2.99 → wasm-bindgen-0.2.100}/src/link.rs +0 -0
  2262. /data/ext/cargo-vendor/{wasm-bindgen-backend-0.2.99 → wasm-bindgen-backend-0.2.100}/LICENSE-APACHE +0 -0
  2263. /data/ext/cargo-vendor/{wasm-bindgen-backend-0.2.99 → wasm-bindgen-backend-0.2.100}/LICENSE-MIT +0 -0
  2264. /data/ext/cargo-vendor/{wasm-bindgen-backend-0.2.99 → wasm-bindgen-backend-0.2.100}/src/error.rs +0 -0
  2265. /data/ext/cargo-vendor/{wasm-bindgen-backend-0.2.99 → wasm-bindgen-backend-0.2.100}/src/lib.rs +0 -0
  2266. /data/ext/cargo-vendor/{wasm-bindgen-backend-0.2.99 → wasm-bindgen-backend-0.2.100}/src/util.rs +0 -0
  2267. /data/ext/cargo-vendor/{wasm-bindgen-macro-0.2.99 → wasm-bindgen-macro-0.2.100}/LICENSE-APACHE +0 -0
  2268. /data/ext/cargo-vendor/{wasm-bindgen-macro-0.2.99 → wasm-bindgen-macro-0.2.100}/LICENSE-MIT +0 -0
  2269. /data/ext/cargo-vendor/{wasm-bindgen-macro-0.2.99 → wasm-bindgen-macro-0.2.100}/src/worker.js +0 -0
  2270. /data/ext/cargo-vendor/{wasm-bindgen-macro-support-0.2.99 → wasm-bindgen-macro-support-0.2.100}/LICENSE-APACHE +0 -0
  2271. /data/ext/cargo-vendor/{wasm-bindgen-macro-support-0.2.99 → wasm-bindgen-macro-support-0.2.100}/LICENSE-MIT +0 -0
  2272. /data/ext/cargo-vendor/{wasm-bindgen-shared-0.2.99 → wasm-bindgen-shared-0.2.100}/LICENSE-APACHE +0 -0
  2273. /data/ext/cargo-vendor/{wasm-bindgen-shared-0.2.99 → wasm-bindgen-shared-0.2.100}/LICENSE-MIT +0 -0
  2274. /data/ext/cargo-vendor/{wasm-bindgen-shared-0.2.99 → wasm-bindgen-shared-0.2.100}/build.rs +0 -0
  2275. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/README.md +0 -0
  2276. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/build.rs +0 -0
  2277. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/aliases.rs +0 -0
  2278. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/builder.rs +0 -0
  2279. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/canonicals.rs +0 -0
  2280. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/components.rs +0 -0
  2281. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/exports.rs +0 -0
  2282. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/imports.rs +0 -0
  2283. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/instances.rs +0 -0
  2284. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/modules.rs +0 -0
  2285. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/names.rs +0 -0
  2286. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component/start.rs +0 -0
  2287. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/component.rs +0 -0
  2288. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/branch_hints.rs +0 -0
  2289. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/code.rs +0 -0
  2290. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/custom.rs +0 -0
  2291. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/data.rs +0 -0
  2292. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/dump.rs +0 -0
  2293. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/elements.rs +0 -0
  2294. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/exports.rs +0 -0
  2295. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/functions.rs +0 -0
  2296. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/globals.rs +0 -0
  2297. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/imports.rs +0 -0
  2298. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/linking.rs +0 -0
  2299. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/memories.rs +0 -0
  2300. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/names.rs +0 -0
  2301. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/producers.rs +0 -0
  2302. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/start.rs +0 -0
  2303. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/tables.rs +0 -0
  2304. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/tags.rs +0 -0
  2305. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core/types.rs +0 -0
  2306. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/core.rs +0 -0
  2307. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/lib.rs +0 -0
  2308. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/raw.rs +0 -0
  2309. /data/ext/cargo-vendor/{wasm-encoder-0.223.0 → wasm-encoder-0.224.0}/src/reencode.rs +0 -0
  2310. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/README.md +0 -0
  2311. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/benches/benchmark.rs +0 -0
  2312. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/build.rs +0 -0
  2313. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/examples/simple.rs +0 -0
  2314. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/arity.rs +0 -0
  2315. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/binary_reader/simd.rs +0 -0
  2316. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/binary_reader.rs +0 -0
  2317. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/hash.rs +0 -0
  2318. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/index_map/detail.rs +0 -0
  2319. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/index_map/tests.rs +0 -0
  2320. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/index_map.rs +0 -0
  2321. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/index_set.rs +0 -0
  2322. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/map.rs +0 -0
  2323. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/mod.rs +0 -0
  2324. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/collections/set.rs +0 -0
  2325. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/features.rs +0 -0
  2326. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/lib.rs +0 -0
  2327. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/limits.rs +0 -0
  2328. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/parser.rs +0 -0
  2329. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component/aliases.rs +0 -0
  2330. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component/canonicals.rs +0 -0
  2331. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component/exports.rs +0 -0
  2332. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component/imports.rs +0 -0
  2333. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component/instances.rs +0 -0
  2334. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component/names.rs +0 -0
  2335. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component/start.rs +0 -0
  2336. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/component.rs +0 -0
  2337. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/branch_hinting.rs +0 -0
  2338. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/code.rs +0 -0
  2339. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/coredumps.rs +0 -0
  2340. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/custom.rs +0 -0
  2341. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/data.rs +0 -0
  2342. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/dylink0.rs +0 -0
  2343. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/elements.rs +0 -0
  2344. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/exports.rs +0 -0
  2345. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/functions.rs +0 -0
  2346. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/globals.rs +0 -0
  2347. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/imports.rs +0 -0
  2348. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/init.rs +0 -0
  2349. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/linking.rs +0 -0
  2350. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/memories.rs +0 -0
  2351. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/names.rs +0 -0
  2352. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/operators.rs +0 -0
  2353. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/producers.rs +0 -0
  2354. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/reloc.rs +0 -0
  2355. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/tables.rs +0 -0
  2356. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/tags.rs +0 -0
  2357. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/types/matches.rs +0 -0
  2358. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core/types.rs +0 -0
  2359. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers/core.rs +0 -0
  2360. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/readers.rs +0 -0
  2361. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/resources.rs +0 -0
  2362. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator/core/canonical.rs +0 -0
  2363. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator/core.rs +0 -0
  2364. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator/func.rs +0 -0
  2365. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator/names.rs +0 -0
  2366. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator/operators/simd.rs +0 -0
  2367. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator/operators.rs +0 -0
  2368. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator/types.rs +0 -0
  2369. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/src/validator.rs +0 -0
  2370. /data/ext/cargo-vendor/{wasmparser-0.223.0 → wasmparser-0.224.0}/tests/big-module.rs +0 -0
  2371. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/LICENSE +0 -0
  2372. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/README.md +0 -0
  2373. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/build.rs +0 -0
  2374. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/proptest-regressions/runtime/vm/instance/allocator/pooling/memory_pool.txt +0 -0
  2375. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/lib.rs +0 -0
  2376. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/profiling_agent/jitdump.rs +0 -0
  2377. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/profiling_agent/perfmap.rs +0 -0
  2378. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/profiling_agent/vtune.rs +0 -0
  2379. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/profiling_agent.rs +0 -0
  2380. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/code.rs +0 -0
  2381. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/bindgen_examples/_0_hello_world.rs +0 -0
  2382. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/bindgen_examples/_1_world_imports.rs +0 -0
  2383. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/bindgen_examples/_2_world_exports.rs +0 -0
  2384. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/bindgen_examples/_3_interface_imports.rs +0 -0
  2385. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/bindgen_examples/_4_imported_resources.rs +0 -0
  2386. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/bindgen_examples/_5_all_world_export_kinds.rs +0 -0
  2387. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/bindgen_examples/_6_exported_resources.rs +0 -0
  2388. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/component.rs +0 -0
  2389. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/func/options.rs +0 -0
  2390. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/func.rs +0 -0
  2391. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/instance.rs +0 -0
  2392. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/linker.rs +0 -0
  2393. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/matching.rs +0 -0
  2394. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/resource_table.rs +0 -0
  2395. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/resources.rs +0 -0
  2396. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/storage.rs +0 -0
  2397. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/store.rs +0 -0
  2398. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/types.rs +0 -0
  2399. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/component/values.rs +0 -0
  2400. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/coredump.rs +0 -0
  2401. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/debug.rs +0 -0
  2402. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/externals/table.rs +0 -0
  2403. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/externals.rs +0 -0
  2404. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled/anyref.rs +0 -0
  2405. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled/arrayref.rs +0 -0
  2406. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled/eqref.rs +0 -0
  2407. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled/externref.rs +0 -0
  2408. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled/i31.rs +0 -0
  2409. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled/rooting.rs +0 -0
  2410. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled/structref.rs +0 -0
  2411. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/disabled.rs +0 -0
  2412. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled/anyref.rs +0 -0
  2413. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled/arrayref.rs +0 -0
  2414. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled/eqref.rs +0 -0
  2415. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled/externref.rs +0 -0
  2416. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled/i31.rs +0 -0
  2417. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled/rooting.rs +0 -0
  2418. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled/structref.rs +0 -0
  2419. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/enabled.rs +0 -0
  2420. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/noextern.rs +0 -0
  2421. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc/none_ref.rs +0 -0
  2422. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/gc.rs +0 -0
  2423. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/instantiate.rs +0 -0
  2424. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/limits.rs +0 -0
  2425. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/linker.rs +0 -0
  2426. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/module.rs +0 -0
  2427. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/resources.rs +0 -0
  2428. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/stack.rs +0 -0
  2429. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/store/context.rs +0 -0
  2430. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/store/data.rs +0 -0
  2431. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/store/func_refs.rs +0 -0
  2432. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/trampoline/func.rs +0 -0
  2433. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/trampoline/table.rs +0 -0
  2434. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/trampoline.rs +0 -0
  2435. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/type_registry.rs +0 -0
  2436. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/types/matching.rs +0 -0
  2437. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/types.rs +0 -0
  2438. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/uninhabited.rs +0 -0
  2439. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/unix.rs +0 -0
  2440. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/v128.rs +0 -0
  2441. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/arch/aarch64.rs +0 -0
  2442. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/arch/riscv64.rs +0 -0
  2443. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/arch/s390x.S +0 -0
  2444. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/arch/s390x.rs +0 -0
  2445. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/async_yield.rs +0 -0
  2446. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/byte_count.rs +0 -0
  2447. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/component/resources.rs +0 -0
  2448. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/const_expr.rs +0 -0
  2449. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/cow_disabled.rs +0 -0
  2450. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/debug_builtins.rs +0 -0
  2451. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/export.rs +0 -0
  2452. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/disabled.rs +0 -0
  2453. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/enabled/arrayref.rs +0 -0
  2454. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/enabled/data.rs +0 -0
  2455. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/enabled/externref.rs +0 -0
  2456. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/enabled/free_list.rs +0 -0
  2457. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/enabled/null.rs +0 -0
  2458. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/enabled/structref.rs +0 -0
  2459. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/enabled.rs +0 -0
  2460. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/func_ref.rs +0 -0
  2461. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/gc_ref.rs +0 -0
  2462. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/gc_runtime.rs +0 -0
  2463. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/host_data.rs +0 -0
  2464. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc/i31.rs +0 -0
  2465. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/gc.rs +0 -0
  2466. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/imports.rs +0 -0
  2467. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/instance/allocator/on_demand.rs +0 -0
  2468. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/instance/allocator/pooling/decommit_queue.rs +0 -0
  2469. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/instance/allocator/pooling/gc_heap_pool.rs +0 -0
  2470. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/instance/allocator/pooling/generic_stack_pool.rs +0 -0
  2471. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/instance/allocator/pooling/index_allocator.rs +0 -0
  2472. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/instance/allocator.rs +0 -0
  2473. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/instance.rs +0 -0
  2474. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/memory/shared_memory.rs +0 -0
  2475. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/memory/shared_memory_disabled.rs +0 -0
  2476. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/module_id.rs +0 -0
  2477. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/mpk/disabled.rs +0 -0
  2478. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/mpk/enabled.rs +0 -0
  2479. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/mpk/mod.rs +0 -0
  2480. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/mpk/pkru.rs +0 -0
  2481. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/mpk/sys.rs +0 -0
  2482. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/parking_spot.rs +0 -0
  2483. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/send_sync_ptr.rs +0 -0
  2484. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/send_sync_unsafe_cell.rs +0 -0
  2485. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/store_box.rs +0 -0
  2486. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/custom/capi.rs +0 -0
  2487. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/custom/mod.rs +0 -0
  2488. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/custom/traphandlers.rs +0 -0
  2489. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/custom/unwind.rs +0 -0
  2490. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/miri/mod.rs +0 -0
  2491. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/miri/traphandlers.rs +0 -0
  2492. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/miri/unwind.rs +0 -0
  2493. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/mod.rs +0 -0
  2494. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/unix/machports.rs +0 -0
  2495. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/unix/mod.rs +0 -0
  2496. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/sys/unix/traphandlers.rs +0 -0
  2497. /data/ext/cargo-vendor/{wasmtime-28.0.0/src/runtime/vm/sys/windows/unwind.rs → wasmtime-29.0.0/src/runtime/vm/sys/windows/unwind64.rs} +0 -0
  2498. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/table.rs +0 -0
  2499. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/traphandlers/coredump_disabled.rs +0 -0
  2500. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/vm/vmcontext/vm_host_func_context.rs +0 -0
  2501. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/wave/component.rs +0 -0
  2502. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/wave/core.rs +0 -0
  2503. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/wave.rs +0 -0
  2504. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime/windows.rs +0 -0
  2505. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/runtime.rs +0 -0
  2506. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/sync_nostd.rs +0 -0
  2507. /data/ext/cargo-vendor/{wasmtime-28.0.0 → wasmtime-29.0.0}/src/sync_std.rs +0 -0
  2508. /data/ext/cargo-vendor/{wasmtime-asm-macros-28.0.0 → wasmtime-asm-macros-29.0.0}/src/lib.rs +0 -0
  2509. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/LICENSE +0 -0
  2510. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/build.rs +0 -0
  2511. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/src/config/tests.rs +0 -0
  2512. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/src/config.rs +0 -0
  2513. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/src/lib.rs +0 -0
  2514. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/src/tests.rs +0 -0
  2515. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/src/worker/tests/system_time_stub.rs +0 -0
  2516. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/src/worker/tests.rs +0 -0
  2517. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/src/worker.rs +0 -0
  2518. /data/ext/cargo-vendor/{wasmtime-cache-28.0.0 → wasmtime-cache-29.0.0}/tests/cache_write_default_config.rs +0 -0
  2519. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/build.rs +0 -0
  2520. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/src/bindgen.rs +0 -0
  2521. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/src/component.rs +0 -0
  2522. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/src/lib.rs +0 -0
  2523. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/char.wit +0 -0
  2524. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/conventions.wit +0 -0
  2525. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/dead-code.wit +0 -0
  2526. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/direct-import.wit +0 -0
  2527. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/empty.wit +0 -0
  2528. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/flags.wit +0 -0
  2529. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/floats.wit +0 -0
  2530. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/function-new.wit +0 -0
  2531. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/host-world.wit +0 -0
  2532. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/integers.wit +0 -0
  2533. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/lists.wit +0 -0
  2534. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/many-arguments.wit +0 -0
  2535. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/multi-return.wit +0 -0
  2536. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/multiversion/deps/v1/root.wit +0 -0
  2537. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/multiversion/deps/v2/root.wit +0 -0
  2538. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/multiversion/root.wit +0 -0
  2539. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/path1/world.wit +0 -0
  2540. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/path2/world.wit +0 -0
  2541. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/records.wit +0 -0
  2542. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/rename.wit +0 -0
  2543. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/resources-export.wit +0 -0
  2544. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/resources-import.wit +0 -0
  2545. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/share-types.wit +0 -0
  2546. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/simple-functions.wit +0 -0
  2547. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/simple-lists.wit +0 -0
  2548. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/simple-wasi.wit +0 -0
  2549. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/small-anonymous.wit +0 -0
  2550. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/smoke-default.wit +0 -0
  2551. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/smoke-export.wit +0 -0
  2552. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/smoke.wit +0 -0
  2553. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/strings.wit +0 -0
  2554. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/unstable-features.wit +0 -0
  2555. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/unversioned-foo.wit +0 -0
  2556. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/use-paths.wit +0 -0
  2557. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/variants.wit +0 -0
  2558. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/wat.wit +0 -0
  2559. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen/worlds-with-types.wit +0 -0
  2560. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen.rs +0 -0
  2561. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/codegen_no_std.rs +0 -0
  2562. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/direct-import.rs +0 -0
  2563. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/empty.rs +0 -0
  2564. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/empty_async.rs +0 -0
  2565. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/empty_tracing_async.rs +0 -0
  2566. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/function-new.rs +0 -0
  2567. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/function-new_async.rs +0 -0
  2568. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/function-new_tracing_async.rs +0 -0
  2569. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/host-world.rs +0 -0
  2570. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/smoke-default.rs +0 -0
  2571. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/smoke-default_async.rs +0 -0
  2572. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded/smoke-default_tracing_async.rs +0 -0
  2573. /data/ext/cargo-vendor/{wasmtime-component-macro-28.0.0 → wasmtime-component-macro-29.0.0}/tests/expanded.rs +0 -0
  2574. /data/ext/cargo-vendor/{wasmtime-component-util-28.0.0 → wasmtime-component-util-29.0.0}/src/lib.rs +0 -0
  2575. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/LICENSE +0 -0
  2576. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/SECURITY.md +0 -0
  2577. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/builder.rs +0 -0
  2578. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/compiled_function.rs +0 -0
  2579. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/transform/address_transform.rs +0 -0
  2580. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/transform/expression.rs +0 -0
  2581. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/transform/line_program.rs +0 -0
  2582. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/transform/range_info_builder.rs +0 -0
  2583. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/transform/refs.rs +0 -0
  2584. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/transform/simulate.rs +0 -0
  2585. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/transform/synthetic.rs +0 -0
  2586. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug/write_debuginfo.rs +0 -0
  2587. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/debug.rs +0 -0
  2588. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/gc/disabled.rs +0 -0
  2589. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/gc.rs +0 -0
  2590. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/isa_builder.rs +0 -0
  2591. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/translate/heap.rs +0 -0
  2592. /data/ext/cargo-vendor/{wasmtime-cranelift-28.0.0 → wasmtime-cranelift-29.0.0}/src/translate/translation_utils.rs +0 -0
  2593. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/LICENSE +0 -0
  2594. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/examples/factc.rs +0 -0
  2595. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/address_map.rs +0 -0
  2596. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/compile/address_map.rs +0 -0
  2597. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/compile/module_environ.rs +0 -0
  2598. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/compile/module_types.rs +0 -0
  2599. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/compile/trap_encoding.rs +0 -0
  2600. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/artifacts.rs +0 -0
  2601. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/compiler.rs +0 -0
  2602. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/dfg.rs +0 -0
  2603. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/names.rs +0 -0
  2604. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/translate/adapt.rs +0 -0
  2605. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/translate/inline.rs +0 -0
  2606. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/translate.rs +0 -0
  2607. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/types.rs +0 -0
  2608. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/types_builder/resources.rs +0 -0
  2609. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/component/types_builder.rs +0 -0
  2610. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/error.rs +0 -0
  2611. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/fact/core_types.rs +0 -0
  2612. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/fact/signature.rs +0 -0
  2613. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/fact/trampoline.rs +0 -0
  2614. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/fact/transcode.rs +0 -0
  2615. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/fact/traps.rs +0 -0
  2616. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/fact.rs +0 -0
  2617. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/gc/drc.rs +0 -0
  2618. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/gc/null.rs +0 -0
  2619. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/gc.rs +0 -0
  2620. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/module.rs +0 -0
  2621. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/module_types.rs +0 -0
  2622. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/obj.rs +0 -0
  2623. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/prelude.rs +0 -0
  2624. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/ref_bits.rs +0 -0
  2625. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/scopevec.rs +0 -0
  2626. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/stack_map.rs +0 -0
  2627. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/trap_encoding.rs +0 -0
  2628. /data/ext/cargo-vendor/{wasmtime-environ-28.0.0 → wasmtime-environ-29.0.0}/src/types.rs +0 -0
  2629. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/LICENSE +0 -0
  2630. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/build.rs +0 -0
  2631. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/lib.rs +0 -0
  2632. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/nostd.rs +0 -0
  2633. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/stackswitch/aarch64.rs +0 -0
  2634. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/stackswitch/arm.rs +0 -0
  2635. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/stackswitch/riscv64.rs +0 -0
  2636. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/stackswitch/s390x.S +0 -0
  2637. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/stackswitch/x86.rs +0 -0
  2638. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/stackswitch/x86_64.rs +0 -0
  2639. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/stackswitch.rs +0 -0
  2640. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/unix.rs +0 -0
  2641. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/windows.c +0 -0
  2642. /data/ext/cargo-vendor/{wasmtime-fiber-28.0.0 → wasmtime-fiber-29.0.0}/src/windows.rs +0 -0
  2643. /data/ext/cargo-vendor/{wasmtime-jit-debug-28.0.0 → wasmtime-jit-debug-29.0.0}/README.md +0 -0
  2644. /data/ext/cargo-vendor/{wasmtime-jit-debug-28.0.0 → wasmtime-jit-debug-29.0.0}/src/gdb_jit_int.rs +0 -0
  2645. /data/ext/cargo-vendor/{wasmtime-jit-debug-28.0.0 → wasmtime-jit-debug-29.0.0}/src/lib.rs +0 -0
  2646. /data/ext/cargo-vendor/{wasmtime-jit-debug-28.0.0 → wasmtime-jit-debug-29.0.0}/src/perf_jitdump.rs +0 -0
  2647. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-28.0.0 → wasmtime-jit-icache-coherence-29.0.0}/src/lib.rs +0 -0
  2648. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-28.0.0 → wasmtime-jit-icache-coherence-29.0.0}/src/libc.rs +0 -0
  2649. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-28.0.0 → wasmtime-jit-icache-coherence-29.0.0}/src/miri.rs +0 -0
  2650. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-28.0.0 → wasmtime-jit-icache-coherence-29.0.0}/src/win.rs +0 -0
  2651. /data/ext/cargo-vendor/{wasmtime-slab-28.0.0 → wasmtime-slab-29.0.0}/src/lib.rs +0 -0
  2652. /data/ext/cargo-vendor/{wasmtime-versioned-export-macros-28.0.0 → wasmtime-versioned-export-macros-29.0.0}/src/lib.rs +0 -0
  2653. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/LICENSE +0 -0
  2654. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/README.md +0 -0
  2655. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/clocks/host.rs +0 -0
  2656. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/clocks.rs +0 -0
  2657. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/ctx.rs +0 -0
  2658. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/error.rs +0 -0
  2659. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/filesystem.rs +0 -0
  2660. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/clocks.rs +0 -0
  2661. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/env.rs +0 -0
  2662. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/exit.rs +0 -0
  2663. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/filesystem/sync.rs +0 -0
  2664. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/instance_network.rs +0 -0
  2665. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/mod.rs +0 -0
  2666. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/network.rs +0 -0
  2667. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/random.rs +0 -0
  2668. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/tcp_create_socket.rs +0 -0
  2669. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/host/udp_create_socket.rs +0 -0
  2670. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/lib.rs +0 -0
  2671. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/network.rs +0 -0
  2672. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/preview0.rs +0 -0
  2673. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/preview1.rs +0 -0
  2674. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/random.rs +0 -0
  2675. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/runtime.rs +0 -0
  2676. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/stdio/worker_thread_stdin.rs +0 -0
  2677. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/stdio.rs +0 -0
  2678. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/stream.rs +0 -0
  2679. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/tcp.rs +0 -0
  2680. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/udp.rs +0 -0
  2681. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/src/write_stream.rs +0 -0
  2682. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/tests/all/api.rs +0 -0
  2683. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/tests/all/async_.rs +0 -0
  2684. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/tests/all/main.rs +0 -0
  2685. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/tests/all/preview1.rs +0 -0
  2686. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/tests/all/sync.rs +0 -0
  2687. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/tests/process_stdin.rs +0 -0
  2688. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/wit/deps/cli/environment.wit +0 -0
  2689. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/wit/deps/cli/exit.wit +0 -0
  2690. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/wit/deps/cli/run.wit +0 -0
  2691. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/wit/deps/cli/terminal.wit +0 -0
  2692. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/wit/deps/sockets/instance-network.wit +0 -0
  2693. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/wit/deps/sockets/tcp-create-socket.wit +0 -0
  2694. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/wit/deps/sockets/udp-create-socket.wit +0 -0
  2695. /data/ext/cargo-vendor/{wasmtime-wasi-28.0.0 → wasmtime-wasi-29.0.0}/witx/preview0/typenames.witx +0 -0
  2696. /data/ext/cargo-vendor/{wasmtime-winch-28.0.0 → wasmtime-winch-29.0.0}/LICENSE +0 -0
  2697. /data/ext/cargo-vendor/{wasmtime-winch-28.0.0 → wasmtime-winch-29.0.0}/src/compiler.rs +0 -0
  2698. /data/ext/cargo-vendor/{wasmtime-winch-28.0.0 → wasmtime-winch-29.0.0}/src/lib.rs +0 -0
  2699. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-28.0.0 → wasmtime-wit-bindgen-29.0.0}/src/rust.rs +0 -0
  2700. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-28.0.0 → wasmtime-wit-bindgen-29.0.0}/src/source.rs +0 -0
  2701. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-28.0.0 → wasmtime-wit-bindgen-29.0.0}/src/types.rs +0 -0
  2702. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/README.md +0 -0
  2703. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/alias.rs +0 -0
  2704. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/component.rs +0 -0
  2705. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/custom.rs +0 -0
  2706. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/export.rs +0 -0
  2707. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/func.rs +0 -0
  2708. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/import.rs +0 -0
  2709. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/instance.rs +0 -0
  2710. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/item_ref.rs +0 -0
  2711. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/module.rs +0 -0
  2712. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component/wast.rs +0 -0
  2713. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component.rs +0 -0
  2714. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/component_disabled.rs +0 -0
  2715. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/binary/dwarf.rs +0 -0
  2716. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/binary/dwarf_disabled.rs +0 -0
  2717. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/binary.rs +0 -0
  2718. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/custom.rs +0 -0
  2719. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/export.rs +0 -0
  2720. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/expr.rs +0 -0
  2721. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/func.rs +0 -0
  2722. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/global.rs +0 -0
  2723. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/import.rs +0 -0
  2724. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/memory.rs +0 -0
  2725. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/module.rs +0 -0
  2726. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/resolve/deinline_import_export.rs +0 -0
  2727. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/resolve/mod.rs +0 -0
  2728. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/resolve/names.rs +0 -0
  2729. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/resolve/types.rs +0 -0
  2730. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/table.rs +0 -0
  2731. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/tag.rs +0 -0
  2732. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/types.rs +0 -0
  2733. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core/wast.rs +0 -0
  2734. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/core.rs +0 -0
  2735. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/encode.rs +0 -0
  2736. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/error.rs +0 -0
  2737. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/gensym.rs +0 -0
  2738. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/lexer.rs +0 -0
  2739. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/lib.rs +0 -0
  2740. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/names.rs +0 -0
  2741. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/parser.rs +0 -0
  2742. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/token.rs +0 -0
  2743. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/wast.rs +0 -0
  2744. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/src/wat.rs +0 -0
  2745. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/annotations.rs +0 -0
  2746. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/comments.rs +0 -0
  2747. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-core-func-alias.wat +0 -0
  2748. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-core-func-alias.wat.err +0 -0
  2749. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-func-alias.wat +0 -0
  2750. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-func-alias.wat.err +0 -0
  2751. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-index.wat +0 -0
  2752. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-index.wat.err +0 -0
  2753. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-name.wat +0 -0
  2754. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-name.wat.err +0 -0
  2755. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-name2.wat +0 -0
  2756. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-name2.wat.err +0 -0
  2757. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-name3.wat +0 -0
  2758. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/bad-name3.wat.err +0 -0
  2759. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/block1.wat +0 -0
  2760. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/block1.wat.err +0 -0
  2761. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/block2.wat +0 -0
  2762. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/block2.wat.err +0 -0
  2763. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/block3.wat +0 -0
  2764. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/block3.wat.err +0 -0
  2765. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment0.wat +0 -0
  2766. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment0.wat.err +0 -0
  2767. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment1.wat +0 -0
  2768. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment1.wat.err +0 -0
  2769. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment2.wat +0 -0
  2770. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment2.wat.err +0 -0
  2771. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment3.wat +0 -0
  2772. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment3.wat.err +0 -0
  2773. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment4.wat +0 -0
  2774. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment4.wat.err +0 -0
  2775. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment5.wat +0 -0
  2776. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment5.wat.err +0 -0
  2777. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment6.wat +0 -0
  2778. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment6.wat.err +0 -0
  2779. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment7.wat +0 -0
  2780. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment7.wat.err +0 -0
  2781. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment8.wat +0 -0
  2782. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-block-comment8.wat.err +0 -0
  2783. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment0.wat +0 -0
  2784. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment0.wat.err +0 -0
  2785. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment1.wat +0 -0
  2786. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment1.wat.err +0 -0
  2787. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment2.wat +0 -0
  2788. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment2.wat.err +0 -0
  2789. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment3.wat +0 -0
  2790. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment3.wat.err +0 -0
  2791. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment4.wat +0 -0
  2792. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment4.wat.err +0 -0
  2793. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment5.wat +0 -0
  2794. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment5.wat.err +0 -0
  2795. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment6.wat +0 -0
  2796. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment6.wat.err +0 -0
  2797. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment7.wat +0 -0
  2798. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment7.wat.err +0 -0
  2799. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment8.wat +0 -0
  2800. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-line-comment8.wat.err +0 -0
  2801. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string0.wat +0 -0
  2802. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string0.wat.err +0 -0
  2803. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string1.wat +0 -0
  2804. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string1.wat.err +0 -0
  2805. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string2.wat +0 -0
  2806. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string2.wat.err +0 -0
  2807. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string3.wat +0 -0
  2808. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string3.wat.err +0 -0
  2809. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string4.wat +0 -0
  2810. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string4.wat.err +0 -0
  2811. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string5.wat +0 -0
  2812. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string5.wat.err +0 -0
  2813. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string6.wat +0 -0
  2814. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string6.wat.err +0 -0
  2815. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string7.wat +0 -0
  2816. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string7.wat.err +0 -0
  2817. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string8.wat +0 -0
  2818. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/confusing-string8.wat.err +0 -0
  2819. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/inline1.wat +0 -0
  2820. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/inline1.wat.err +0 -0
  2821. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/newline-in-string.wat +0 -0
  2822. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/newline-in-string.wat.err +0 -0
  2823. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string1.wat +0 -0
  2824. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string1.wat.err +0 -0
  2825. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string10.wat +0 -0
  2826. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string10.wat.err +0 -0
  2827. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string11.wat +0 -0
  2828. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string11.wat.err +0 -0
  2829. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string12.wat +0 -0
  2830. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string12.wat.err +0 -0
  2831. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string13.wat +0 -0
  2832. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string13.wat.err +0 -0
  2833. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string14.wat +0 -0
  2834. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string14.wat.err +0 -0
  2835. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string15.wat +0 -0
  2836. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string15.wat.err +0 -0
  2837. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string16.wat +0 -0
  2838. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string16.wat.err +0 -0
  2839. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string2.wat +0 -0
  2840. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string2.wat.err +0 -0
  2841. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string3.wat +0 -0
  2842. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string3.wat.err +0 -0
  2843. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string4.wat +0 -0
  2844. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string4.wat.err +0 -0
  2845. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string5.wat +0 -0
  2846. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string5.wat.err +0 -0
  2847. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string6.wat +0 -0
  2848. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string6.wat.err +0 -0
  2849. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string7.wat +0 -0
  2850. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string7.wat.err +0 -0
  2851. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string8.wat +0 -0
  2852. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string8.wat.err +0 -0
  2853. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string9.wat +0 -0
  2854. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/string9.wat.err +0 -0
  2855. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/unbalanced.wat +0 -0
  2856. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail/unbalanced.wat.err +0 -0
  2857. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/parse-fail.rs +0 -0
  2858. /data/ext/cargo-vendor/{wast-223.0.0 → wast-224.0.0}/tests/recursive.rs +0 -0
  2859. /data/ext/cargo-vendor/{wat-1.223.0 → wat-1.224.0}/README.md +0 -0
  2860. /data/ext/cargo-vendor/{wat-1.223.0 → wat-1.224.0}/src/lib.rs +0 -0
  2861. /data/ext/cargo-vendor/{wiggle-28.0.0 → wiggle-29.0.0}/LICENSE +0 -0
  2862. /data/ext/cargo-vendor/{wiggle-28.0.0 → wiggle-29.0.0}/README.md +0 -0
  2863. /data/ext/cargo-vendor/{wiggle-28.0.0 → wiggle-29.0.0}/src/error.rs +0 -0
  2864. /data/ext/cargo-vendor/{wiggle-28.0.0 → wiggle-29.0.0}/src/guest_type.rs +0 -0
  2865. /data/ext/cargo-vendor/{wiggle-28.0.0 → wiggle-29.0.0}/src/lib.rs +0 -0
  2866. /data/ext/cargo-vendor/{wiggle-28.0.0 → wiggle-29.0.0}/src/region.rs +0 -0
  2867. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/LICENSE +0 -0
  2868. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/README.md +0 -0
  2869. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/codegen_settings.rs +0 -0
  2870. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/config.rs +0 -0
  2871. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/funcs.rs +0 -0
  2872. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/lib.rs +0 -0
  2873. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/lifetimes.rs +0 -0
  2874. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/module_trait.rs +0 -0
  2875. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/names.rs +0 -0
  2876. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/types/error.rs +0 -0
  2877. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/types/flags.rs +0 -0
  2878. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/types/handle.rs +0 -0
  2879. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/types/mod.rs +0 -0
  2880. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/types/record.rs +0 -0
  2881. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/types/variant.rs +0 -0
  2882. /data/ext/cargo-vendor/{wiggle-generate-28.0.0 → wiggle-generate-29.0.0}/src/wasmtime.rs +0 -0
  2883. /data/ext/cargo-vendor/{wiggle-macro-28.0.0 → wiggle-macro-29.0.0}/LICENSE +0 -0
  2884. /data/ext/cargo-vendor/{wiggle-macro-28.0.0 → wiggle-macro-29.0.0}/build.rs +0 -0
  2885. /data/ext/cargo-vendor/{wiggle-macro-28.0.0 → wiggle-macro-29.0.0}/src/lib.rs +0 -0
  2886. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/LICENSE +0 -0
  2887. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/build.rs +0 -0
  2888. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/abi/local.rs +0 -0
  2889. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/codegen/env.rs +0 -0
  2890. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/codegen/phase.rs +0 -0
  2891. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/isa/aarch64/address.rs +0 -0
  2892. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/isa/aarch64/regs.rs +0 -0
  2893. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/isa/reg.rs +0 -0
  2894. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/isa/x64/address.rs +0 -0
  2895. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/isa/x64/regs.rs +0 -0
  2896. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/lib.rs +0 -0
  2897. /data/ext/cargo-vendor/{winch-codegen-28.0.0 → winch-codegen-29.0.0}/src/regset.rs +0 -0
  2898. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/LICENSE-MIT +0 -0
  2899. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/README.md +0 -0
  2900. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/benches/contains_token.rs +0 -0
  2901. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/benches/find_slice.rs +0 -0
  2902. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/benches/iter.rs +0 -0
  2903. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/benches/next_slice.rs +0 -0
  2904. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/benches/number.rs +0 -0
  2905. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/arithmetic/bench.rs +0 -0
  2906. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/arithmetic/main.rs +0 -0
  2907. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/arithmetic/parser.rs +0 -0
  2908. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/arithmetic/parser_ast.rs +0 -0
  2909. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/arithmetic/parser_lexer.rs +0 -0
  2910. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/css/main.rs +0 -0
  2911. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/css/parser.rs +0 -0
  2912. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/custom_error.rs +0 -0
  2913. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/http/bench.rs +0 -0
  2914. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/http/main.rs +0 -0
  2915. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/http/parser.rs +0 -0
  2916. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/http/parser_streaming.rs +0 -0
  2917. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/ini/bench.rs +0 -0
  2918. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/ini/main.rs +0 -0
  2919. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/ini/parser.rs +0 -0
  2920. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/ini/parser_str.rs +0 -0
  2921. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/iterator.rs +0 -0
  2922. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/json/bench.rs +0 -0
  2923. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/json/json.rs +0 -0
  2924. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/json/main.rs +0 -0
  2925. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/json/parser.rs +0 -0
  2926. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/json/parser_dispatch.rs +0 -0
  2927. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/json_iterator.rs +0 -0
  2928. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/ndjson/example.ndjson +0 -0
  2929. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/ndjson/main.rs +0 -0
  2930. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/ndjson/parser.rs +0 -0
  2931. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/s_expression/main.rs +0 -0
  2932. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/s_expression/parser.rs +0 -0
  2933. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/string/main.rs +0 -0
  2934. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/examples/string/parser.rs +0 -0
  2935. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/arithmetic.rs +0 -0
  2936. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/error.rs +0 -0
  2937. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/fromstr.rs +0 -0
  2938. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/http.rs +0 -0
  2939. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/ini.rs +0 -0
  2940. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/json.rs +0 -0
  2941. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/language.rs +0 -0
  2942. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/mod.rs +0 -0
  2943. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/partial.rs +0 -0
  2944. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/performance.rs +0 -0
  2945. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_topic/s_expression.rs +0 -0
  2946. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_0.rs +0 -0
  2947. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_1.rs +0 -0
  2948. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_2.rs +0 -0
  2949. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_3.rs +0 -0
  2950. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_4.rs +0 -0
  2951. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_5.rs +0 -0
  2952. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_6.rs +0 -0
  2953. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_7.rs +0 -0
  2954. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/chapter_8.rs +0 -0
  2955. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/_tutorial/mod.rs +0 -0
  2956. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/ascii/tests.rs +0 -0
  2957. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/binary/mod.rs +0 -0
  2958. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/binary/tests.rs +0 -0
  2959. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/combinator/branch.rs +0 -0
  2960. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/combinator/debug/internals.rs +0 -0
  2961. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/combinator/debug/mod.rs +0 -0
  2962. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/combinator/sequence.rs +0 -0
  2963. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/macros/dispatch.rs +0 -0
  2964. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/macros/seq.rs +0 -0
  2965. /data/ext/cargo-vendor/{winnow-0.6.22/src/macros/test.rs → winnow-0.6.24/src/macros/tests.rs} +0 -0
  2966. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/stream/impls.rs +0 -0
  2967. /data/ext/cargo-vendor/{winnow-0.6.22 → winnow-0.6.24}/src/stream/tests.rs +0 -0
@@ -0,0 +1,4655 @@
1
+ //! Interpretation of pulley bytecode.
2
+
3
+ use crate::decode::*;
4
+ use crate::encode::Encode;
5
+ use crate::imms::*;
6
+ use crate::regs::*;
7
+ use alloc::string::ToString;
8
+ use alloc::{vec, vec::Vec};
9
+ use core::fmt;
10
+ use core::mem;
11
+ use core::ops::ControlFlow;
12
+ use core::ops::{Index, IndexMut};
13
+ use core::ptr::NonNull;
14
+ use sptr::Strict;
15
+ use wasmtime_math::WasmFloat;
16
+ mod debug;
17
+ #[cfg(all(not(pulley_tail_calls), not(pulley_assume_llvm_makes_tail_calls)))]
18
+ mod match_loop;
19
+ #[cfg(any(pulley_tail_calls, pulley_assume_llvm_makes_tail_calls))]
20
+ mod tail_loop;
21
+
22
+ const DEFAULT_STACK_SIZE: usize = 1 << 20; // 1 MiB
23
+
24
+ /// A virtual machine for interpreting Pulley bytecode.
25
+ pub struct Vm {
26
+ state: MachineState,
27
+ }
28
+
29
+ impl Default for Vm {
30
+ fn default() -> Self {
31
+ Vm::new()
32
+ }
33
+ }
34
+
35
+ impl Vm {
36
+ /// Create a new virtual machine with the default stack size.
37
+ pub fn new() -> Self {
38
+ Self::with_stack(vec![0; DEFAULT_STACK_SIZE])
39
+ }
40
+
41
+ /// Create a new virtual machine with the given stack.
42
+ pub fn with_stack(stack: Vec<u8>) -> Self {
43
+ Self {
44
+ state: MachineState::with_stack(stack),
45
+ }
46
+ }
47
+
48
+ /// Get a shared reference to this VM's machine state.
49
+ pub fn state(&self) -> &MachineState {
50
+ &self.state
51
+ }
52
+
53
+ /// Get an exclusive reference to this VM's machine state.
54
+ pub fn state_mut(&mut self) -> &mut MachineState {
55
+ &mut self.state
56
+ }
57
+
58
+ /// Consumer this VM and return its stack storage.
59
+ pub fn into_stack(self) -> Vec<u8> {
60
+ self.state.stack
61
+ }
62
+
63
+ /// Call a bytecode function.
64
+ ///
65
+ /// The given `func` must point to the beginning of a valid Pulley bytecode
66
+ /// function.
67
+ ///
68
+ /// The given `args` must match the number and type of arguments that
69
+ /// function expects.
70
+ ///
71
+ /// The given `rets` must match the function's actual return types.
72
+ ///
73
+ /// Returns either the resulting values, or the PC at which a trap was
74
+ /// raised.
75
+ pub unsafe fn call<'a>(
76
+ &'a mut self,
77
+ func: NonNull<u8>,
78
+ args: &[Val],
79
+ rets: impl IntoIterator<Item = RegType> + 'a,
80
+ ) -> DoneReason<impl Iterator<Item = Val> + 'a> {
81
+ self.call_start(args);
82
+
83
+ match self.call_run(func) {
84
+ DoneReason::ReturnToHost(()) => DoneReason::ReturnToHost(self.call_end(rets)),
85
+ DoneReason::Trap { pc, kind } => DoneReason::Trap { pc, kind },
86
+ DoneReason::CallIndirectHost { id, resume } => {
87
+ DoneReason::CallIndirectHost { id, resume }
88
+ }
89
+ }
90
+ }
91
+
92
+ /// Peforms the initial part of [`Vm::call`] in setting up the `args`
93
+ /// provided in registers according to Pulley's ABI.
94
+ ///
95
+ /// # Unsafety
96
+ ///
97
+ /// All the same unsafety as `call` and additiionally, you must
98
+ /// invoke `call_run` and then `call_end` after calling `call_start`.
99
+ /// If you don't want to wrangle these invocations, use `call` instead
100
+ /// of `call_{start,run,end}`.
101
+ pub unsafe fn call_start<'a>(&'a mut self, args: &[Val]) {
102
+ // NB: make sure this method stays in sync with
103
+ // `PulleyMachineDeps::compute_arg_locs`!
104
+
105
+ let mut x_args = (0..16).map(|x| XReg::new_unchecked(x));
106
+ let mut f_args = (0..16).map(|f| FReg::new_unchecked(f));
107
+ let mut v_args = (0..16).map(|v| VReg::new_unchecked(v));
108
+
109
+ for arg in args {
110
+ match arg {
111
+ Val::XReg(val) => match x_args.next() {
112
+ Some(reg) => self.state[reg] = *val,
113
+ None => todo!("stack slots"),
114
+ },
115
+ Val::FReg(val) => match f_args.next() {
116
+ Some(reg) => self.state[reg] = *val,
117
+ None => todo!("stack slots"),
118
+ },
119
+ Val::VReg(val) => match v_args.next() {
120
+ Some(reg) => self.state[reg] = *val,
121
+ None => todo!("stack slots"),
122
+ },
123
+ }
124
+ }
125
+ }
126
+
127
+ /// Peforms the internal part of [`Vm::call`] where bytecode is actually
128
+ /// executed.
129
+ ///
130
+ /// # Unsafety
131
+ ///
132
+ /// In addition to all the invariants documented for `call`, you
133
+ /// may only invoke `call_run` after invoking `call_start` to
134
+ /// initialize this call's arguments.
135
+ pub unsafe fn call_run(&mut self, pc: NonNull<u8>) -> DoneReason<()> {
136
+ self.state.debug_assert_done_reason_none();
137
+ let interpreter = Interpreter {
138
+ state: &mut self.state,
139
+ pc: UnsafeBytecodeStream::new(pc),
140
+ };
141
+ let done = interpreter.run();
142
+ self.state.done_decode(done)
143
+ }
144
+
145
+ /// Peforms the tail end of [`Vm::call`] by returning the values as
146
+ /// determined by `rets` according to Pulley's ABI.
147
+ ///
148
+ /// # Unsafety
149
+ ///
150
+ /// In addition to the invariants documented for `call`, this may
151
+ /// only be called after `call_run`.
152
+ pub unsafe fn call_end<'a>(
153
+ &'a mut self,
154
+ rets: impl IntoIterator<Item = RegType> + 'a,
155
+ ) -> impl Iterator<Item = Val> + 'a {
156
+ // NB: make sure this method stays in sync with
157
+ // `PulleyMachineDeps::compute_arg_locs`!
158
+
159
+ let mut x_rets = (0..16).map(|x| XReg::new_unchecked(x));
160
+ let mut f_rets = (0..16).map(|f| FReg::new_unchecked(f));
161
+ let mut v_rets = (0..16).map(|v| VReg::new_unchecked(v));
162
+
163
+ rets.into_iter().map(move |ty| match ty {
164
+ RegType::XReg => match x_rets.next() {
165
+ Some(reg) => Val::XReg(self.state[reg]),
166
+ None => todo!("stack slots"),
167
+ },
168
+ RegType::FReg => match f_rets.next() {
169
+ Some(reg) => Val::FReg(self.state[reg]),
170
+ None => todo!("stack slots"),
171
+ },
172
+ RegType::VReg => match v_rets.next() {
173
+ Some(reg) => Val::VReg(self.state[reg]),
174
+ None => todo!("stack slots"),
175
+ },
176
+ })
177
+ }
178
+
179
+ /// Returns the current `fp` register value.
180
+ pub fn fp(&self) -> *mut u8 {
181
+ self.state.fp
182
+ }
183
+
184
+ /// Returns the current `lr` register value.
185
+ pub fn lr(&self) -> *mut u8 {
186
+ self.state.lr
187
+ }
188
+
189
+ /// Sets the current `fp` register value.
190
+ pub unsafe fn set_fp(&mut self, fp: *mut u8) {
191
+ self.state.fp = fp;
192
+ }
193
+
194
+ /// Sets the current `lr` register value.
195
+ pub unsafe fn set_lr(&mut self, lr: *mut u8) {
196
+ self.state.lr = lr;
197
+ }
198
+ }
199
+
200
+ /// The type of a register in the Pulley machine state.
201
+ #[derive(Clone, Copy, Debug)]
202
+ pub enum RegType {
203
+ /// An `x` register: integers.
204
+ XReg,
205
+
206
+ /// An `f` register: floats.
207
+ FReg,
208
+
209
+ /// A `v` register: vectors.
210
+ VReg,
211
+ }
212
+
213
+ /// A value that can be stored in a register.
214
+ #[derive(Clone, Copy, Debug)]
215
+ pub enum Val {
216
+ /// An `x` register value: integers.
217
+ XReg(XRegVal),
218
+
219
+ /// An `f` register value: floats.
220
+ FReg(FRegVal),
221
+
222
+ /// A `v` register value: vectors.
223
+ VReg(VRegVal),
224
+ }
225
+
226
+ impl fmt::LowerHex for Val {
227
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
228
+ match self {
229
+ Val::XReg(v) => fmt::LowerHex::fmt(v, f),
230
+ Val::FReg(v) => fmt::LowerHex::fmt(v, f),
231
+ Val::VReg(v) => fmt::LowerHex::fmt(v, f),
232
+ }
233
+ }
234
+ }
235
+
236
+ impl From<XRegVal> for Val {
237
+ fn from(value: XRegVal) -> Self {
238
+ Val::XReg(value)
239
+ }
240
+ }
241
+
242
+ impl From<u64> for Val {
243
+ fn from(value: u64) -> Self {
244
+ XRegVal::new_u64(value).into()
245
+ }
246
+ }
247
+
248
+ impl From<u32> for Val {
249
+ fn from(value: u32) -> Self {
250
+ XRegVal::new_u32(value).into()
251
+ }
252
+ }
253
+
254
+ impl From<i64> for Val {
255
+ fn from(value: i64) -> Self {
256
+ XRegVal::new_i64(value).into()
257
+ }
258
+ }
259
+
260
+ impl From<i32> for Val {
261
+ fn from(value: i32) -> Self {
262
+ XRegVal::new_i32(value).into()
263
+ }
264
+ }
265
+
266
+ impl<T> From<*mut T> for Val {
267
+ fn from(value: *mut T) -> Self {
268
+ XRegVal::new_ptr(value).into()
269
+ }
270
+ }
271
+
272
+ impl From<FRegVal> for Val {
273
+ fn from(value: FRegVal) -> Self {
274
+ Val::FReg(value)
275
+ }
276
+ }
277
+
278
+ impl From<f64> for Val {
279
+ fn from(value: f64) -> Self {
280
+ FRegVal::new_f64(value).into()
281
+ }
282
+ }
283
+
284
+ impl From<f32> for Val {
285
+ fn from(value: f32) -> Self {
286
+ FRegVal::new_f32(value).into()
287
+ }
288
+ }
289
+
290
+ impl From<VRegVal> for Val {
291
+ fn from(value: VRegVal) -> Self {
292
+ Val::VReg(value)
293
+ }
294
+ }
295
+
296
+ /// An `x` register value: integers.
297
+ #[derive(Copy, Clone)]
298
+ pub struct XRegVal(XRegUnion);
299
+
300
+ impl PartialEq for XRegVal {
301
+ fn eq(&self, other: &Self) -> bool {
302
+ self.get_u64() == other.get_u64()
303
+ }
304
+ }
305
+
306
+ impl Eq for XRegVal {}
307
+
308
+ impl fmt::Debug for XRegVal {
309
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
310
+ f.debug_struct("XRegVal")
311
+ .field("as_u64", &self.get_u64())
312
+ .finish()
313
+ }
314
+ }
315
+
316
+ impl fmt::LowerHex for XRegVal {
317
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
318
+ fmt::LowerHex::fmt(&self.get_u64(), f)
319
+ }
320
+ }
321
+
322
+ /// Contents of an "x" register, or a general-purpose register.
323
+ ///
324
+ /// This is represented as a Rust `union` to make it easier to access typed
325
+ /// views of this, notably the `ptr` field which enables preserving a bit of
326
+ /// provenance for Rust for values stored as a pointer and read as a pointer.
327
+ ///
328
+ /// Note that the actual in-memory representation of this value is handled
329
+ /// carefully at this time. Pulley bytecode exposes the ability to store a
330
+ /// 32-bit result into a register and then read the 64-bit contents of the
331
+ /// register. This leaves us with the question of what to do with the upper bits
332
+ /// of the register when the 32-bit result is generated. Possibilities for
333
+ /// handling this are:
334
+ ///
335
+ /// 1. Do nothing, just store the 32-bit value. The problem with this approach
336
+ /// means that the "upper bits" are now endianness-dependent. That means that
337
+ /// the state of the register is now platform-dependent.
338
+ /// 2. Sign or zero-extend. This restores platform-independent behavior but
339
+ /// requires an extra store on 32-bit platforms because they can probably
340
+ /// only store 32-bits at a time.
341
+ /// 3. Always store the values in this union as little-endian. This means that
342
+ /// big-endian platforms have to do a byte-swap but otherwise it has
343
+ /// platform-independent behavior.
344
+ ///
345
+ /// This union chooses route (3) at this time where the values here are always
346
+ /// stored in little-endian form (even the `ptr` field). That guarantees
347
+ /// cross-platform behavior while also minimizing the amount of data stored on
348
+ /// writes.
349
+ ///
350
+ /// In the future we may wish to benchmark this and possibly change this.
351
+ /// Technically Cranelift-generated bytecode should never rely on the upper bits
352
+ /// of a register if it didn't previously write them so this in theory doesn't
353
+ /// actually matter for Cranelift or wasm semantics. The only cost right now is
354
+ /// to big-endian platforms though and it's not certain how crucial performance
355
+ /// will be there.
356
+ ///
357
+ /// One final note is that this notably contrasts with native CPUs where
358
+ /// native ISAs like RISC-V specifically define the entire register on every
359
+ /// instruction, even if only the low half contains a significant result. Pulley
360
+ /// is unlikely to become out-of-order within the CPU itself as it's interpreted
361
+ /// meaning that severing data-dependencies with previous operations is
362
+ /// hypothesized to not be too important. If this is ever a problem though it
363
+ /// could increase the likelihood we go for route (2) above instead (or maybe
364
+ /// even (1)).
365
+ #[derive(Copy, Clone)]
366
+ union XRegUnion {
367
+ i32: i32,
368
+ u32: u32,
369
+ i64: i64,
370
+ u64: u64,
371
+ ptr: *mut u8,
372
+ }
373
+
374
+ impl Default for XRegVal {
375
+ fn default() -> Self {
376
+ Self(unsafe { mem::zeroed() })
377
+ }
378
+ }
379
+
380
+ #[allow(missing_docs)]
381
+ impl XRegVal {
382
+ pub fn new_i32(x: i32) -> Self {
383
+ let mut val = XRegVal::default();
384
+ val.set_i32(x);
385
+ val
386
+ }
387
+
388
+ pub fn new_u32(x: u32) -> Self {
389
+ let mut val = XRegVal::default();
390
+ val.set_u32(x);
391
+ val
392
+ }
393
+
394
+ pub fn new_i64(x: i64) -> Self {
395
+ let mut val = XRegVal::default();
396
+ val.set_i64(x);
397
+ val
398
+ }
399
+
400
+ pub fn new_u64(x: u64) -> Self {
401
+ let mut val = XRegVal::default();
402
+ val.set_u64(x);
403
+ val
404
+ }
405
+
406
+ pub fn new_ptr<T>(ptr: *mut T) -> Self {
407
+ let mut val = XRegVal::default();
408
+ val.set_ptr(ptr);
409
+ val
410
+ }
411
+
412
+ pub fn get_i32(&self) -> i32 {
413
+ let x = unsafe { self.0.i32 };
414
+ i32::from_le(x)
415
+ }
416
+
417
+ pub fn get_u32(&self) -> u32 {
418
+ let x = unsafe { self.0.u32 };
419
+ u32::from_le(x)
420
+ }
421
+
422
+ pub fn get_i64(&self) -> i64 {
423
+ let x = unsafe { self.0.i64 };
424
+ i64::from_le(x)
425
+ }
426
+
427
+ pub fn get_u64(&self) -> u64 {
428
+ let x = unsafe { self.0.u64 };
429
+ u64::from_le(x)
430
+ }
431
+
432
+ pub fn get_ptr<T>(&self) -> *mut T {
433
+ let ptr = unsafe { self.0.ptr };
434
+ Strict::map_addr(ptr, |p| usize::from_le(p)).cast()
435
+ }
436
+
437
+ pub fn set_i32(&mut self, x: i32) {
438
+ self.0.i32 = x.to_le();
439
+ }
440
+
441
+ pub fn set_u32(&mut self, x: u32) {
442
+ self.0.u32 = x.to_le();
443
+ }
444
+
445
+ pub fn set_i64(&mut self, x: i64) {
446
+ self.0.i64 = x.to_le();
447
+ }
448
+
449
+ pub fn set_u64(&mut self, x: u64) {
450
+ self.0.u64 = x.to_le();
451
+ }
452
+
453
+ pub fn set_ptr<T>(&mut self, ptr: *mut T) {
454
+ self.0.ptr = Strict::map_addr(ptr, |p| p.to_le()).cast();
455
+ }
456
+ }
457
+
458
+ /// An `f` register value: floats.
459
+ #[derive(Copy, Clone)]
460
+ pub struct FRegVal(FRegUnion);
461
+
462
+ impl fmt::Debug for FRegVal {
463
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
464
+ f.debug_struct("FRegVal")
465
+ .field("as_f32", &self.get_f32())
466
+ .field("as_f64", &self.get_f64())
467
+ .finish()
468
+ }
469
+ }
470
+
471
+ impl fmt::LowerHex for FRegVal {
472
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
473
+ fmt::LowerHex::fmt(&self.get_f64().to_bits(), f)
474
+ }
475
+ }
476
+
477
+ // NB: like `XRegUnion` values here are always little-endian, see the
478
+ // documentation above for more details.
479
+ #[derive(Copy, Clone)]
480
+ union FRegUnion {
481
+ f32: u32,
482
+ f64: u64,
483
+ }
484
+
485
+ impl Default for FRegVal {
486
+ fn default() -> Self {
487
+ Self(unsafe { mem::zeroed() })
488
+ }
489
+ }
490
+
491
+ #[allow(missing_docs)]
492
+ impl FRegVal {
493
+ pub fn new_f32(f: f32) -> Self {
494
+ let mut val = Self::default();
495
+ val.set_f32(f);
496
+ val
497
+ }
498
+
499
+ pub fn new_f64(f: f64) -> Self {
500
+ let mut val = Self::default();
501
+ val.set_f64(f);
502
+ val
503
+ }
504
+
505
+ pub fn get_f32(&self) -> f32 {
506
+ let val = unsafe { self.0.f32 };
507
+ f32::from_le_bytes(val.to_ne_bytes())
508
+ }
509
+
510
+ pub fn get_f64(&self) -> f64 {
511
+ let val = unsafe { self.0.f64 };
512
+ f64::from_le_bytes(val.to_ne_bytes())
513
+ }
514
+
515
+ pub fn set_f32(&mut self, val: f32) {
516
+ self.0.f32 = u32::from_ne_bytes(val.to_le_bytes());
517
+ }
518
+
519
+ pub fn set_f64(&mut self, val: f64) {
520
+ self.0.f64 = u64::from_ne_bytes(val.to_le_bytes());
521
+ }
522
+ }
523
+
524
+ /// A `v` register value: vectors.
525
+ #[derive(Copy, Clone)]
526
+ pub struct VRegVal(VRegUnion);
527
+
528
+ impl fmt::Debug for VRegVal {
529
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
530
+ f.debug_struct("VRegVal")
531
+ .field("as_u128", &unsafe { self.0.u128 })
532
+ .finish()
533
+ }
534
+ }
535
+
536
+ impl fmt::LowerHex for VRegVal {
537
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
538
+ fmt::LowerHex::fmt(unsafe { &self.0.u128 }, f)
539
+ }
540
+ }
541
+
542
+ /// 128-bit vector registers.
543
+ ///
544
+ /// This register is always stored in little-endian order and has different
545
+ /// constraints than `XRegVal` and `FRegVal` above. Notably all fields of this
546
+ /// union are the same width so all bits are always defined. Note that
547
+ /// little-endian is required though so bitcasts between different shapes of
548
+ /// vectors works. This union cannot be stored in big-endian.
549
+ #[derive(Copy, Clone)]
550
+ #[repr(align(16))]
551
+ union VRegUnion {
552
+ u128: u128,
553
+ i8x16: [i8; 16],
554
+ i16x8: [i16; 8],
555
+ i32x4: [i32; 4],
556
+ i64x2: [i64; 2],
557
+ u8x16: [u8; 16],
558
+ u16x8: [u16; 8],
559
+ u32x4: [u32; 4],
560
+ u64x2: [u64; 2],
561
+ // Note that these are `u32` and `u64`, not f32/f64. That's only because
562
+ // f32/f64 don't have `.to_le()` and `::from_le()` so need to go through the
563
+ // bits anyway.
564
+ f32x4: [u32; 4],
565
+ f64x2: [u64; 2],
566
+ }
567
+
568
+ impl Default for VRegVal {
569
+ fn default() -> Self {
570
+ Self(unsafe { mem::zeroed() })
571
+ }
572
+ }
573
+
574
+ #[allow(missing_docs)]
575
+ impl VRegVal {
576
+ pub fn new_u128(i: u128) -> Self {
577
+ let mut val = Self::default();
578
+ val.set_u128(i);
579
+ val
580
+ }
581
+
582
+ pub fn get_u128(&self) -> u128 {
583
+ let val = unsafe { self.0.u128 };
584
+ u128::from_le(val)
585
+ }
586
+
587
+ pub fn set_u128(&mut self, val: u128) {
588
+ self.0.u128 = val.to_le();
589
+ }
590
+
591
+ fn get_i8x16(&self) -> [i8; 16] {
592
+ let val = unsafe { self.0.i8x16 };
593
+ val.map(|e| i8::from_le(e))
594
+ }
595
+
596
+ fn set_i8x16(&mut self, val: [i8; 16]) {
597
+ self.0.i8x16 = val.map(|e| e.to_le());
598
+ }
599
+
600
+ fn get_u8x16(&self) -> [u8; 16] {
601
+ let val = unsafe { self.0.u8x16 };
602
+ val.map(|e| u8::from_le(e))
603
+ }
604
+
605
+ fn set_u8x16(&mut self, val: [u8; 16]) {
606
+ self.0.u8x16 = val.map(|e| e.to_le());
607
+ }
608
+
609
+ fn get_i16x8(&self) -> [i16; 8] {
610
+ let val = unsafe { self.0.i16x8 };
611
+ val.map(|e| i16::from_le(e))
612
+ }
613
+
614
+ fn set_i16x8(&mut self, val: [i16; 8]) {
615
+ self.0.i16x8 = val.map(|e| e.to_le());
616
+ }
617
+
618
+ fn get_u16x8(&self) -> [u16; 8] {
619
+ let val = unsafe { self.0.u16x8 };
620
+ val.map(|e| u16::from_le(e))
621
+ }
622
+
623
+ fn set_u16x8(&mut self, val: [u16; 8]) {
624
+ self.0.u16x8 = val.map(|e| e.to_le());
625
+ }
626
+
627
+ fn get_i32x4(&self) -> [i32; 4] {
628
+ let val = unsafe { self.0.i32x4 };
629
+ val.map(|e| i32::from_le(e))
630
+ }
631
+
632
+ fn set_i32x4(&mut self, val: [i32; 4]) {
633
+ self.0.i32x4 = val.map(|e| e.to_le());
634
+ }
635
+
636
+ fn get_u32x4(&self) -> [u32; 4] {
637
+ let val = unsafe { self.0.u32x4 };
638
+ val.map(|e| u32::from_le(e))
639
+ }
640
+
641
+ fn set_u32x4(&mut self, val: [u32; 4]) {
642
+ self.0.u32x4 = val.map(|e| e.to_le());
643
+ }
644
+
645
+ fn get_i64x2(&self) -> [i64; 2] {
646
+ let val = unsafe { self.0.i64x2 };
647
+ val.map(|e| i64::from_le(e))
648
+ }
649
+
650
+ fn set_i64x2(&mut self, val: [i64; 2]) {
651
+ self.0.i64x2 = val.map(|e| e.to_le());
652
+ }
653
+
654
+ fn get_u64x2(&self) -> [u64; 2] {
655
+ let val = unsafe { self.0.u64x2 };
656
+ val.map(|e| u64::from_le(e))
657
+ }
658
+
659
+ fn set_u64x2(&mut self, val: [u64; 2]) {
660
+ self.0.u64x2 = val.map(|e| e.to_le());
661
+ }
662
+
663
+ fn get_f64x2(&self) -> [f64; 2] {
664
+ let val = unsafe { self.0.f64x2 };
665
+ val.map(|e| f64::from_bits(u64::from_le(e)))
666
+ }
667
+
668
+ fn set_f64x2(&mut self, val: [f64; 2]) {
669
+ self.0.f64x2 = val.map(|e| e.to_bits().to_le());
670
+ }
671
+
672
+ fn get_f32x4(&self) -> [f32; 4] {
673
+ let val = unsafe { self.0.f32x4 };
674
+ val.map(|e| f32::from_bits(u32::from_le(e)))
675
+ }
676
+
677
+ fn set_f32x4(&mut self, val: [f32; 4]) {
678
+ self.0.f32x4 = val.map(|e| e.to_bits().to_le());
679
+ }
680
+ }
681
+
682
+ /// The machine state for a Pulley virtual machine: the various registers and
683
+ /// stack.
684
+ pub struct MachineState {
685
+ x_regs: [XRegVal; XReg::RANGE.end as usize],
686
+ f_regs: [FRegVal; FReg::RANGE.end as usize],
687
+ v_regs: [VRegVal; VReg::RANGE.end as usize],
688
+ fp: *mut u8,
689
+ lr: *mut u8,
690
+ stack: Vec<u8>,
691
+ done_reason: Option<DoneReason<()>>,
692
+ }
693
+
694
+ unsafe impl Send for MachineState {}
695
+ unsafe impl Sync for MachineState {}
696
+
697
+ impl fmt::Debug for MachineState {
698
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
699
+ let MachineState {
700
+ x_regs,
701
+ f_regs,
702
+ v_regs,
703
+ stack: _,
704
+ done_reason: _,
705
+ fp: _,
706
+ lr: _,
707
+ } = self;
708
+
709
+ struct RegMap<'a, R>(&'a [R], fn(u8) -> alloc::string::String);
710
+
711
+ impl<R: fmt::Debug> fmt::Debug for RegMap<'_, R> {
712
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
713
+ let mut f = f.debug_map();
714
+ for (i, r) in self.0.iter().enumerate() {
715
+ f.entry(&(self.1)(i as u8), r);
716
+ }
717
+ f.finish()
718
+ }
719
+ }
720
+
721
+ f.debug_struct("MachineState")
722
+ .field(
723
+ "x_regs",
724
+ &RegMap(x_regs, |i| XReg::new(i).unwrap().to_string()),
725
+ )
726
+ .field(
727
+ "f_regs",
728
+ &RegMap(f_regs, |i| FReg::new(i).unwrap().to_string()),
729
+ )
730
+ .field(
731
+ "v_regs",
732
+ &RegMap(v_regs, |i| VReg::new(i).unwrap().to_string()),
733
+ )
734
+ .finish_non_exhaustive()
735
+ }
736
+ }
737
+
738
+ macro_rules! index_reg {
739
+ ($reg_ty:ty,$value_ty:ty,$field:ident) => {
740
+ impl Index<$reg_ty> for Vm {
741
+ type Output = $value_ty;
742
+
743
+ fn index(&self, reg: $reg_ty) -> &Self::Output {
744
+ &self.state[reg]
745
+ }
746
+ }
747
+
748
+ impl IndexMut<$reg_ty> for Vm {
749
+ fn index_mut(&mut self, reg: $reg_ty) -> &mut Self::Output {
750
+ &mut self.state[reg]
751
+ }
752
+ }
753
+
754
+ impl Index<$reg_ty> for MachineState {
755
+ type Output = $value_ty;
756
+
757
+ fn index(&self, reg: $reg_ty) -> &Self::Output {
758
+ &self.$field[reg.index()]
759
+ }
760
+ }
761
+
762
+ impl IndexMut<$reg_ty> for MachineState {
763
+ fn index_mut(&mut self, reg: $reg_ty) -> &mut Self::Output {
764
+ &mut self.$field[reg.index()]
765
+ }
766
+ }
767
+ };
768
+ }
769
+
770
+ index_reg!(XReg, XRegVal, x_regs);
771
+ index_reg!(FReg, FRegVal, f_regs);
772
+ index_reg!(VReg, VRegVal, v_regs);
773
+
774
+ /// Sentinel return address that signals the end of the call stack.
775
+ const HOST_RETURN_ADDR: *mut u8 = usize::MAX as *mut u8;
776
+
777
+ impl MachineState {
778
+ fn with_stack(stack: Vec<u8>) -> Self {
779
+ assert!(stack.len() > 0);
780
+ let mut state = Self {
781
+ x_regs: [Default::default(); XReg::RANGE.end as usize],
782
+ f_regs: Default::default(),
783
+ v_regs: Default::default(),
784
+ stack,
785
+ done_reason: None,
786
+ fp: HOST_RETURN_ADDR,
787
+ lr: HOST_RETURN_ADDR,
788
+ };
789
+
790
+ // Take care to construct SP such that we preserve pointer provenance
791
+ // for the whole stack.
792
+ let len = state.stack.len();
793
+ let sp = &mut state.stack[..];
794
+ let sp = sp.as_mut_ptr();
795
+ let sp = unsafe { sp.add(len) };
796
+ state[XReg::sp] = XRegVal::new_ptr(sp);
797
+
798
+ state
799
+ }
800
+ }
801
+
802
+ /// Inner private module to prevent creation of the `Done` structure outside of
803
+ /// this module.
804
+ mod done {
805
+ use super::{Encode, Interpreter, MachineState};
806
+ use core::ops::ControlFlow;
807
+ use core::ptr::NonNull;
808
+
809
+ /// Zero-sized sentinel indicating that pulley execution has halted.
810
+ ///
811
+ /// The reason for halting is stored in `MachineState`.
812
+ #[derive(Copy, Clone, Debug, PartialEq, Eq)]
813
+ pub struct Done {
814
+ _priv: (),
815
+ }
816
+
817
+ /// Reason that the pulley interpreter has ceased execution.
818
+ pub enum DoneReason<T> {
819
+ /// A trap happened at this bytecode instruction.
820
+ Trap {
821
+ /// Which instruction is raising this trap.
822
+ pc: NonNull<u8>,
823
+ /// The kind of trap being raised, if known.
824
+ kind: Option<TrapKind>,
825
+ },
826
+ /// The `call_indirect_host` instruction was executed.
827
+ CallIndirectHost {
828
+ /// The payload of `call_indirect_host`.
829
+ id: u8,
830
+ /// Where to resume execution after the host has finished.
831
+ resume: NonNull<u8>,
832
+ },
833
+ /// Pulley has finished and the provided value is being returned.
834
+ ReturnToHost(T),
835
+ }
836
+
837
+ /// Stored within `DoneReason::Trap`.
838
+ #[allow(missing_docs, reason = "self-describing variants")]
839
+ pub enum TrapKind {
840
+ DivideByZero,
841
+ IntegerOverflow,
842
+ BadConversionToInteger,
843
+ }
844
+
845
+ impl MachineState {
846
+ pub(super) fn debug_assert_done_reason_none(&mut self) {
847
+ debug_assert!(self.done_reason.is_none());
848
+ }
849
+
850
+ pub(super) fn done_decode(&mut self, Done { _priv }: Done) -> DoneReason<()> {
851
+ self.done_reason.take().unwrap()
852
+ }
853
+ }
854
+
855
+ impl Interpreter<'_> {
856
+ /// Finishes execution by recording `DoneReason::Trap`.
857
+ ///
858
+ /// This method takes an `I` generic parameter indicating which
859
+ /// instruction is executing this function and generating a trap. That's
860
+ /// used to go backwards from the current `pc` which is just beyond the
861
+ /// instruction to point to the instruction itself in the trap metadata
862
+ /// returned from the interpreter.
863
+ pub fn done_trap<I: Encode>(&mut self) -> ControlFlow<Done> {
864
+ self.done_trap_kind::<I>(None)
865
+ }
866
+
867
+ /// Same as `done_trap` but with an explicit `TrapKind`.
868
+ pub fn done_trap_kind<I: Encode>(&mut self, kind: Option<TrapKind>) -> ControlFlow<Done> {
869
+ let pc = self.current_pc::<I>();
870
+ self.state.done_reason = Some(DoneReason::Trap { pc, kind });
871
+ ControlFlow::Break(Done { _priv: () })
872
+ }
873
+
874
+ /// Finishes execution by recording `DoneReason::CallIndirectHost`.
875
+ pub fn done_call_indirect_host(&mut self, id: u8) -> ControlFlow<Done> {
876
+ self.state.done_reason = Some(DoneReason::CallIndirectHost {
877
+ id,
878
+ resume: self.pc.as_ptr(),
879
+ });
880
+ ControlFlow::Break(Done { _priv: () })
881
+ }
882
+
883
+ /// Finishes execution by recording `DoneReason::ReturnToHost`.
884
+ pub fn done_return_to_host(&mut self) -> ControlFlow<Done> {
885
+ self.state.done_reason = Some(DoneReason::ReturnToHost(()));
886
+ ControlFlow::Break(Done { _priv: () })
887
+ }
888
+ }
889
+ }
890
+
891
+ use done::Done;
892
+ pub use done::{DoneReason, TrapKind};
893
+
894
+ struct Interpreter<'a> {
895
+ state: &'a mut MachineState,
896
+ pc: UnsafeBytecodeStream,
897
+ }
898
+
899
+ impl Interpreter<'_> {
900
+ /// Performs a relative jump of `offset` bytes from the current instruction.
901
+ ///
902
+ /// This will jump from the start of the current instruction, identified by
903
+ /// `I`, `offset` bytes away. Note that the `self.pc` at the start of this
904
+ /// function actually points to the instruction after this one so `I` is
905
+ /// necessary to go back to ourselves after which we then go `offset` away.
906
+ #[inline]
907
+ fn pc_rel_jump<I: Encode>(&mut self, offset: PcRelOffset) -> ControlFlow<Done> {
908
+ let offset = isize::try_from(i32::from(offset)).unwrap();
909
+ let my_pc = self.current_pc::<I>();
910
+ self.pc = unsafe { UnsafeBytecodeStream::new(my_pc.offset(offset)) };
911
+ ControlFlow::Continue(())
912
+ }
913
+
914
+ /// Returns the PC of the current instruction where `I` is the static type
915
+ /// representing the current instruction.
916
+ fn current_pc<I: Encode>(&self) -> NonNull<u8> {
917
+ unsafe { self.pc.offset(-isize::from(I::WIDTH)).as_ptr() }
918
+ }
919
+
920
+ /// `sp -= size_of::<T>(); *sp = val;`
921
+ ///
922
+ /// Note that `I` is the instruction which is pushing data to use if a trap
923
+ /// is generated.
924
+ #[must_use]
925
+ fn push<I: Encode, T>(&mut self, val: T) -> ControlFlow<Done> {
926
+ let new_sp = self.state[XReg::sp].get_ptr::<T>().wrapping_sub(1);
927
+ self.set_sp::<I>(new_sp.cast())?;
928
+ unsafe {
929
+ new_sp.write_unaligned(val);
930
+ }
931
+ ControlFlow::Continue(())
932
+ }
933
+
934
+ /// `ret = *sp; sp -= size_of::<T>()`
935
+ fn pop<T>(&mut self) -> T {
936
+ let sp = self.state[XReg::sp].get_ptr::<T>();
937
+ let val = unsafe { sp.read_unaligned() };
938
+ self.set_sp_unchecked(sp.wrapping_add(1));
939
+ val
940
+ }
941
+
942
+ /// Sets the stack pointer to the `sp` provided.
943
+ ///
944
+ /// Returns a trap if this would result in stack overflow, or if `sp` is
945
+ /// beneath the base pointer of `self.state.stack`.
946
+ ///
947
+ /// The `I` parameter here is the instruction that is setting the stack
948
+ /// pointer and is used to calculate this instruction's own `pc` if this
949
+ /// instruction traps.
950
+ #[must_use]
951
+ fn set_sp<I: Encode>(&mut self, sp: *mut u8) -> ControlFlow<Done> {
952
+ let sp_raw = sp as usize;
953
+ let base_raw = self.state.stack.as_ptr() as usize;
954
+ if sp_raw < base_raw {
955
+ return self.done_trap::<I>();
956
+ }
957
+ self.set_sp_unchecked(sp);
958
+ ControlFlow::Continue(())
959
+ }
960
+
961
+ /// Same as `set_sp` but does not check to see if `sp` is in-bounds. Should
962
+ /// only be used with stack increment operations such as `pop`.
963
+ fn set_sp_unchecked<T>(&mut self, sp: *mut T) {
964
+ if cfg!(debug_assertions) {
965
+ let sp_raw = sp as usize;
966
+ let base = self.state.stack.as_ptr() as usize;
967
+ let end = base + self.state.stack.len();
968
+ assert!(base <= sp_raw && sp_raw <= end);
969
+ }
970
+ self.state[XReg::sp].set_ptr(sp);
971
+ }
972
+
973
+ unsafe fn load<T>(&self, ptr: XReg, offset: i32) -> T {
974
+ unsafe {
975
+ self.state[ptr]
976
+ .get_ptr::<T>()
977
+ .byte_offset(offset as isize)
978
+ .read_unaligned()
979
+ }
980
+ }
981
+
982
+ unsafe fn store<T>(&self, ptr: XReg, offset: i32, val: T) {
983
+ self.state[ptr]
984
+ .get_ptr::<T>()
985
+ .byte_offset(offset as isize)
986
+ .write_unaligned(val)
987
+ }
988
+
989
+ fn check_xnn_from_fnn<I: Encode>(&mut self, val: f64, lo: f64, hi: f64) -> ControlFlow<Done> {
990
+ if val != val {
991
+ return self.done_trap_kind::<I>(Some(TrapKind::BadConversionToInteger));
992
+ }
993
+ let val = val.wasm_trunc();
994
+ if val <= lo || val >= hi {
995
+ return self.done_trap_kind::<I>(Some(TrapKind::IntegerOverflow));
996
+ }
997
+ ControlFlow::Continue(())
998
+ }
999
+ }
1000
+
1001
+ #[test]
1002
+ fn simple_push_pop() {
1003
+ let mut state = MachineState::with_stack(vec![0; 16]);
1004
+ unsafe {
1005
+ let mut bytecode = [0; 10];
1006
+ let mut i = Interpreter {
1007
+ state: &mut state,
1008
+ // this isn't actually read so just manufacture a dummy one
1009
+ pc: UnsafeBytecodeStream::new(NonNull::new(bytecode.as_mut_ptr().offset(4)).unwrap()),
1010
+ };
1011
+ assert!(i.push::<crate::Ret, _>(0_i32).is_continue());
1012
+ assert_eq!(i.pop::<i32>(), 0_i32);
1013
+ assert!(i.push::<crate::Ret, _>(1_i32).is_continue());
1014
+ assert!(i.push::<crate::Ret, _>(2_i32).is_continue());
1015
+ assert!(i.push::<crate::Ret, _>(3_i32).is_continue());
1016
+ assert!(i.push::<crate::Ret, _>(4_i32).is_continue());
1017
+ assert!(i.push::<crate::Ret, _>(5_i32).is_break());
1018
+ assert!(i.push::<crate::Ret, _>(6_i32).is_break());
1019
+ assert_eq!(i.pop::<i32>(), 4_i32);
1020
+ assert_eq!(i.pop::<i32>(), 3_i32);
1021
+ assert_eq!(i.pop::<i32>(), 2_i32);
1022
+ assert_eq!(i.pop::<i32>(), 1_i32);
1023
+ }
1024
+ }
1025
+
1026
+ macro_rules! br_if_imm {
1027
+ ($(
1028
+ fn $snake:ident(&mut self, a: XReg, b: $imm:ident, offset: PcRelOffset)
1029
+ = $camel:ident / $op:tt / $get:ident;
1030
+ )*) => {$(
1031
+ fn $snake(&mut self, a: XReg, b: $imm, offset: PcRelOffset) -> ControlFlow<Done> {
1032
+ let a = self.state[a].$get();
1033
+ if a $op b.into() {
1034
+ self.pc_rel_jump::<crate::$camel>(offset)
1035
+ } else {
1036
+ ControlFlow::Continue(())
1037
+ }
1038
+ }
1039
+ )*};
1040
+ }
1041
+
1042
+ impl OpVisitor for Interpreter<'_> {
1043
+ type BytecodeStream = UnsafeBytecodeStream;
1044
+ type Return = ControlFlow<Done>;
1045
+
1046
+ fn bytecode(&mut self) -> &mut UnsafeBytecodeStream {
1047
+ &mut self.pc
1048
+ }
1049
+
1050
+ fn ret(&mut self) -> ControlFlow<Done> {
1051
+ let lr = self.state.lr;
1052
+ if lr == HOST_RETURN_ADDR {
1053
+ self.done_return_to_host()
1054
+ } else {
1055
+ self.pc = unsafe { UnsafeBytecodeStream::new(NonNull::new_unchecked(lr)) };
1056
+ ControlFlow::Continue(())
1057
+ }
1058
+ }
1059
+
1060
+ fn call(&mut self, offset: PcRelOffset) -> ControlFlow<Done> {
1061
+ let return_addr = self.pc.as_ptr();
1062
+ self.state.lr = return_addr.as_ptr();
1063
+ self.pc_rel_jump::<crate::Call>(offset);
1064
+ ControlFlow::Continue(())
1065
+ }
1066
+
1067
+ fn call1(&mut self, arg1: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1068
+ let return_addr = self.pc.as_ptr();
1069
+ self.state.lr = return_addr.as_ptr();
1070
+ self.state[XReg::x0] = self.state[arg1];
1071
+ self.pc_rel_jump::<crate::Call1>(offset);
1072
+ ControlFlow::Continue(())
1073
+ }
1074
+
1075
+ fn call2(&mut self, arg1: XReg, arg2: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1076
+ let return_addr = self.pc.as_ptr();
1077
+ self.state.lr = return_addr.as_ptr();
1078
+ let (x0, x1) = (self.state[arg1], self.state[arg2]);
1079
+ self.state[XReg::x0] = x0;
1080
+ self.state[XReg::x1] = x1;
1081
+ self.pc_rel_jump::<crate::Call2>(offset);
1082
+ ControlFlow::Continue(())
1083
+ }
1084
+
1085
+ fn call3(
1086
+ &mut self,
1087
+ arg1: XReg,
1088
+ arg2: XReg,
1089
+ arg3: XReg,
1090
+ offset: PcRelOffset,
1091
+ ) -> ControlFlow<Done> {
1092
+ let return_addr = self.pc.as_ptr();
1093
+ self.state.lr = return_addr.as_ptr();
1094
+ let (x0, x1, x2) = (self.state[arg1], self.state[arg2], self.state[arg3]);
1095
+ self.state[XReg::x0] = x0;
1096
+ self.state[XReg::x1] = x1;
1097
+ self.state[XReg::x2] = x2;
1098
+ self.pc_rel_jump::<crate::Call3>(offset);
1099
+ ControlFlow::Continue(())
1100
+ }
1101
+
1102
+ fn call4(
1103
+ &mut self,
1104
+ arg1: XReg,
1105
+ arg2: XReg,
1106
+ arg3: XReg,
1107
+ arg4: XReg,
1108
+ offset: PcRelOffset,
1109
+ ) -> ControlFlow<Done> {
1110
+ let return_addr = self.pc.as_ptr();
1111
+ self.state.lr = return_addr.as_ptr();
1112
+ let (x0, x1, x2, x3) = (
1113
+ self.state[arg1],
1114
+ self.state[arg2],
1115
+ self.state[arg3],
1116
+ self.state[arg4],
1117
+ );
1118
+ self.state[XReg::x0] = x0;
1119
+ self.state[XReg::x1] = x1;
1120
+ self.state[XReg::x2] = x2;
1121
+ self.state[XReg::x3] = x3;
1122
+ self.pc_rel_jump::<crate::Call4>(offset);
1123
+ ControlFlow::Continue(())
1124
+ }
1125
+
1126
+ fn call_indirect(&mut self, dst: XReg) -> ControlFlow<Done> {
1127
+ let return_addr = self.pc.as_ptr();
1128
+ self.state.lr = return_addr.as_ptr();
1129
+ // SAFETY: part of the unsafe contract of the interpreter is only valid
1130
+ // bytecode is interpreted, so the jump destination is part of the validity
1131
+ // of the bytecode itself.
1132
+ unsafe {
1133
+ self.pc = UnsafeBytecodeStream::new(NonNull::new_unchecked(self.state[dst].get_ptr()));
1134
+ }
1135
+ ControlFlow::Continue(())
1136
+ }
1137
+
1138
+ fn jump(&mut self, offset: PcRelOffset) -> ControlFlow<Done> {
1139
+ self.pc_rel_jump::<crate::Jump>(offset);
1140
+ ControlFlow::Continue(())
1141
+ }
1142
+
1143
+ fn xjump(&mut self, reg: XReg) -> ControlFlow<Done> {
1144
+ unsafe {
1145
+ self.pc = UnsafeBytecodeStream::new(NonNull::new_unchecked(self.state[reg].get_ptr()));
1146
+ }
1147
+ ControlFlow::Continue(())
1148
+ }
1149
+
1150
+ fn br_if32(&mut self, cond: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1151
+ let cond = self.state[cond].get_u32();
1152
+ if cond != 0 {
1153
+ self.pc_rel_jump::<crate::BrIf>(offset)
1154
+ } else {
1155
+ ControlFlow::Continue(())
1156
+ }
1157
+ }
1158
+
1159
+ fn br_if_not32(&mut self, cond: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1160
+ let cond = self.state[cond].get_u32();
1161
+ if cond == 0 {
1162
+ self.pc_rel_jump::<crate::BrIfNot>(offset)
1163
+ } else {
1164
+ ControlFlow::Continue(())
1165
+ }
1166
+ }
1167
+
1168
+ fn br_if_xeq32(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1169
+ let a = self.state[a].get_u32();
1170
+ let b = self.state[b].get_u32();
1171
+ if a == b {
1172
+ self.pc_rel_jump::<crate::BrIfXeq32>(offset)
1173
+ } else {
1174
+ ControlFlow::Continue(())
1175
+ }
1176
+ }
1177
+
1178
+ fn br_if_xneq32(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1179
+ let a = self.state[a].get_u32();
1180
+ let b = self.state[b].get_u32();
1181
+ if a != b {
1182
+ self.pc_rel_jump::<crate::BrIfXneq32>(offset)
1183
+ } else {
1184
+ ControlFlow::Continue(())
1185
+ }
1186
+ }
1187
+
1188
+ fn br_if_xslt32(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1189
+ let a = self.state[a].get_i32();
1190
+ let b = self.state[b].get_i32();
1191
+ if a < b {
1192
+ self.pc_rel_jump::<crate::BrIfXslt32>(offset)
1193
+ } else {
1194
+ ControlFlow::Continue(())
1195
+ }
1196
+ }
1197
+
1198
+ fn br_if_xslteq32(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1199
+ let a = self.state[a].get_i32();
1200
+ let b = self.state[b].get_i32();
1201
+ if a <= b {
1202
+ self.pc_rel_jump::<crate::BrIfXslteq32>(offset)
1203
+ } else {
1204
+ ControlFlow::Continue(())
1205
+ }
1206
+ }
1207
+
1208
+ fn br_if_xult32(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1209
+ let a = self.state[a].get_u32();
1210
+ let b = self.state[b].get_u32();
1211
+ if a < b {
1212
+ self.pc_rel_jump::<crate::BrIfXult32>(offset)
1213
+ } else {
1214
+ ControlFlow::Continue(())
1215
+ }
1216
+ }
1217
+
1218
+ fn br_if_xulteq32(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1219
+ let a = self.state[a].get_u32();
1220
+ let b = self.state[b].get_u32();
1221
+ if a <= b {
1222
+ self.pc_rel_jump::<crate::BrIfXulteq32>(offset)
1223
+ } else {
1224
+ ControlFlow::Continue(())
1225
+ }
1226
+ }
1227
+
1228
+ fn br_if_xeq64(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1229
+ let a = self.state[a].get_u64();
1230
+ let b = self.state[b].get_u64();
1231
+ if a == b {
1232
+ self.pc_rel_jump::<crate::BrIfXeq64>(offset)
1233
+ } else {
1234
+ ControlFlow::Continue(())
1235
+ }
1236
+ }
1237
+
1238
+ fn br_if_xneq64(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1239
+ let a = self.state[a].get_u64();
1240
+ let b = self.state[b].get_u64();
1241
+ if a != b {
1242
+ self.pc_rel_jump::<crate::BrIfXneq64>(offset)
1243
+ } else {
1244
+ ControlFlow::Continue(())
1245
+ }
1246
+ }
1247
+
1248
+ fn br_if_xslt64(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1249
+ let a = self.state[a].get_i64();
1250
+ let b = self.state[b].get_i64();
1251
+ if a < b {
1252
+ self.pc_rel_jump::<crate::BrIfXslt64>(offset)
1253
+ } else {
1254
+ ControlFlow::Continue(())
1255
+ }
1256
+ }
1257
+
1258
+ fn br_if_xslteq64(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1259
+ let a = self.state[a].get_i64();
1260
+ let b = self.state[b].get_i64();
1261
+ if a <= b {
1262
+ self.pc_rel_jump::<crate::BrIfXslteq64>(offset)
1263
+ } else {
1264
+ ControlFlow::Continue(())
1265
+ }
1266
+ }
1267
+
1268
+ fn br_if_xult64(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1269
+ let a = self.state[a].get_u64();
1270
+ let b = self.state[b].get_u64();
1271
+ if a < b {
1272
+ self.pc_rel_jump::<crate::BrIfXult64>(offset)
1273
+ } else {
1274
+ ControlFlow::Continue(())
1275
+ }
1276
+ }
1277
+
1278
+ fn br_if_xulteq64(&mut self, a: XReg, b: XReg, offset: PcRelOffset) -> ControlFlow<Done> {
1279
+ let a = self.state[a].get_u64();
1280
+ let b = self.state[b].get_u64();
1281
+ if a <= b {
1282
+ self.pc_rel_jump::<crate::BrIfXulteq64>(offset)
1283
+ } else {
1284
+ ControlFlow::Continue(())
1285
+ }
1286
+ }
1287
+
1288
+ br_if_imm! {
1289
+ fn br_if_xeq32_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1290
+ = BrIfXeq32I8 / == / get_i32;
1291
+ fn br_if_xeq32_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1292
+ = BrIfXeq32I32 / == / get_i32;
1293
+ fn br_if_xneq32_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1294
+ = BrIfXneq32I8 / != / get_i32;
1295
+ fn br_if_xneq32_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1296
+ = BrIfXneq32I32 / != / get_i32;
1297
+
1298
+ fn br_if_xslt32_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1299
+ = BrIfXslt32I8 / < / get_i32;
1300
+ fn br_if_xslt32_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1301
+ = BrIfXslt32I32 / < / get_i32;
1302
+ fn br_if_xsgt32_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1303
+ = BrIfXsgt32I8 / > / get_i32;
1304
+ fn br_if_xsgt32_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1305
+ = BrIfXsgt32I32 / > / get_i32;
1306
+ fn br_if_xslteq32_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1307
+ = BrIfXslteq32I8 / <= / get_i32;
1308
+ fn br_if_xslteq32_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1309
+ = BrIfXslteq32I32 / <= / get_i32;
1310
+ fn br_if_xsgteq32_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1311
+ = BrIfXsgteq32I8 / >= / get_i32;
1312
+ fn br_if_xsgteq32_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1313
+ = BrIfXsgteq32I32 / >= / get_i32;
1314
+
1315
+ fn br_if_xult32_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1316
+ = BrIfXult32U8 / < / get_u32;
1317
+ fn br_if_xult32_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1318
+ = BrIfXult32U32 / < / get_u32;
1319
+ fn br_if_xugt32_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1320
+ = BrIfXugt32U8 / > / get_u32;
1321
+ fn br_if_xugt32_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1322
+ = BrIfXugt32U32 / > / get_u32;
1323
+ fn br_if_xulteq32_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1324
+ = BrIfXulteq32U8 / <= / get_u32;
1325
+ fn br_if_xulteq32_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1326
+ = BrIfXulteq32U32 / <= / get_u32;
1327
+ fn br_if_xugteq32_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1328
+ = BrIfXugteq32U8 / >= / get_u32;
1329
+ fn br_if_xugteq32_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1330
+ = BrIfXugteq32U32 / >= / get_u32;
1331
+
1332
+ fn br_if_xeq64_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1333
+ = BrIfXeq64I8 / == / get_i64;
1334
+ fn br_if_xeq64_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1335
+ = BrIfXeq64I32 / == / get_i64;
1336
+ fn br_if_xneq64_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1337
+ = BrIfXneq64I8 / != / get_i64;
1338
+ fn br_if_xneq64_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1339
+ = BrIfXneq64I32 / != / get_i64;
1340
+
1341
+ fn br_if_xslt64_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1342
+ = BrIfXslt64I8 / < / get_i64;
1343
+ fn br_if_xslt64_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1344
+ = BrIfXslt64I32 / < / get_i64;
1345
+ fn br_if_xsgt64_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1346
+ = BrIfXsgt64I8 / > / get_i64;
1347
+ fn br_if_xsgt64_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1348
+ = BrIfXsgt64I32 / > / get_i64;
1349
+ fn br_if_xslteq64_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1350
+ = BrIfXslteq64I8 / <= / get_i64;
1351
+ fn br_if_xslteq64_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1352
+ = BrIfXslteq64I32 / <= / get_i64;
1353
+ fn br_if_xsgteq64_i8(&mut self, a: XReg, b: i8, offset: PcRelOffset)
1354
+ = BrIfXsgteq64I8 / >= / get_i64;
1355
+ fn br_if_xsgteq64_i32(&mut self, a: XReg, b: i32, offset: PcRelOffset)
1356
+ = BrIfXsgteq64I32 / >= / get_i64;
1357
+
1358
+ fn br_if_xult64_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1359
+ = BrIfXult64U8 / < / get_u64;
1360
+ fn br_if_xult64_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1361
+ = BrIfXult64U32 / < / get_u64;
1362
+ fn br_if_xugt64_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1363
+ = BrIfXugt64U8 / > / get_u64;
1364
+ fn br_if_xugt64_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1365
+ = BrIfXugt64U32 / > / get_u64;
1366
+ fn br_if_xulteq64_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1367
+ = BrIfXulteq64U8 / <= / get_u64;
1368
+ fn br_if_xulteq64_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1369
+ = BrIfXulteq64U32 / <= / get_u64;
1370
+ fn br_if_xugteq64_u8(&mut self, a: XReg, b: u8, offset: PcRelOffset)
1371
+ = BrIfXugteq64U8 / >= / get_u64;
1372
+ fn br_if_xugteq64_u32(&mut self, a: XReg, b: u32, offset: PcRelOffset)
1373
+ = BrIfXugteq64U32 / >= / get_u64;
1374
+ }
1375
+
1376
+ fn xmov(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1377
+ let val = self.state[src];
1378
+ self.state[dst] = val;
1379
+ ControlFlow::Continue(())
1380
+ }
1381
+
1382
+ fn xconst8(&mut self, dst: XReg, imm: i8) -> ControlFlow<Done> {
1383
+ self.state[dst].set_i64(i64::from(imm));
1384
+ ControlFlow::Continue(())
1385
+ }
1386
+
1387
+ fn xconst16(&mut self, dst: XReg, imm: i16) -> ControlFlow<Done> {
1388
+ self.state[dst].set_i64(i64::from(imm));
1389
+ ControlFlow::Continue(())
1390
+ }
1391
+
1392
+ fn xconst32(&mut self, dst: XReg, imm: i32) -> ControlFlow<Done> {
1393
+ self.state[dst].set_i64(i64::from(imm));
1394
+ ControlFlow::Continue(())
1395
+ }
1396
+
1397
+ fn xconst64(&mut self, dst: XReg, imm: i64) -> ControlFlow<Done> {
1398
+ self.state[dst].set_i64(imm);
1399
+ ControlFlow::Continue(())
1400
+ }
1401
+
1402
+ fn xadd32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1403
+ let a = self.state[operands.src1].get_u32();
1404
+ let b = self.state[operands.src2].get_u32();
1405
+ self.state[operands.dst].set_u32(a.wrapping_add(b));
1406
+ ControlFlow::Continue(())
1407
+ }
1408
+
1409
+ fn xadd32_u8(&mut self, dst: XReg, src1: XReg, src2: u8) -> ControlFlow<Done> {
1410
+ self.xadd32_u32(dst, src1, src2.into())
1411
+ }
1412
+
1413
+ fn xadd32_u32(&mut self, dst: XReg, src1: XReg, src2: u32) -> ControlFlow<Done> {
1414
+ let a = self.state[src1].get_u32();
1415
+ self.state[dst].set_u32(a.wrapping_add(src2.into()));
1416
+ ControlFlow::Continue(())
1417
+ }
1418
+
1419
+ fn xadd64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1420
+ let a = self.state[operands.src1].get_u64();
1421
+ let b = self.state[operands.src2].get_u64();
1422
+ self.state[operands.dst].set_u64(a.wrapping_add(b));
1423
+ ControlFlow::Continue(())
1424
+ }
1425
+
1426
+ fn xadd64_u8(&mut self, dst: XReg, src1: XReg, src2: u8) -> ControlFlow<Done> {
1427
+ self.xadd64_u32(dst, src1, src2.into())
1428
+ }
1429
+
1430
+ fn xadd64_u32(&mut self, dst: XReg, src1: XReg, src2: u32) -> ControlFlow<Done> {
1431
+ let a = self.state[src1].get_u64();
1432
+ self.state[dst].set_u64(a.wrapping_add(src2.into()));
1433
+ ControlFlow::Continue(())
1434
+ }
1435
+
1436
+ fn xsub32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1437
+ let a = self.state[operands.src1].get_u32();
1438
+ let b = self.state[operands.src2].get_u32();
1439
+ self.state[operands.dst].set_u32(a.wrapping_sub(b));
1440
+ ControlFlow::Continue(())
1441
+ }
1442
+
1443
+ fn xsub32_u8(&mut self, dst: XReg, src1: XReg, src2: u8) -> ControlFlow<Done> {
1444
+ self.xsub32_u32(dst, src1, src2.into())
1445
+ }
1446
+
1447
+ fn xsub32_u32(&mut self, dst: XReg, src1: XReg, src2: u32) -> ControlFlow<Done> {
1448
+ let a = self.state[src1].get_u32();
1449
+ self.state[dst].set_u32(a.wrapping_sub(src2.into()));
1450
+ ControlFlow::Continue(())
1451
+ }
1452
+
1453
+ fn xsub64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1454
+ let a = self.state[operands.src1].get_u64();
1455
+ let b = self.state[operands.src2].get_u64();
1456
+ self.state[operands.dst].set_u64(a.wrapping_sub(b));
1457
+ ControlFlow::Continue(())
1458
+ }
1459
+
1460
+ fn xsub64_u8(&mut self, dst: XReg, src1: XReg, src2: u8) -> ControlFlow<Done> {
1461
+ self.xsub64_u32(dst, src1, src2.into())
1462
+ }
1463
+
1464
+ fn xsub64_u32(&mut self, dst: XReg, src1: XReg, src2: u32) -> ControlFlow<Done> {
1465
+ let a = self.state[src1].get_u64();
1466
+ self.state[dst].set_u64(a.wrapping_sub(src2.into()));
1467
+ ControlFlow::Continue(())
1468
+ }
1469
+
1470
+ fn xmul32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1471
+ let a = self.state[operands.src1].get_u32();
1472
+ let b = self.state[operands.src2].get_u32();
1473
+ self.state[operands.dst].set_u32(a.wrapping_mul(b));
1474
+ ControlFlow::Continue(())
1475
+ }
1476
+
1477
+ fn xmul32_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
1478
+ self.xmul32_s32(dst, src1, src2.into())
1479
+ }
1480
+
1481
+ fn xmul32_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
1482
+ let a = self.state[src1].get_i32();
1483
+ self.state[dst].set_i32(a.wrapping_mul(src2));
1484
+ ControlFlow::Continue(())
1485
+ }
1486
+
1487
+ fn xmul64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1488
+ let a = self.state[operands.src1].get_u64();
1489
+ let b = self.state[operands.src2].get_u64();
1490
+ self.state[operands.dst].set_u64(a.wrapping_mul(b));
1491
+ ControlFlow::Continue(())
1492
+ }
1493
+
1494
+ fn xmul64_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
1495
+ self.xmul64_s32(dst, src1, src2.into())
1496
+ }
1497
+
1498
+ fn xmul64_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
1499
+ let a = self.state[src1].get_i64();
1500
+ self.state[dst].set_i64(a.wrapping_mul(src2.into()));
1501
+ ControlFlow::Continue(())
1502
+ }
1503
+
1504
+ fn xshl32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1505
+ let a = self.state[operands.src1].get_u32();
1506
+ let b = self.state[operands.src2].get_u32();
1507
+ self.state[operands.dst].set_u32(a.wrapping_shl(b));
1508
+ ControlFlow::Continue(())
1509
+ }
1510
+
1511
+ fn xshr32_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1512
+ let a = self.state[operands.src1].get_u32();
1513
+ let b = self.state[operands.src2].get_u32();
1514
+ self.state[operands.dst].set_u32(a.wrapping_shr(b));
1515
+ ControlFlow::Continue(())
1516
+ }
1517
+
1518
+ fn xshr32_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1519
+ let a = self.state[operands.src1].get_i32();
1520
+ let b = self.state[operands.src2].get_u32();
1521
+ self.state[operands.dst].set_i32(a.wrapping_shr(b));
1522
+ ControlFlow::Continue(())
1523
+ }
1524
+
1525
+ fn xshl64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1526
+ let a = self.state[operands.src1].get_u64();
1527
+ let b = self.state[operands.src2].get_u32();
1528
+ self.state[operands.dst].set_u64(a.wrapping_shl(b));
1529
+ ControlFlow::Continue(())
1530
+ }
1531
+
1532
+ fn xshr64_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1533
+ let a = self.state[operands.src1].get_u64();
1534
+ let b = self.state[operands.src2].get_u32();
1535
+ self.state[operands.dst].set_u64(a.wrapping_shr(b));
1536
+ ControlFlow::Continue(())
1537
+ }
1538
+
1539
+ fn xshr64_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1540
+ let a = self.state[operands.src1].get_i64();
1541
+ let b = self.state[operands.src2].get_u32();
1542
+ self.state[operands.dst].set_i64(a.wrapping_shr(b));
1543
+ ControlFlow::Continue(())
1544
+ }
1545
+
1546
+ fn xshl32_u6(&mut self, operands: BinaryOperands<XReg, XReg, U6>) -> ControlFlow<Done> {
1547
+ let a = self.state[operands.src1].get_u32();
1548
+ let b = u32::from(u8::from(operands.src2));
1549
+ self.state[operands.dst].set_u32(a.wrapping_shl(b));
1550
+ ControlFlow::Continue(())
1551
+ }
1552
+
1553
+ fn xshr32_u_u6(&mut self, operands: BinaryOperands<XReg, XReg, U6>) -> ControlFlow<Done> {
1554
+ let a = self.state[operands.src1].get_u32();
1555
+ let b = u32::from(u8::from(operands.src2));
1556
+ self.state[operands.dst].set_u32(a.wrapping_shr(b));
1557
+ ControlFlow::Continue(())
1558
+ }
1559
+
1560
+ fn xshr32_s_u6(&mut self, operands: BinaryOperands<XReg, XReg, U6>) -> ControlFlow<Done> {
1561
+ let a = self.state[operands.src1].get_i32();
1562
+ let b = u32::from(u8::from(operands.src2));
1563
+ self.state[operands.dst].set_i32(a.wrapping_shr(b));
1564
+ ControlFlow::Continue(())
1565
+ }
1566
+
1567
+ fn xshl64_u6(&mut self, operands: BinaryOperands<XReg, XReg, U6>) -> ControlFlow<Done> {
1568
+ let a = self.state[operands.src1].get_u64();
1569
+ let b = u32::from(u8::from(operands.src2));
1570
+ self.state[operands.dst].set_u64(a.wrapping_shl(b));
1571
+ ControlFlow::Continue(())
1572
+ }
1573
+
1574
+ fn xshr64_u_u6(&mut self, operands: BinaryOperands<XReg, XReg, U6>) -> ControlFlow<Done> {
1575
+ let a = self.state[operands.src1].get_u64();
1576
+ let b = u32::from(u8::from(operands.src2));
1577
+ self.state[operands.dst].set_u64(a.wrapping_shr(b));
1578
+ ControlFlow::Continue(())
1579
+ }
1580
+
1581
+ fn xshr64_s_u6(&mut self, operands: BinaryOperands<XReg, XReg, U6>) -> ControlFlow<Done> {
1582
+ let a = self.state[operands.src1].get_i64();
1583
+ let b = u32::from(u8::from(operands.src2));
1584
+ self.state[operands.dst].set_i64(a.wrapping_shr(b));
1585
+ ControlFlow::Continue(())
1586
+ }
1587
+
1588
+ fn xneg32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1589
+ let a = self.state[src].get_i32();
1590
+ self.state[dst].set_i32(a.wrapping_neg());
1591
+ ControlFlow::Continue(())
1592
+ }
1593
+
1594
+ fn xneg64(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1595
+ let a = self.state[src].get_i64();
1596
+ self.state[dst].set_i64(a.wrapping_neg());
1597
+ ControlFlow::Continue(())
1598
+ }
1599
+
1600
+ fn xeq64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1601
+ let a = self.state[operands.src1].get_u64();
1602
+ let b = self.state[operands.src2].get_u64();
1603
+ self.state[operands.dst].set_u32(u32::from(a == b));
1604
+ ControlFlow::Continue(())
1605
+ }
1606
+
1607
+ fn xneq64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1608
+ let a = self.state[operands.src1].get_u64();
1609
+ let b = self.state[operands.src2].get_u64();
1610
+ self.state[operands.dst].set_u32(u32::from(a != b));
1611
+ ControlFlow::Continue(())
1612
+ }
1613
+
1614
+ fn xslt64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1615
+ let a = self.state[operands.src1].get_i64();
1616
+ let b = self.state[operands.src2].get_i64();
1617
+ self.state[operands.dst].set_u32(u32::from(a < b));
1618
+ ControlFlow::Continue(())
1619
+ }
1620
+
1621
+ fn xslteq64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1622
+ let a = self.state[operands.src1].get_i64();
1623
+ let b = self.state[operands.src2].get_i64();
1624
+ self.state[operands.dst].set_u32(u32::from(a <= b));
1625
+ ControlFlow::Continue(())
1626
+ }
1627
+
1628
+ fn xult64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1629
+ let a = self.state[operands.src1].get_u64();
1630
+ let b = self.state[operands.src2].get_u64();
1631
+ self.state[operands.dst].set_u32(u32::from(a < b));
1632
+ ControlFlow::Continue(())
1633
+ }
1634
+
1635
+ fn xulteq64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1636
+ let a = self.state[operands.src1].get_u64();
1637
+ let b = self.state[operands.src2].get_u64();
1638
+ self.state[operands.dst].set_u32(u32::from(a <= b));
1639
+ ControlFlow::Continue(())
1640
+ }
1641
+
1642
+ fn xeq32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1643
+ let a = self.state[operands.src1].get_u32();
1644
+ let b = self.state[operands.src2].get_u32();
1645
+ self.state[operands.dst].set_u32(u32::from(a == b));
1646
+ ControlFlow::Continue(())
1647
+ }
1648
+
1649
+ fn xneq32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1650
+ let a = self.state[operands.src1].get_u32();
1651
+ let b = self.state[operands.src2].get_u32();
1652
+ self.state[operands.dst].set_u32(u32::from(a != b));
1653
+ ControlFlow::Continue(())
1654
+ }
1655
+
1656
+ fn xslt32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1657
+ let a = self.state[operands.src1].get_i32();
1658
+ let b = self.state[operands.src2].get_i32();
1659
+ self.state[operands.dst].set_u32(u32::from(a < b));
1660
+ ControlFlow::Continue(())
1661
+ }
1662
+
1663
+ fn xslteq32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1664
+ let a = self.state[operands.src1].get_i32();
1665
+ let b = self.state[operands.src2].get_i32();
1666
+ self.state[operands.dst].set_u32(u32::from(a <= b));
1667
+ ControlFlow::Continue(())
1668
+ }
1669
+
1670
+ fn xult32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1671
+ let a = self.state[operands.src1].get_u32();
1672
+ let b = self.state[operands.src2].get_u32();
1673
+ self.state[operands.dst].set_u32(u32::from(a < b));
1674
+ ControlFlow::Continue(())
1675
+ }
1676
+
1677
+ fn xulteq32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1678
+ let a = self.state[operands.src1].get_u32();
1679
+ let b = self.state[operands.src2].get_u32();
1680
+ self.state[operands.dst].set_u32(u32::from(a <= b));
1681
+ ControlFlow::Continue(())
1682
+ }
1683
+
1684
+ fn xload8_u32_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1685
+ self.xload8_u32_offset32(dst, ptr, offset.into())
1686
+ }
1687
+
1688
+ fn xload8_s32_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1689
+ self.xload8_s32_offset32(dst, ptr, offset.into())
1690
+ }
1691
+
1692
+ fn xload16le_u32_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1693
+ self.xload16le_u32_offset32(dst, ptr, offset.into())
1694
+ }
1695
+
1696
+ fn xload16le_s32_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1697
+ self.xload16le_s32_offset32(dst, ptr, offset.into())
1698
+ }
1699
+
1700
+ fn xload32le_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1701
+ self.xload32le_offset32(dst, ptr, offset.into())
1702
+ }
1703
+
1704
+ fn xload8_u64_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1705
+ self.xload8_u64_offset32(dst, ptr, offset.into())
1706
+ }
1707
+
1708
+ fn xload8_s64_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1709
+ self.xload8_s64_offset32(dst, ptr, offset.into())
1710
+ }
1711
+
1712
+ fn xload16le_u64_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1713
+ self.xload16le_u64_offset32(dst, ptr, offset.into())
1714
+ }
1715
+
1716
+ fn xload16le_s64_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1717
+ self.xload16le_s64_offset32(dst, ptr, offset.into())
1718
+ }
1719
+
1720
+ fn xload32le_u64_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1721
+ self.xload32le_u64_offset32(dst, ptr, offset.into())
1722
+ }
1723
+
1724
+ fn xload32le_s64_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1725
+ self.xload32le_s64_offset32(dst, ptr, offset.into())
1726
+ }
1727
+
1728
+ fn xload64le_offset8(&mut self, dst: XReg, ptr: XReg, offset: u8) -> ControlFlow<Done> {
1729
+ self.xload64le_offset32(dst, ptr, offset.into())
1730
+ }
1731
+
1732
+ fn xstore8_offset8(&mut self, ptr: XReg, offset: u8, src: XReg) -> ControlFlow<Done> {
1733
+ self.xstore8_offset32(ptr, offset.into(), src)
1734
+ }
1735
+
1736
+ fn xstore16le_offset8(&mut self, ptr: XReg, offset: u8, src: XReg) -> ControlFlow<Done> {
1737
+ self.xstore16le_offset32(ptr, offset.into(), src)
1738
+ }
1739
+
1740
+ fn xstore32le_offset8(&mut self, ptr: XReg, offset: u8, src: XReg) -> ControlFlow<Done> {
1741
+ self.xstore32le_offset32(ptr, offset.into(), src)
1742
+ }
1743
+
1744
+ fn xstore64le_offset8(&mut self, ptr: XReg, offset: u8, src: XReg) -> ControlFlow<Done> {
1745
+ self.xstore64le_offset32(ptr, offset.into(), src)
1746
+ }
1747
+
1748
+ fn xload8_u32_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1749
+ let val = unsafe { self.load::<u8>(ptr, offset) };
1750
+ self.state[dst].set_u32(val.into());
1751
+ ControlFlow::Continue(())
1752
+ }
1753
+
1754
+ fn xload8_s32_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1755
+ let val = unsafe { self.load::<i8>(ptr, offset) };
1756
+ self.state[dst].set_i32(val.into());
1757
+ ControlFlow::Continue(())
1758
+ }
1759
+
1760
+ fn xload16le_u32_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1761
+ let val = unsafe { self.load::<u16>(ptr, offset) };
1762
+ self.state[dst].set_u32(u16::from_le(val).into());
1763
+ ControlFlow::Continue(())
1764
+ }
1765
+
1766
+ fn xload16le_s32_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1767
+ let val = unsafe { self.load::<i16>(ptr, offset) };
1768
+ self.state[dst].set_i32(i16::from_le(val).into());
1769
+ ControlFlow::Continue(())
1770
+ }
1771
+
1772
+ fn xload32le_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1773
+ let val = unsafe { self.load::<i32>(ptr, offset) };
1774
+ self.state[dst].set_i32(i32::from_le(val));
1775
+ ControlFlow::Continue(())
1776
+ }
1777
+
1778
+ fn xload8_u64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1779
+ let val = unsafe { self.load::<u8>(ptr, offset) };
1780
+ self.state[dst].set_u64(val.into());
1781
+ ControlFlow::Continue(())
1782
+ }
1783
+
1784
+ fn xload8_s64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1785
+ let val = unsafe { self.load::<i8>(ptr, offset) };
1786
+ self.state[dst].set_i64(val.into());
1787
+ ControlFlow::Continue(())
1788
+ }
1789
+
1790
+ fn xload16le_u64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1791
+ let val = unsafe { self.load::<u16>(ptr, offset) };
1792
+ self.state[dst].set_u64(u16::from_le(val).into());
1793
+ ControlFlow::Continue(())
1794
+ }
1795
+
1796
+ fn xload16le_s64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1797
+ let val = unsafe { self.load::<i16>(ptr, offset) };
1798
+ self.state[dst].set_i64(i16::from_le(val).into());
1799
+ ControlFlow::Continue(())
1800
+ }
1801
+
1802
+ fn xload32le_u64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1803
+ let val = unsafe { self.load::<u32>(ptr, offset) };
1804
+ self.state[dst].set_u64(u32::from_le(val).into());
1805
+ ControlFlow::Continue(())
1806
+ }
1807
+
1808
+ fn xload32le_s64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1809
+ let val = unsafe { self.load::<i32>(ptr, offset) };
1810
+ self.state[dst].set_i64(i32::from_le(val).into());
1811
+ ControlFlow::Continue(())
1812
+ }
1813
+
1814
+ fn xload64le_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
1815
+ let val = unsafe { self.load::<i64>(ptr, offset) };
1816
+ self.state[dst].set_i64(i64::from_le(val));
1817
+ ControlFlow::Continue(())
1818
+ }
1819
+
1820
+ fn xstore8_offset32(&mut self, ptr: XReg, offset: i32, src: XReg) -> ControlFlow<Done> {
1821
+ let val = self.state[src].get_u32() as u8;
1822
+ unsafe {
1823
+ self.store(ptr, offset, val);
1824
+ }
1825
+ ControlFlow::Continue(())
1826
+ }
1827
+
1828
+ fn xstore16le_offset32(&mut self, ptr: XReg, offset: i32, src: XReg) -> ControlFlow<Done> {
1829
+ let val = self.state[src].get_u32() as u16;
1830
+ unsafe {
1831
+ self.store(ptr, offset, val.to_le());
1832
+ }
1833
+ ControlFlow::Continue(())
1834
+ }
1835
+
1836
+ fn xstore32le_offset32(&mut self, ptr: XReg, offset: i32, src: XReg) -> ControlFlow<Done> {
1837
+ let val = self.state[src].get_u32();
1838
+ unsafe {
1839
+ self.store(ptr, offset, val.to_le());
1840
+ }
1841
+ ControlFlow::Continue(())
1842
+ }
1843
+
1844
+ fn xstore64le_offset32(&mut self, ptr: XReg, offset: i32, src: XReg) -> ControlFlow<Done> {
1845
+ let val = self.state[src].get_u64();
1846
+ unsafe {
1847
+ self.store(ptr, offset, val.to_le());
1848
+ }
1849
+ ControlFlow::Continue(())
1850
+ }
1851
+
1852
+ fn push_frame(&mut self) -> ControlFlow<Done> {
1853
+ self.push::<crate::PushFrame, _>(self.state.lr)?;
1854
+ self.push::<crate::PushFrame, _>(self.state.fp)?;
1855
+ self.state.fp = self.state[XReg::sp].get_ptr();
1856
+ ControlFlow::Continue(())
1857
+ }
1858
+
1859
+ #[inline]
1860
+ fn push_frame_save(&mut self, amt: u32, regs: RegSet<XReg>) -> ControlFlow<Done> {
1861
+ // Decrement the stack pointer `amt` bytes plus 2 pointers more for
1862
+ // fp/lr.
1863
+ let ptr_size = size_of::<usize>();
1864
+ let full_amt = usize::try_from(amt).unwrap() + 2 * ptr_size;
1865
+ let new_sp = self.state[XReg::sp].get_ptr::<u8>().wrapping_sub(full_amt);
1866
+ self.set_sp::<crate::PushFrameSave>(new_sp)?;
1867
+
1868
+ unsafe {
1869
+ // Emulate `push_frame` by placing `lr` and `fp` onto the stack, in
1870
+ // that order, at the top of the allocated area.
1871
+ self.store(XReg::sp, (full_amt - 1 * ptr_size) as i32, self.state.lr);
1872
+ self.store(XReg::sp, (full_amt - 2 * ptr_size) as i32, self.state.fp);
1873
+
1874
+ // Set `fp` to the top of our frame, where `fp` is stored.
1875
+ let mut offset = amt as i32;
1876
+ self.state.fp = self.state[XReg::sp]
1877
+ .get_ptr::<u8>()
1878
+ .byte_offset(offset as isize);
1879
+
1880
+ // Next save any registers in `regs` to the stack.
1881
+ for reg in regs {
1882
+ offset -= 8;
1883
+ self.store(XReg::sp, offset, self.state[reg].get_u64());
1884
+ }
1885
+ }
1886
+ ControlFlow::Continue(())
1887
+ }
1888
+
1889
+ fn pop_frame_restore(&mut self, amt: u32, regs: RegSet<XReg>) -> ControlFlow<Done> {
1890
+ // Restore all registers in `regs`, followed by the normal `pop_frame`
1891
+ // opcode below to restore fp/lr.
1892
+ unsafe {
1893
+ let mut offset = amt as i32;
1894
+ for reg in regs {
1895
+ offset -= 8;
1896
+ let val = self.load(XReg::sp, offset);
1897
+ self.state[reg].set_u64(val);
1898
+ }
1899
+ }
1900
+ self.pop_frame()
1901
+ }
1902
+
1903
+ fn pop_frame(&mut self) -> ControlFlow<Done> {
1904
+ self.set_sp_unchecked(self.state.fp);
1905
+ let fp = self.pop();
1906
+ let lr = self.pop();
1907
+ self.state.fp = fp;
1908
+ self.state.lr = lr;
1909
+ ControlFlow::Continue(())
1910
+ }
1911
+
1912
+ fn br_table32(&mut self, idx: XReg, amt: u32) -> ControlFlow<Done> {
1913
+ let idx = self.state[idx].get_u32().min(amt - 1) as isize;
1914
+ // SAFETY: part of the contract of the interpreter is only dealing with
1915
+ // valid bytecode, so this offset should be safe.
1916
+ self.pc = unsafe { self.pc.offset(idx * 4) };
1917
+
1918
+ // Decode the `PcRelOffset` without tampering with `self.pc` as the
1919
+ // jump is relative to `self.pc`.
1920
+ let mut tmp = self.pc;
1921
+ let rel = unwrap_uninhabited(PcRelOffset::decode(&mut tmp));
1922
+ let offset = isize::try_from(i32::from(rel)).unwrap();
1923
+ self.pc = unsafe { self.pc.offset(offset) };
1924
+ ControlFlow::Continue(())
1925
+ }
1926
+
1927
+ fn stack_alloc32(&mut self, amt: u32) -> ControlFlow<Done> {
1928
+ let amt = usize::try_from(amt).unwrap();
1929
+ let new_sp = self.state[XReg::sp].get_ptr::<u8>().wrapping_sub(amt);
1930
+ self.set_sp::<crate::StackAlloc32>(new_sp)?;
1931
+ ControlFlow::Continue(())
1932
+ }
1933
+
1934
+ fn stack_free32(&mut self, amt: u32) -> ControlFlow<Done> {
1935
+ let amt = usize::try_from(amt).unwrap();
1936
+ let new_sp = self.state[XReg::sp].get_ptr::<u8>().wrapping_add(amt);
1937
+ self.set_sp_unchecked(new_sp);
1938
+ ControlFlow::Continue(())
1939
+ }
1940
+
1941
+ fn zext8(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1942
+ let src = self.state[src].get_u64() as u8;
1943
+ self.state[dst].set_u64(src.into());
1944
+ ControlFlow::Continue(())
1945
+ }
1946
+
1947
+ fn zext16(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1948
+ let src = self.state[src].get_u64() as u16;
1949
+ self.state[dst].set_u64(src.into());
1950
+ ControlFlow::Continue(())
1951
+ }
1952
+
1953
+ fn zext32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1954
+ let src = self.state[src].get_u64() as u32;
1955
+ self.state[dst].set_u64(src.into());
1956
+ ControlFlow::Continue(())
1957
+ }
1958
+
1959
+ fn sext8(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1960
+ let src = self.state[src].get_i64() as i8;
1961
+ self.state[dst].set_i64(src.into());
1962
+ ControlFlow::Continue(())
1963
+ }
1964
+
1965
+ fn sext16(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1966
+ let src = self.state[src].get_i64() as i16;
1967
+ self.state[dst].set_i64(src.into());
1968
+ ControlFlow::Continue(())
1969
+ }
1970
+
1971
+ fn sext32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
1972
+ let src = self.state[src].get_i64() as i32;
1973
+ self.state[dst].set_i64(src.into());
1974
+ ControlFlow::Continue(())
1975
+ }
1976
+
1977
+ fn xdiv32_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1978
+ let a = self.state[operands.src1].get_i32();
1979
+ let b = self.state[operands.src2].get_i32();
1980
+ match a.checked_div(b) {
1981
+ Some(result) => {
1982
+ self.state[operands.dst].set_i32(result);
1983
+ ControlFlow::Continue(())
1984
+ }
1985
+ None => {
1986
+ let kind = if b == 0 {
1987
+ TrapKind::DivideByZero
1988
+ } else {
1989
+ TrapKind::IntegerOverflow
1990
+ };
1991
+ self.done_trap_kind::<crate::XDiv32S>(Some(kind))
1992
+ }
1993
+ }
1994
+ }
1995
+
1996
+ fn xdiv64_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
1997
+ let a = self.state[operands.src1].get_i64();
1998
+ let b = self.state[operands.src2].get_i64();
1999
+ match a.checked_div(b) {
2000
+ Some(result) => {
2001
+ self.state[operands.dst].set_i64(result);
2002
+ ControlFlow::Continue(())
2003
+ }
2004
+ None => {
2005
+ let kind = if b == 0 {
2006
+ TrapKind::DivideByZero
2007
+ } else {
2008
+ TrapKind::IntegerOverflow
2009
+ };
2010
+ self.done_trap_kind::<crate::XDiv64S>(Some(kind))
2011
+ }
2012
+ }
2013
+ }
2014
+
2015
+ fn xdiv32_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2016
+ let a = self.state[operands.src1].get_u32();
2017
+ let b = self.state[operands.src2].get_u32();
2018
+ match a.checked_div(b) {
2019
+ Some(result) => {
2020
+ self.state[operands.dst].set_u32(result);
2021
+ ControlFlow::Continue(())
2022
+ }
2023
+ None => self.done_trap_kind::<crate::XDiv64U>(Some(TrapKind::DivideByZero)),
2024
+ }
2025
+ }
2026
+
2027
+ fn xdiv64_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2028
+ let a = self.state[operands.src1].get_u64();
2029
+ let b = self.state[operands.src2].get_u64();
2030
+ match a.checked_div(b) {
2031
+ Some(result) => {
2032
+ self.state[operands.dst].set_u64(result);
2033
+ ControlFlow::Continue(())
2034
+ }
2035
+ None => self.done_trap_kind::<crate::XDiv64U>(Some(TrapKind::DivideByZero)),
2036
+ }
2037
+ }
2038
+
2039
+ fn xrem32_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2040
+ let a = self.state[operands.src1].get_i32();
2041
+ let b = self.state[operands.src2].get_i32();
2042
+ let result = if a == i32::MIN && b == -1 {
2043
+ Some(0)
2044
+ } else {
2045
+ a.checked_rem(b)
2046
+ };
2047
+ match result {
2048
+ Some(result) => {
2049
+ self.state[operands.dst].set_i32(result);
2050
+ ControlFlow::Continue(())
2051
+ }
2052
+ None => self.done_trap_kind::<crate::XRem32S>(Some(TrapKind::DivideByZero)),
2053
+ }
2054
+ }
2055
+
2056
+ fn xrem64_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2057
+ let a = self.state[operands.src1].get_i64();
2058
+ let b = self.state[operands.src2].get_i64();
2059
+ let result = if a == i64::MIN && b == -1 {
2060
+ Some(0)
2061
+ } else {
2062
+ a.checked_rem(b)
2063
+ };
2064
+ match result {
2065
+ Some(result) => {
2066
+ self.state[operands.dst].set_i64(result);
2067
+ ControlFlow::Continue(())
2068
+ }
2069
+ None => self.done_trap_kind::<crate::XRem64S>(Some(TrapKind::DivideByZero)),
2070
+ }
2071
+ }
2072
+
2073
+ fn xrem32_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2074
+ let a = self.state[operands.src1].get_u32();
2075
+ let b = self.state[operands.src2].get_u32();
2076
+ match a.checked_rem(b) {
2077
+ Some(result) => {
2078
+ self.state[operands.dst].set_u32(result);
2079
+ ControlFlow::Continue(())
2080
+ }
2081
+ None => self.done_trap_kind::<crate::XRem32U>(Some(TrapKind::DivideByZero)),
2082
+ }
2083
+ }
2084
+
2085
+ fn xrem64_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2086
+ let a = self.state[operands.src1].get_u64();
2087
+ let b = self.state[operands.src2].get_u64();
2088
+ match a.checked_rem(b) {
2089
+ Some(result) => {
2090
+ self.state[operands.dst].set_u64(result);
2091
+ ControlFlow::Continue(())
2092
+ }
2093
+ None => self.done_trap_kind::<crate::XRem64U>(Some(TrapKind::DivideByZero)),
2094
+ }
2095
+ }
2096
+
2097
+ fn xband32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2098
+ let a = self.state[operands.src1].get_u32();
2099
+ let b = self.state[operands.src2].get_u32();
2100
+ self.state[operands.dst].set_u32(a & b);
2101
+ ControlFlow::Continue(())
2102
+ }
2103
+
2104
+ fn xband32_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
2105
+ self.xband32_s32(dst, src1, src2.into())
2106
+ }
2107
+
2108
+ fn xband32_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
2109
+ let a = self.state[src1].get_i32();
2110
+ self.state[dst].set_i32(a & src2);
2111
+ ControlFlow::Continue(())
2112
+ }
2113
+
2114
+ fn xband64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2115
+ let a = self.state[operands.src1].get_u64();
2116
+ let b = self.state[operands.src2].get_u64();
2117
+ self.state[operands.dst].set_u64(a & b);
2118
+ ControlFlow::Continue(())
2119
+ }
2120
+
2121
+ fn xband64_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
2122
+ self.xband64_s32(dst, src1, src2.into())
2123
+ }
2124
+
2125
+ fn xband64_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
2126
+ let a = self.state[src1].get_i64();
2127
+ self.state[dst].set_i64(a & i64::from(src2));
2128
+ ControlFlow::Continue(())
2129
+ }
2130
+
2131
+ fn xbor32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2132
+ let a = self.state[operands.src1].get_u32();
2133
+ let b = self.state[operands.src2].get_u32();
2134
+ self.state[operands.dst].set_u32(a | b);
2135
+ ControlFlow::Continue(())
2136
+ }
2137
+
2138
+ fn xbor32_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
2139
+ self.xbor32_s32(dst, src1, src2.into())
2140
+ }
2141
+
2142
+ fn xbor32_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
2143
+ let a = self.state[src1].get_i32();
2144
+ self.state[dst].set_i32(a | src2);
2145
+ ControlFlow::Continue(())
2146
+ }
2147
+
2148
+ fn xbor64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2149
+ let a = self.state[operands.src1].get_u64();
2150
+ let b = self.state[operands.src2].get_u64();
2151
+ self.state[operands.dst].set_u64(a | b);
2152
+ ControlFlow::Continue(())
2153
+ }
2154
+
2155
+ fn xbor64_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
2156
+ self.xbor64_s32(dst, src1, src2.into())
2157
+ }
2158
+
2159
+ fn xbor64_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
2160
+ let a = self.state[src1].get_i64();
2161
+ self.state[dst].set_i64(a | i64::from(src2));
2162
+ ControlFlow::Continue(())
2163
+ }
2164
+
2165
+ fn xbxor32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2166
+ let a = self.state[operands.src1].get_u32();
2167
+ let b = self.state[operands.src2].get_u32();
2168
+ self.state[operands.dst].set_u32(a ^ b);
2169
+ ControlFlow::Continue(())
2170
+ }
2171
+
2172
+ fn xbxor32_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
2173
+ self.xbxor32_s32(dst, src1, src2.into())
2174
+ }
2175
+
2176
+ fn xbxor32_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
2177
+ let a = self.state[src1].get_i32();
2178
+ self.state[dst].set_i32(a ^ src2);
2179
+ ControlFlow::Continue(())
2180
+ }
2181
+
2182
+ fn xbxor64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2183
+ let a = self.state[operands.src1].get_u64();
2184
+ let b = self.state[operands.src2].get_u64();
2185
+ self.state[operands.dst].set_u64(a ^ b);
2186
+ ControlFlow::Continue(())
2187
+ }
2188
+
2189
+ fn xbxor64_s8(&mut self, dst: XReg, src1: XReg, src2: i8) -> ControlFlow<Done> {
2190
+ self.xbxor64_s32(dst, src1, src2.into())
2191
+ }
2192
+
2193
+ fn xbxor64_s32(&mut self, dst: XReg, src1: XReg, src2: i32) -> ControlFlow<Done> {
2194
+ let a = self.state[src1].get_i64();
2195
+ self.state[dst].set_i64(a ^ i64::from(src2));
2196
+ ControlFlow::Continue(())
2197
+ }
2198
+
2199
+ fn xbnot32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2200
+ let a = self.state[src].get_u32();
2201
+ self.state[dst].set_u32(!a);
2202
+ ControlFlow::Continue(())
2203
+ }
2204
+
2205
+ fn xbnot64(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2206
+ let a = self.state[src].get_u64();
2207
+ self.state[dst].set_u64(!a);
2208
+ ControlFlow::Continue(())
2209
+ }
2210
+
2211
+ fn xmin32_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2212
+ let a = self.state[operands.src1].get_u32();
2213
+ let b = self.state[operands.src2].get_u32();
2214
+ self.state[operands.dst].set_u32(a.min(b));
2215
+ ControlFlow::Continue(())
2216
+ }
2217
+
2218
+ fn xmin32_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2219
+ let a = self.state[operands.src1].get_i32();
2220
+ let b = self.state[operands.src2].get_i32();
2221
+ self.state[operands.dst].set_i32(a.min(b));
2222
+ ControlFlow::Continue(())
2223
+ }
2224
+
2225
+ fn xmax32_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2226
+ let a = self.state[operands.src1].get_u32();
2227
+ let b = self.state[operands.src2].get_u32();
2228
+ self.state[operands.dst].set_u32(a.max(b));
2229
+ ControlFlow::Continue(())
2230
+ }
2231
+
2232
+ fn xmax32_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2233
+ let a = self.state[operands.src1].get_i32();
2234
+ let b = self.state[operands.src2].get_i32();
2235
+ self.state[operands.dst].set_i32(a.max(b));
2236
+ ControlFlow::Continue(())
2237
+ }
2238
+
2239
+ fn xmin64_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2240
+ let a = self.state[operands.src1].get_u64();
2241
+ let b = self.state[operands.src2].get_u64();
2242
+ self.state[operands.dst].set_u64(a.min(b));
2243
+ ControlFlow::Continue(())
2244
+ }
2245
+
2246
+ fn xmin64_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2247
+ let a = self.state[operands.src1].get_i64();
2248
+ let b = self.state[operands.src2].get_i64();
2249
+ self.state[operands.dst].set_i64(a.min(b));
2250
+ ControlFlow::Continue(())
2251
+ }
2252
+
2253
+ fn xmax64_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2254
+ let a = self.state[operands.src1].get_u64();
2255
+ let b = self.state[operands.src2].get_u64();
2256
+ self.state[operands.dst].set_u64(a.max(b));
2257
+ ControlFlow::Continue(())
2258
+ }
2259
+
2260
+ fn xmax64_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2261
+ let a = self.state[operands.src1].get_i64();
2262
+ let b = self.state[operands.src2].get_i64();
2263
+ self.state[operands.dst].set_i64(a.max(b));
2264
+ ControlFlow::Continue(())
2265
+ }
2266
+
2267
+ fn xctz32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2268
+ let a = self.state[src].get_u32();
2269
+ self.state[dst].set_u32(a.trailing_zeros());
2270
+ ControlFlow::Continue(())
2271
+ }
2272
+
2273
+ fn xctz64(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2274
+ let a = self.state[src].get_u64();
2275
+ self.state[dst].set_u64(a.trailing_zeros().into());
2276
+ ControlFlow::Continue(())
2277
+ }
2278
+
2279
+ fn xclz32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2280
+ let a = self.state[src].get_u32();
2281
+ self.state[dst].set_u32(a.leading_zeros());
2282
+ ControlFlow::Continue(())
2283
+ }
2284
+
2285
+ fn xclz64(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2286
+ let a = self.state[src].get_u64();
2287
+ self.state[dst].set_u64(a.leading_zeros().into());
2288
+ ControlFlow::Continue(())
2289
+ }
2290
+
2291
+ fn xpopcnt32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2292
+ let a = self.state[src].get_u32();
2293
+ self.state[dst].set_u32(a.count_ones());
2294
+ ControlFlow::Continue(())
2295
+ }
2296
+
2297
+ fn xpopcnt64(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2298
+ let a = self.state[src].get_u64();
2299
+ self.state[dst].set_u64(a.count_ones().into());
2300
+ ControlFlow::Continue(())
2301
+ }
2302
+
2303
+ fn xrotl32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2304
+ let a = self.state[operands.src1].get_u32();
2305
+ let b = self.state[operands.src2].get_u32();
2306
+ self.state[operands.dst].set_u32(a.rotate_left(b));
2307
+ ControlFlow::Continue(())
2308
+ }
2309
+
2310
+ fn xrotl64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2311
+ let a = self.state[operands.src1].get_u64();
2312
+ let b = self.state[operands.src2].get_u32();
2313
+ self.state[operands.dst].set_u64(a.rotate_left(b));
2314
+ ControlFlow::Continue(())
2315
+ }
2316
+
2317
+ fn xrotr32(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2318
+ let a = self.state[operands.src1].get_u32();
2319
+ let b = self.state[operands.src2].get_u32();
2320
+ self.state[operands.dst].set_u32(a.rotate_right(b));
2321
+ ControlFlow::Continue(())
2322
+ }
2323
+
2324
+ fn xrotr64(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2325
+ let a = self.state[operands.src1].get_u64();
2326
+ let b = self.state[operands.src2].get_u32();
2327
+ self.state[operands.dst].set_u64(a.rotate_right(b));
2328
+ ControlFlow::Continue(())
2329
+ }
2330
+
2331
+ fn xselect32(
2332
+ &mut self,
2333
+ dst: XReg,
2334
+ cond: XReg,
2335
+ if_nonzero: XReg,
2336
+ if_zero: XReg,
2337
+ ) -> ControlFlow<Done> {
2338
+ let result = if self.state[cond].get_u32() != 0 {
2339
+ self.state[if_nonzero].get_u32()
2340
+ } else {
2341
+ self.state[if_zero].get_u32()
2342
+ };
2343
+ self.state[dst].set_u32(result);
2344
+ ControlFlow::Continue(())
2345
+ }
2346
+
2347
+ fn xselect64(
2348
+ &mut self,
2349
+ dst: XReg,
2350
+ cond: XReg,
2351
+ if_nonzero: XReg,
2352
+ if_zero: XReg,
2353
+ ) -> ControlFlow<Done> {
2354
+ let result = if self.state[cond].get_u32() != 0 {
2355
+ self.state[if_nonzero].get_u64()
2356
+ } else {
2357
+ self.state[if_zero].get_u64()
2358
+ };
2359
+ self.state[dst].set_u64(result);
2360
+ ControlFlow::Continue(())
2361
+ }
2362
+
2363
+ fn xabs32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2364
+ let a = self.state[src].get_i32();
2365
+ self.state[dst].set_i32(a.wrapping_abs());
2366
+ ControlFlow::Continue(())
2367
+ }
2368
+
2369
+ fn xabs64(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2370
+ let a = self.state[src].get_i64();
2371
+ self.state[dst].set_i64(a.wrapping_abs());
2372
+ ControlFlow::Continue(())
2373
+ }
2374
+ }
2375
+
2376
+ impl ExtendedOpVisitor for Interpreter<'_> {
2377
+ fn nop(&mut self) -> ControlFlow<Done> {
2378
+ ControlFlow::Continue(())
2379
+ }
2380
+
2381
+ fn trap(&mut self) -> ControlFlow<Done> {
2382
+ self.done_trap::<crate::Trap>()
2383
+ }
2384
+
2385
+ fn call_indirect_host(&mut self, id: u8) -> ControlFlow<Done> {
2386
+ self.done_call_indirect_host(id)
2387
+ }
2388
+
2389
+ fn bswap32(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2390
+ let src = self.state[src].get_u32();
2391
+ self.state[dst].set_u32(src.swap_bytes());
2392
+ ControlFlow::Continue(())
2393
+ }
2394
+
2395
+ fn bswap64(&mut self, dst: XReg, src: XReg) -> ControlFlow<Done> {
2396
+ let src = self.state[src].get_u64();
2397
+ self.state[dst].set_u64(src.swap_bytes());
2398
+ ControlFlow::Continue(())
2399
+ }
2400
+
2401
+ fn xbmask32(&mut self, dst: XReg, src: XReg) -> Self::Return {
2402
+ let a = self.state[src].get_u32();
2403
+ if a == 0 {
2404
+ self.state[dst].set_u32(0);
2405
+ } else {
2406
+ self.state[dst].set_i32(-1);
2407
+ }
2408
+ ControlFlow::Continue(())
2409
+ }
2410
+
2411
+ fn xbmask64(&mut self, dst: XReg, src: XReg) -> Self::Return {
2412
+ let a = self.state[src].get_u64();
2413
+ if a == 0 {
2414
+ self.state[dst].set_u64(0);
2415
+ } else {
2416
+ self.state[dst].set_i64(-1);
2417
+ }
2418
+ ControlFlow::Continue(())
2419
+ }
2420
+
2421
+ fn xadd32_uoverflow_trap(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2422
+ let a = self.state[operands.src1].get_u32();
2423
+ let b = self.state[operands.src2].get_u32();
2424
+ match a.checked_add(b) {
2425
+ Some(c) => {
2426
+ self.state[operands.dst].set_u32(c);
2427
+ ControlFlow::Continue(())
2428
+ }
2429
+ None => self.done_trap::<crate::Xadd32UoverflowTrap>(),
2430
+ }
2431
+ }
2432
+
2433
+ fn xadd64_uoverflow_trap(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2434
+ let a = self.state[operands.src1].get_u64();
2435
+ let b = self.state[operands.src2].get_u64();
2436
+ match a.checked_add(b) {
2437
+ Some(c) => {
2438
+ self.state[operands.dst].set_u64(c);
2439
+ ControlFlow::Continue(())
2440
+ }
2441
+ None => self.done_trap::<crate::Xadd64UoverflowTrap>(),
2442
+ }
2443
+ }
2444
+
2445
+ fn xmulhi64_s(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2446
+ let a = self.state[operands.src1].get_i64();
2447
+ let b = self.state[operands.src2].get_i64();
2448
+ let result = ((i128::from(a) * i128::from(b)) >> 64) as i64;
2449
+ self.state[operands.dst].set_i64(result);
2450
+ ControlFlow::Continue(())
2451
+ }
2452
+
2453
+ fn xmulhi64_u(&mut self, operands: BinaryOperands<XReg>) -> ControlFlow<Done> {
2454
+ let a = self.state[operands.src1].get_u64();
2455
+ let b = self.state[operands.src2].get_u64();
2456
+ let result = ((u128::from(a) * u128::from(b)) >> 64) as u64;
2457
+ self.state[operands.dst].set_u64(result);
2458
+ ControlFlow::Continue(())
2459
+ }
2460
+
2461
+ fn xpush32(&mut self, src: XReg) -> ControlFlow<Done> {
2462
+ self.push::<crate::XPush32, _>(self.state[src].get_u32())?;
2463
+ ControlFlow::Continue(())
2464
+ }
2465
+
2466
+ fn xpush32_many(&mut self, srcs: RegSet<XReg>) -> ControlFlow<Done> {
2467
+ for src in srcs {
2468
+ self.push::<crate::XPush32Many, _>(self.state[src].get_u32())?;
2469
+ }
2470
+ ControlFlow::Continue(())
2471
+ }
2472
+
2473
+ fn xpush64(&mut self, src: XReg) -> ControlFlow<Done> {
2474
+ self.push::<crate::XPush64, _>(self.state[src].get_u64())?;
2475
+ ControlFlow::Continue(())
2476
+ }
2477
+
2478
+ fn xpush64_many(&mut self, srcs: RegSet<XReg>) -> ControlFlow<Done> {
2479
+ for src in srcs {
2480
+ self.push::<crate::XPush64Many, _>(self.state[src].get_u64())?;
2481
+ }
2482
+ ControlFlow::Continue(())
2483
+ }
2484
+
2485
+ fn xpop32(&mut self, dst: XReg) -> ControlFlow<Done> {
2486
+ let val = self.pop();
2487
+ self.state[dst].set_u32(val);
2488
+ ControlFlow::Continue(())
2489
+ }
2490
+
2491
+ fn xpop32_many(&mut self, dsts: RegSet<XReg>) -> ControlFlow<Done> {
2492
+ for dst in dsts.into_iter().rev() {
2493
+ let val = self.pop();
2494
+ self.state[dst].set_u32(val);
2495
+ }
2496
+ ControlFlow::Continue(())
2497
+ }
2498
+
2499
+ fn xpop64(&mut self, dst: XReg) -> ControlFlow<Done> {
2500
+ let val = self.pop();
2501
+ self.state[dst].set_u64(val);
2502
+ ControlFlow::Continue(())
2503
+ }
2504
+
2505
+ fn xpop64_many(&mut self, dsts: RegSet<XReg>) -> ControlFlow<Done> {
2506
+ for dst in dsts.into_iter().rev() {
2507
+ let val = self.pop();
2508
+ self.state[dst].set_u64(val);
2509
+ }
2510
+ ControlFlow::Continue(())
2511
+ }
2512
+
2513
+ fn xload16be_u64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2514
+ let val = unsafe { self.load::<u16>(ptr, offset) };
2515
+ self.state[dst].set_u64(u16::from_be(val).into());
2516
+ ControlFlow::Continue(())
2517
+ }
2518
+
2519
+ fn xload16be_s64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2520
+ let val = unsafe { self.load::<i16>(ptr, offset) };
2521
+ self.state[dst].set_i64(i16::from_be(val).into());
2522
+ ControlFlow::Continue(())
2523
+ }
2524
+
2525
+ fn xload32be_u64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2526
+ let val = unsafe { self.load::<u32>(ptr, offset) };
2527
+ self.state[dst].set_u64(u32::from_be(val).into());
2528
+ ControlFlow::Continue(())
2529
+ }
2530
+
2531
+ fn xload32be_s64_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2532
+ let val = unsafe { self.load::<i32>(ptr, offset) };
2533
+ self.state[dst].set_i64(i32::from_be(val).into());
2534
+ ControlFlow::Continue(())
2535
+ }
2536
+
2537
+ fn xload64be_offset32(&mut self, dst: XReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2538
+ let val = unsafe { self.load::<i64>(ptr, offset) };
2539
+ self.state[dst].set_i64(i64::from_be(val));
2540
+ ControlFlow::Continue(())
2541
+ }
2542
+
2543
+ fn xstore16be_offset32(&mut self, ptr: XReg, offset: i32, src: XReg) -> ControlFlow<Done> {
2544
+ let val = self.state[src].get_u32() as u16;
2545
+ unsafe {
2546
+ self.store(ptr, offset, val.to_be());
2547
+ }
2548
+ ControlFlow::Continue(())
2549
+ }
2550
+
2551
+ fn xstore32be_offset32(&mut self, ptr: XReg, offset: i32, src: XReg) -> ControlFlow<Done> {
2552
+ let val = self.state[src].get_u32();
2553
+ unsafe {
2554
+ self.store(ptr, offset, val.to_be());
2555
+ }
2556
+ ControlFlow::Continue(())
2557
+ }
2558
+
2559
+ fn xstore64be_offset32(&mut self, ptr: XReg, offset: i32, src: XReg) -> ControlFlow<Done> {
2560
+ let val = self.state[src].get_u64();
2561
+ unsafe {
2562
+ self.store(ptr, offset, val.to_be());
2563
+ }
2564
+ ControlFlow::Continue(())
2565
+ }
2566
+
2567
+ fn fload32be_offset32(&mut self, dst: FReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2568
+ let val = unsafe { self.load::<u32>(ptr, offset) };
2569
+ self.state[dst].set_f32(f32::from_bits(u32::from_be(val)));
2570
+ ControlFlow::Continue(())
2571
+ }
2572
+
2573
+ fn fload64be_offset32(&mut self, dst: FReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2574
+ let val = unsafe { self.load::<u64>(ptr, offset) };
2575
+ self.state[dst].set_f64(f64::from_bits(u64::from_be(val)));
2576
+ ControlFlow::Continue(())
2577
+ }
2578
+
2579
+ fn fstore32be_offset32(&mut self, ptr: XReg, offset: i32, src: FReg) -> ControlFlow<Done> {
2580
+ let val = self.state[src].get_f32();
2581
+ unsafe {
2582
+ self.store(ptr, offset, val.to_bits().to_be());
2583
+ }
2584
+ ControlFlow::Continue(())
2585
+ }
2586
+
2587
+ fn fstore64be_offset32(&mut self, ptr: XReg, offset: i32, src: FReg) -> ControlFlow<Done> {
2588
+ let val = self.state[src].get_f64();
2589
+ unsafe {
2590
+ self.store(ptr, offset, val.to_bits().to_be());
2591
+ }
2592
+ ControlFlow::Continue(())
2593
+ }
2594
+
2595
+ fn fload32le_offset32(&mut self, dst: FReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2596
+ let val = unsafe { self.load::<u32>(ptr, offset) };
2597
+ self.state[dst].set_f32(f32::from_bits(u32::from_le(val)));
2598
+ ControlFlow::Continue(())
2599
+ }
2600
+
2601
+ fn fload64le_offset32(&mut self, dst: FReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2602
+ let val = unsafe { self.load::<u64>(ptr, offset) };
2603
+ self.state[dst].set_f64(f64::from_bits(u64::from_le(val)));
2604
+ ControlFlow::Continue(())
2605
+ }
2606
+
2607
+ fn fstore32le_offset32(&mut self, ptr: XReg, offset: i32, src: FReg) -> ControlFlow<Done> {
2608
+ let val = self.state[src].get_f32();
2609
+ unsafe {
2610
+ self.store(ptr, offset, val.to_bits().to_le());
2611
+ }
2612
+ ControlFlow::Continue(())
2613
+ }
2614
+
2615
+ fn fstore64le_offset32(&mut self, ptr: XReg, offset: i32, src: FReg) -> ControlFlow<Done> {
2616
+ let val = self.state[src].get_f64();
2617
+ unsafe {
2618
+ self.store(ptr, offset, val.to_bits().to_le());
2619
+ }
2620
+ ControlFlow::Continue(())
2621
+ }
2622
+
2623
+ fn vload128le_offset32(&mut self, dst: VReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
2624
+ let val = unsafe { self.load::<u128>(ptr, offset) };
2625
+ self.state[dst].set_u128(u128::from_le(val));
2626
+ ControlFlow::Continue(())
2627
+ }
2628
+
2629
+ fn vstore128le_offset32(&mut self, ptr: XReg, offset: i32, src: VReg) -> ControlFlow<Done> {
2630
+ let val = self.state[src].get_u128();
2631
+ unsafe {
2632
+ self.store(ptr, offset, val.to_le());
2633
+ }
2634
+ ControlFlow::Continue(())
2635
+ }
2636
+
2637
+ fn xmov_fp(&mut self, dst: XReg) -> ControlFlow<Done> {
2638
+ let fp = self.state.fp;
2639
+ self.state[dst].set_ptr(fp);
2640
+ ControlFlow::Continue(())
2641
+ }
2642
+
2643
+ fn xmov_lr(&mut self, dst: XReg) -> ControlFlow<Done> {
2644
+ let lr = self.state.lr;
2645
+ self.state[dst].set_ptr(lr);
2646
+ ControlFlow::Continue(())
2647
+ }
2648
+
2649
+ fn fmov(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
2650
+ let val = self.state[src];
2651
+ self.state[dst] = val;
2652
+ ControlFlow::Continue(())
2653
+ }
2654
+
2655
+ fn vmov(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
2656
+ let val = self.state[src];
2657
+ self.state[dst] = val;
2658
+ ControlFlow::Continue(())
2659
+ }
2660
+
2661
+ fn fconst32(&mut self, dst: FReg, bits: u32) -> ControlFlow<Done> {
2662
+ self.state[dst].set_f32(f32::from_bits(bits));
2663
+ ControlFlow::Continue(())
2664
+ }
2665
+
2666
+ fn fconst64(&mut self, dst: FReg, bits: u64) -> ControlFlow<Done> {
2667
+ self.state[dst].set_f64(f64::from_bits(bits));
2668
+ ControlFlow::Continue(())
2669
+ }
2670
+
2671
+ fn bitcast_int_from_float_32(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2672
+ let val = self.state[src].get_f32();
2673
+ self.state[dst].set_u32(val.to_bits());
2674
+ ControlFlow::Continue(())
2675
+ }
2676
+
2677
+ fn bitcast_int_from_float_64(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2678
+ let val = self.state[src].get_f64();
2679
+ self.state[dst].set_u64(val.to_bits());
2680
+ ControlFlow::Continue(())
2681
+ }
2682
+
2683
+ fn bitcast_float_from_int_32(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2684
+ let val = self.state[src].get_u32();
2685
+ self.state[dst].set_f32(f32::from_bits(val));
2686
+ ControlFlow::Continue(())
2687
+ }
2688
+
2689
+ fn bitcast_float_from_int_64(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2690
+ let val = self.state[src].get_u64();
2691
+ self.state[dst].set_f64(f64::from_bits(val));
2692
+ ControlFlow::Continue(())
2693
+ }
2694
+
2695
+ fn feq32(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2696
+ let a = self.state[src1].get_f32();
2697
+ let b = self.state[src2].get_f32();
2698
+ self.state[dst].set_u32(u32::from(a == b));
2699
+ ControlFlow::Continue(())
2700
+ }
2701
+
2702
+ fn fneq32(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2703
+ let a = self.state[src1].get_f32();
2704
+ let b = self.state[src2].get_f32();
2705
+ self.state[dst].set_u32(u32::from(a != b));
2706
+ ControlFlow::Continue(())
2707
+ }
2708
+
2709
+ fn flt32(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2710
+ let a = self.state[src1].get_f32();
2711
+ let b = self.state[src2].get_f32();
2712
+ self.state[dst].set_u32(u32::from(a < b));
2713
+ ControlFlow::Continue(())
2714
+ }
2715
+
2716
+ fn flteq32(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2717
+ let a = self.state[src1].get_f32();
2718
+ let b = self.state[src2].get_f32();
2719
+ self.state[dst].set_u32(u32::from(a <= b));
2720
+ ControlFlow::Continue(())
2721
+ }
2722
+
2723
+ fn feq64(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2724
+ let a = self.state[src1].get_f64();
2725
+ let b = self.state[src2].get_f64();
2726
+ self.state[dst].set_u32(u32::from(a == b));
2727
+ ControlFlow::Continue(())
2728
+ }
2729
+
2730
+ fn fneq64(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2731
+ let a = self.state[src1].get_f64();
2732
+ let b = self.state[src2].get_f64();
2733
+ self.state[dst].set_u32(u32::from(a != b));
2734
+ ControlFlow::Continue(())
2735
+ }
2736
+
2737
+ fn flt64(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2738
+ let a = self.state[src1].get_f64();
2739
+ let b = self.state[src2].get_f64();
2740
+ self.state[dst].set_u32(u32::from(a < b));
2741
+ ControlFlow::Continue(())
2742
+ }
2743
+
2744
+ fn flteq64(&mut self, dst: XReg, src1: FReg, src2: FReg) -> ControlFlow<Done> {
2745
+ let a = self.state[src1].get_f64();
2746
+ let b = self.state[src2].get_f64();
2747
+ self.state[dst].set_u32(u32::from(a <= b));
2748
+ ControlFlow::Continue(())
2749
+ }
2750
+
2751
+ fn fselect32(
2752
+ &mut self,
2753
+ dst: FReg,
2754
+ cond: XReg,
2755
+ if_nonzero: FReg,
2756
+ if_zero: FReg,
2757
+ ) -> ControlFlow<Done> {
2758
+ let result = if self.state[cond].get_u32() != 0 {
2759
+ self.state[if_nonzero].get_f32()
2760
+ } else {
2761
+ self.state[if_zero].get_f32()
2762
+ };
2763
+ self.state[dst].set_f32(result);
2764
+ ControlFlow::Continue(())
2765
+ }
2766
+
2767
+ fn fselect64(
2768
+ &mut self,
2769
+ dst: FReg,
2770
+ cond: XReg,
2771
+ if_nonzero: FReg,
2772
+ if_zero: FReg,
2773
+ ) -> ControlFlow<Done> {
2774
+ let result = if self.state[cond].get_u32() != 0 {
2775
+ self.state[if_nonzero].get_f64()
2776
+ } else {
2777
+ self.state[if_zero].get_f64()
2778
+ };
2779
+ self.state[dst].set_f64(result);
2780
+ ControlFlow::Continue(())
2781
+ }
2782
+
2783
+ fn f32_from_x32_s(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2784
+ let a = self.state[src].get_i32();
2785
+ self.state[dst].set_f32(a as f32);
2786
+ ControlFlow::Continue(())
2787
+ }
2788
+
2789
+ fn f32_from_x32_u(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2790
+ let a = self.state[src].get_u32();
2791
+ self.state[dst].set_f32(a as f32);
2792
+ ControlFlow::Continue(())
2793
+ }
2794
+
2795
+ fn f32_from_x64_s(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2796
+ let a = self.state[src].get_i64();
2797
+ self.state[dst].set_f32(a as f32);
2798
+ ControlFlow::Continue(())
2799
+ }
2800
+
2801
+ fn f32_from_x64_u(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2802
+ let a = self.state[src].get_u64();
2803
+ self.state[dst].set_f32(a as f32);
2804
+ ControlFlow::Continue(())
2805
+ }
2806
+
2807
+ fn f64_from_x32_s(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2808
+ let a = self.state[src].get_i32();
2809
+ self.state[dst].set_f64(a as f64);
2810
+ ControlFlow::Continue(())
2811
+ }
2812
+
2813
+ fn f64_from_x32_u(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2814
+ let a = self.state[src].get_u32();
2815
+ self.state[dst].set_f64(a as f64);
2816
+ ControlFlow::Continue(())
2817
+ }
2818
+
2819
+ fn f64_from_x64_s(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2820
+ let a = self.state[src].get_i64();
2821
+ self.state[dst].set_f64(a as f64);
2822
+ ControlFlow::Continue(())
2823
+ }
2824
+
2825
+ fn f64_from_x64_u(&mut self, dst: FReg, src: XReg) -> ControlFlow<Done> {
2826
+ let a = self.state[src].get_u64();
2827
+ self.state[dst].set_f64(a as f64);
2828
+ ControlFlow::Continue(())
2829
+ }
2830
+
2831
+ fn x32_from_f32_s(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2832
+ let a = self.state[src].get_f32();
2833
+ self.check_xnn_from_fnn::<crate::X32FromF32S>(a.into(), -2147483649.0, 2147483648.0)?;
2834
+ self.state[dst].set_i32(a as i32);
2835
+ ControlFlow::Continue(())
2836
+ }
2837
+
2838
+ fn x32_from_f32_u(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2839
+ let a = self.state[src].get_f32();
2840
+ self.check_xnn_from_fnn::<crate::X32FromF32U>(a.into(), -1.0, 4294967296.0)?;
2841
+ self.state[dst].set_u32(a as u32);
2842
+ ControlFlow::Continue(())
2843
+ }
2844
+
2845
+ fn x64_from_f32_s(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2846
+ let a = self.state[src].get_f32();
2847
+ self.check_xnn_from_fnn::<crate::X64FromF32S>(
2848
+ a.into(),
2849
+ -9223372036854777856.0,
2850
+ 9223372036854775808.0,
2851
+ )?;
2852
+ self.state[dst].set_i64(a as i64);
2853
+ ControlFlow::Continue(())
2854
+ }
2855
+
2856
+ fn x64_from_f32_u(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2857
+ let a = self.state[src].get_f32();
2858
+ self.check_xnn_from_fnn::<crate::X64FromF32U>(a.into(), -1.0, 18446744073709551616.0)?;
2859
+ self.state[dst].set_u64(a as u64);
2860
+ ControlFlow::Continue(())
2861
+ }
2862
+
2863
+ fn x32_from_f64_s(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2864
+ let a = self.state[src].get_f64();
2865
+ self.check_xnn_from_fnn::<crate::X32FromF64S>(a, -2147483649.0, 2147483648.0)?;
2866
+ self.state[dst].set_i32(a as i32);
2867
+ ControlFlow::Continue(())
2868
+ }
2869
+
2870
+ fn x32_from_f64_u(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2871
+ let a = self.state[src].get_f64();
2872
+ self.check_xnn_from_fnn::<crate::X32FromF64U>(a, -1.0, 4294967296.0)?;
2873
+ self.state[dst].set_u32(a as u32);
2874
+ ControlFlow::Continue(())
2875
+ }
2876
+
2877
+ fn x64_from_f64_s(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2878
+ let a = self.state[src].get_f64();
2879
+ self.check_xnn_from_fnn::<crate::X64FromF64S>(
2880
+ a,
2881
+ -9223372036854777856.0,
2882
+ 9223372036854775808.0,
2883
+ )?;
2884
+ self.state[dst].set_i64(a as i64);
2885
+ ControlFlow::Continue(())
2886
+ }
2887
+
2888
+ fn x64_from_f64_u(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2889
+ let a = self.state[src].get_f64();
2890
+ self.check_xnn_from_fnn::<crate::X64FromF64U>(a, -1.0, 18446744073709551616.0)?;
2891
+ self.state[dst].set_u64(a as u64);
2892
+ ControlFlow::Continue(())
2893
+ }
2894
+
2895
+ fn x32_from_f32_s_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2896
+ let a = self.state[src].get_f32();
2897
+ self.state[dst].set_i32(a as i32);
2898
+ ControlFlow::Continue(())
2899
+ }
2900
+
2901
+ fn x32_from_f32_u_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2902
+ let a = self.state[src].get_f32();
2903
+ self.state[dst].set_u32(a as u32);
2904
+ ControlFlow::Continue(())
2905
+ }
2906
+
2907
+ fn x64_from_f32_s_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2908
+ let a = self.state[src].get_f32();
2909
+ self.state[dst].set_i64(a as i64);
2910
+ ControlFlow::Continue(())
2911
+ }
2912
+
2913
+ fn x64_from_f32_u_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2914
+ let a = self.state[src].get_f32();
2915
+ self.state[dst].set_u64(a as u64);
2916
+ ControlFlow::Continue(())
2917
+ }
2918
+
2919
+ fn x32_from_f64_s_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2920
+ let a = self.state[src].get_f64();
2921
+ self.state[dst].set_i32(a as i32);
2922
+ ControlFlow::Continue(())
2923
+ }
2924
+
2925
+ fn x32_from_f64_u_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2926
+ let a = self.state[src].get_f64();
2927
+ self.state[dst].set_u32(a as u32);
2928
+ ControlFlow::Continue(())
2929
+ }
2930
+
2931
+ fn x64_from_f64_s_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2932
+ let a = self.state[src].get_f64();
2933
+ self.state[dst].set_i64(a as i64);
2934
+ ControlFlow::Continue(())
2935
+ }
2936
+
2937
+ fn x64_from_f64_u_sat(&mut self, dst: XReg, src: FReg) -> ControlFlow<Done> {
2938
+ let a = self.state[src].get_f64();
2939
+ self.state[dst].set_u64(a as u64);
2940
+ ControlFlow::Continue(())
2941
+ }
2942
+
2943
+ fn f32_from_f64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
2944
+ let a = self.state[src].get_f64();
2945
+ self.state[dst].set_f32(a as f32);
2946
+ ControlFlow::Continue(())
2947
+ }
2948
+
2949
+ fn f64_from_f32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
2950
+ let a = self.state[src].get_f32();
2951
+ self.state[dst].set_f64(a.into());
2952
+ ControlFlow::Continue(())
2953
+ }
2954
+
2955
+ fn fcopysign32(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
2956
+ let a = self.state[operands.src1].get_f32();
2957
+ let b = self.state[operands.src2].get_f32();
2958
+ self.state[operands.dst].set_f32(a.wasm_copysign(b));
2959
+ ControlFlow::Continue(())
2960
+ }
2961
+
2962
+ fn fcopysign64(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
2963
+ let a = self.state[operands.src1].get_f64();
2964
+ let b = self.state[operands.src2].get_f64();
2965
+ self.state[operands.dst].set_f64(a.wasm_copysign(b));
2966
+ ControlFlow::Continue(())
2967
+ }
2968
+
2969
+ fn fadd32(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
2970
+ let a = self.state[operands.src1].get_f32();
2971
+ let b = self.state[operands.src2].get_f32();
2972
+ self.state[operands.dst].set_f32(a + b);
2973
+ ControlFlow::Continue(())
2974
+ }
2975
+
2976
+ fn fsub32(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
2977
+ let a = self.state[operands.src1].get_f32();
2978
+ let b = self.state[operands.src2].get_f32();
2979
+ self.state[operands.dst].set_f32(a - b);
2980
+ ControlFlow::Continue(())
2981
+ }
2982
+
2983
+ fn fmul32(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
2984
+ let a = self.state[operands.src1].get_f32();
2985
+ let b = self.state[operands.src2].get_f32();
2986
+ self.state[operands.dst].set_f32(a * b);
2987
+ ControlFlow::Continue(())
2988
+ }
2989
+
2990
+ fn fdiv32(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
2991
+ let a = self.state[operands.src1].get_f32();
2992
+ let b = self.state[operands.src2].get_f32();
2993
+ self.state[operands.dst].set_f32(a / b);
2994
+ ControlFlow::Continue(())
2995
+ }
2996
+
2997
+ fn vdivf32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
2998
+ let a = self.state[operands.src1].get_f32x4();
2999
+ let b = self.state[operands.src2].get_f32x4();
3000
+ let mut result = [0.0f32; 4];
3001
+
3002
+ for i in 0..4 {
3003
+ result[i] = a[i] / b[i];
3004
+ }
3005
+
3006
+ self.state[operands.dst].set_f32x4(result);
3007
+ ControlFlow::Continue(())
3008
+ }
3009
+
3010
+ fn vdivf64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3011
+ let a = self.state[operands.src1].get_f64x2();
3012
+ let b = self.state[operands.src2].get_f64x2();
3013
+ let mut result = [0.0f64; 2];
3014
+
3015
+ for i in 0..2 {
3016
+ result[i] = a[i] / b[i];
3017
+ }
3018
+
3019
+ self.state[operands.dst].set_f64x2(result);
3020
+ ControlFlow::Continue(())
3021
+ }
3022
+
3023
+ fn fmaximum32(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3024
+ let a = self.state[operands.src1].get_f32();
3025
+ let b = self.state[operands.src2].get_f32();
3026
+ self.state[operands.dst].set_f32(a.wasm_maximum(b));
3027
+ ControlFlow::Continue(())
3028
+ }
3029
+
3030
+ fn fminimum32(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3031
+ let a = self.state[operands.src1].get_f32();
3032
+ let b = self.state[operands.src2].get_f32();
3033
+ self.state[operands.dst].set_f32(a.wasm_minimum(b));
3034
+ ControlFlow::Continue(())
3035
+ }
3036
+
3037
+ fn ftrunc32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3038
+ let a = self.state[src].get_f32();
3039
+ self.state[dst].set_f32(a.wasm_trunc());
3040
+ ControlFlow::Continue(())
3041
+ }
3042
+
3043
+ fn vtrunc32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3044
+ let mut a = self.state[src].get_f32x4();
3045
+ for elem in a.iter_mut() {
3046
+ *elem = elem.wasm_trunc();
3047
+ }
3048
+ self.state[dst].set_f32x4(a);
3049
+ ControlFlow::Continue(())
3050
+ }
3051
+
3052
+ fn vtrunc64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3053
+ let mut a = self.state[src].get_f64x2();
3054
+ for elem in a.iter_mut() {
3055
+ *elem = elem.wasm_trunc();
3056
+ }
3057
+ self.state[dst].set_f64x2(a);
3058
+ ControlFlow::Continue(())
3059
+ }
3060
+
3061
+ fn ffloor32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3062
+ let a = self.state[src].get_f32();
3063
+ self.state[dst].set_f32(a.wasm_floor());
3064
+ ControlFlow::Continue(())
3065
+ }
3066
+
3067
+ fn vfloor32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3068
+ let mut a = self.state[src].get_f32x4();
3069
+ for elem in a.iter_mut() {
3070
+ *elem = elem.wasm_floor();
3071
+ }
3072
+ self.state[dst].set_f32x4(a);
3073
+ ControlFlow::Continue(())
3074
+ }
3075
+
3076
+ fn vfloor64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3077
+ let mut a = self.state[src].get_f64x2();
3078
+ for elem in a.iter_mut() {
3079
+ *elem = elem.wasm_floor();
3080
+ }
3081
+ self.state[dst].set_f64x2(a);
3082
+ ControlFlow::Continue(())
3083
+ }
3084
+
3085
+ fn fceil32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3086
+ let a = self.state[src].get_f32();
3087
+ self.state[dst].set_f32(a.wasm_ceil());
3088
+ ControlFlow::Continue(())
3089
+ }
3090
+
3091
+ fn vceil32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3092
+ let mut a = self.state[src].get_f32x4();
3093
+ for elem in a.iter_mut() {
3094
+ *elem = elem.wasm_ceil();
3095
+ }
3096
+ self.state[dst].set_f32x4(a);
3097
+
3098
+ ControlFlow::Continue(())
3099
+ }
3100
+
3101
+ fn vceil64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3102
+ let mut a = self.state[src].get_f64x2();
3103
+ for elem in a.iter_mut() {
3104
+ *elem = elem.wasm_ceil();
3105
+ }
3106
+ self.state[dst].set_f64x2(a);
3107
+
3108
+ ControlFlow::Continue(())
3109
+ }
3110
+
3111
+ fn fnearest32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3112
+ let a = self.state[src].get_f32();
3113
+ self.state[dst].set_f32(a.wasm_nearest());
3114
+ ControlFlow::Continue(())
3115
+ }
3116
+
3117
+ fn vnearest32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3118
+ let mut a = self.state[src].get_f32x4();
3119
+ for elem in a.iter_mut() {
3120
+ *elem = elem.wasm_nearest();
3121
+ }
3122
+ self.state[dst].set_f32x4(a);
3123
+ ControlFlow::Continue(())
3124
+ }
3125
+
3126
+ fn vnearest64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3127
+ let mut a = self.state[src].get_f64x2();
3128
+ for elem in a.iter_mut() {
3129
+ *elem = elem.wasm_nearest();
3130
+ }
3131
+ self.state[dst].set_f64x2(a);
3132
+ ControlFlow::Continue(())
3133
+ }
3134
+
3135
+ fn fsqrt32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3136
+ let a = self.state[src].get_f32();
3137
+ self.state[dst].set_f32(a.wasm_sqrt());
3138
+ ControlFlow::Continue(())
3139
+ }
3140
+
3141
+ fn vsqrt32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3142
+ let mut a = self.state[src].get_f32x4();
3143
+ for elem in a.iter_mut() {
3144
+ *elem = elem.wasm_sqrt();
3145
+ }
3146
+ self.state[dst].set_f32x4(a);
3147
+ ControlFlow::Continue(())
3148
+ }
3149
+
3150
+ fn vsqrt64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3151
+ let mut a = self.state[src].get_f64x2();
3152
+ for elem in a.iter_mut() {
3153
+ *elem = elem.wasm_sqrt();
3154
+ }
3155
+ self.state[dst].set_f64x2(a);
3156
+ ControlFlow::Continue(())
3157
+ }
3158
+
3159
+ fn fneg32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3160
+ let a = self.state[src].get_f32();
3161
+ self.state[dst].set_f32(-a);
3162
+ ControlFlow::Continue(())
3163
+ }
3164
+
3165
+ fn fabs32(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3166
+ let a = self.state[src].get_f32();
3167
+ self.state[dst].set_f32(a.wasm_abs());
3168
+ ControlFlow::Continue(())
3169
+ }
3170
+
3171
+ fn fadd64(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3172
+ let a = self.state[operands.src1].get_f64();
3173
+ let b = self.state[operands.src2].get_f64();
3174
+ self.state[operands.dst].set_f64(a + b);
3175
+ ControlFlow::Continue(())
3176
+ }
3177
+
3178
+ fn fsub64(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3179
+ let a = self.state[operands.src1].get_f64();
3180
+ let b = self.state[operands.src2].get_f64();
3181
+ self.state[operands.dst].set_f64(a - b);
3182
+ ControlFlow::Continue(())
3183
+ }
3184
+
3185
+ fn fmul64(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3186
+ let a = self.state[operands.src1].get_f64();
3187
+ let b = self.state[operands.src2].get_f64();
3188
+ self.state[operands.dst].set_f64(a * b);
3189
+ ControlFlow::Continue(())
3190
+ }
3191
+
3192
+ fn fdiv64(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3193
+ let a = self.state[operands.src1].get_f64();
3194
+ let b = self.state[operands.src2].get_f64();
3195
+ self.state[operands.dst].set_f64(a / b);
3196
+ ControlFlow::Continue(())
3197
+ }
3198
+
3199
+ fn fmaximum64(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3200
+ let a = self.state[operands.src1].get_f64();
3201
+ let b = self.state[operands.src2].get_f64();
3202
+ self.state[operands.dst].set_f64(a.wasm_maximum(b));
3203
+ ControlFlow::Continue(())
3204
+ }
3205
+
3206
+ fn fminimum64(&mut self, operands: BinaryOperands<FReg>) -> ControlFlow<Done> {
3207
+ let a = self.state[operands.src1].get_f64();
3208
+ let b = self.state[operands.src2].get_f64();
3209
+ self.state[operands.dst].set_f64(a.wasm_minimum(b));
3210
+ ControlFlow::Continue(())
3211
+ }
3212
+
3213
+ fn ftrunc64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3214
+ let a = self.state[src].get_f64();
3215
+ self.state[dst].set_f64(a.wasm_trunc());
3216
+ ControlFlow::Continue(())
3217
+ }
3218
+
3219
+ fn ffloor64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3220
+ let a = self.state[src].get_f64();
3221
+ self.state[dst].set_f64(a.wasm_floor());
3222
+ ControlFlow::Continue(())
3223
+ }
3224
+
3225
+ fn fceil64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3226
+ let a = self.state[src].get_f64();
3227
+ self.state[dst].set_f64(a.wasm_ceil());
3228
+ ControlFlow::Continue(())
3229
+ }
3230
+
3231
+ fn fnearest64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3232
+ let a = self.state[src].get_f64();
3233
+ self.state[dst].set_f64(a.wasm_nearest());
3234
+ ControlFlow::Continue(())
3235
+ }
3236
+
3237
+ fn fsqrt64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3238
+ let a = self.state[src].get_f64();
3239
+ self.state[dst].set_f64(a.wasm_sqrt());
3240
+ ControlFlow::Continue(())
3241
+ }
3242
+
3243
+ fn fneg64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3244
+ let a = self.state[src].get_f64();
3245
+ self.state[dst].set_f64(-a);
3246
+ ControlFlow::Continue(())
3247
+ }
3248
+
3249
+ fn fabs64(&mut self, dst: FReg, src: FReg) -> ControlFlow<Done> {
3250
+ let a = self.state[src].get_f64();
3251
+ self.state[dst].set_f64(a.wasm_abs());
3252
+ ControlFlow::Continue(())
3253
+ }
3254
+
3255
+ fn vaddi8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3256
+ let mut a = self.state[operands.src1].get_i8x16();
3257
+ let b = self.state[operands.src2].get_i8x16();
3258
+ for (a, b) in a.iter_mut().zip(b) {
3259
+ *a = a.wrapping_add(b);
3260
+ }
3261
+ self.state[operands.dst].set_i8x16(a);
3262
+ ControlFlow::Continue(())
3263
+ }
3264
+
3265
+ fn vaddi16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3266
+ let mut a = self.state[operands.src1].get_i16x8();
3267
+ let b = self.state[operands.src2].get_i16x8();
3268
+ for (a, b) in a.iter_mut().zip(b) {
3269
+ *a = a.wrapping_add(b);
3270
+ }
3271
+ self.state[operands.dst].set_i16x8(a);
3272
+ ControlFlow::Continue(())
3273
+ }
3274
+
3275
+ fn vaddi32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3276
+ let mut a = self.state[operands.src1].get_i32x4();
3277
+ let b = self.state[operands.src2].get_i32x4();
3278
+ for (a, b) in a.iter_mut().zip(b) {
3279
+ *a = a.wrapping_add(b);
3280
+ }
3281
+ self.state[operands.dst].set_i32x4(a);
3282
+ ControlFlow::Continue(())
3283
+ }
3284
+
3285
+ fn vaddi64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3286
+ let mut a = self.state[operands.src1].get_i64x2();
3287
+ let b = self.state[operands.src2].get_i64x2();
3288
+ for (a, b) in a.iter_mut().zip(b) {
3289
+ *a = a.wrapping_add(b);
3290
+ }
3291
+ self.state[operands.dst].set_i64x2(a);
3292
+ ControlFlow::Continue(())
3293
+ }
3294
+
3295
+ fn vaddf32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3296
+ let mut a = self.state[operands.src1].get_f32x4();
3297
+ let b = self.state[operands.src2].get_f32x4();
3298
+ for (a, b) in a.iter_mut().zip(b) {
3299
+ *a += b;
3300
+ }
3301
+ self.state[operands.dst].set_f32x4(a);
3302
+ ControlFlow::Continue(())
3303
+ }
3304
+
3305
+ fn vaddf64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3306
+ let mut a = self.state[operands.src1].get_f64x2();
3307
+ let b = self.state[operands.src2].get_f64x2();
3308
+ for (a, b) in a.iter_mut().zip(b) {
3309
+ *a += b;
3310
+ }
3311
+ self.state[operands.dst].set_f64x2(a);
3312
+ ControlFlow::Continue(())
3313
+ }
3314
+
3315
+ fn vaddi8x16_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3316
+ let mut a = self.state[operands.src1].get_i8x16();
3317
+ let b = self.state[operands.src2].get_i8x16();
3318
+ for (a, b) in a.iter_mut().zip(b) {
3319
+ *a = (*a).saturating_add(b);
3320
+ }
3321
+ self.state[operands.dst].set_i8x16(a);
3322
+ ControlFlow::Continue(())
3323
+ }
3324
+
3325
+ fn vaddu8x16_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3326
+ let mut a = self.state[operands.src1].get_u8x16();
3327
+ let b = self.state[operands.src2].get_u8x16();
3328
+ for (a, b) in a.iter_mut().zip(b) {
3329
+ *a = (*a).saturating_add(b);
3330
+ }
3331
+ self.state[operands.dst].set_u8x16(a);
3332
+ ControlFlow::Continue(())
3333
+ }
3334
+
3335
+ fn vaddi16x8_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3336
+ let mut a = self.state[operands.src1].get_i16x8();
3337
+ let b = self.state[operands.src2].get_i16x8();
3338
+ for (a, b) in a.iter_mut().zip(b) {
3339
+ *a = (*a).saturating_add(b);
3340
+ }
3341
+ self.state[operands.dst].set_i16x8(a);
3342
+ ControlFlow::Continue(())
3343
+ }
3344
+
3345
+ fn vaddu16x8_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3346
+ let mut a = self.state[operands.src1].get_u16x8();
3347
+ let b = self.state[operands.src2].get_u16x8();
3348
+ for (a, b) in a.iter_mut().zip(b) {
3349
+ *a = (*a).saturating_add(b);
3350
+ }
3351
+ self.state[operands.dst].set_u16x8(a);
3352
+ ControlFlow::Continue(())
3353
+ }
3354
+
3355
+ fn vaddpairwisei16x8_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3356
+ let a = self.state[operands.src1].get_i16x8();
3357
+ let b = self.state[operands.src2].get_i16x8();
3358
+ let mut result = [0i16; 8];
3359
+ let half = result.len() / 2;
3360
+ for i in 0..half {
3361
+ result[i] = a[2 * i].wrapping_add(a[2 * i + 1]);
3362
+ result[i + half] = b[2 * i].wrapping_add(b[2 * i + 1]);
3363
+ }
3364
+ self.state[operands.dst].set_i16x8(result);
3365
+ ControlFlow::Continue(())
3366
+ }
3367
+
3368
+ fn vaddpairwisei32x4_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3369
+ let a = self.state[operands.src1].get_i32x4();
3370
+ let b = self.state[operands.src2].get_i32x4();
3371
+ let mut result = [0i32; 4];
3372
+ result[0] = a[0].wrapping_add(a[1]);
3373
+ result[1] = a[2].wrapping_add(a[3]);
3374
+ result[2] = b[0].wrapping_add(b[1]);
3375
+ result[3] = b[2].wrapping_add(b[3]);
3376
+ self.state[operands.dst].set_i32x4(result);
3377
+ ControlFlow::Continue(())
3378
+ }
3379
+
3380
+ fn vshli8x16(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3381
+ let a = self.state[operands.src1].get_i8x16();
3382
+ let b = self.state[operands.src2].get_u32();
3383
+ self.state[operands.dst].set_i8x16(a.map(|a| a.wrapping_shl(b)));
3384
+ ControlFlow::Continue(())
3385
+ }
3386
+
3387
+ fn vshli16x8(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3388
+ let a = self.state[operands.src1].get_i16x8();
3389
+ let b = self.state[operands.src2].get_u32();
3390
+ self.state[operands.dst].set_i16x8(a.map(|a| a.wrapping_shl(b)));
3391
+ ControlFlow::Continue(())
3392
+ }
3393
+
3394
+ fn vshli32x4(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3395
+ let a = self.state[operands.src1].get_i32x4();
3396
+ let b = self.state[operands.src2].get_u32();
3397
+ self.state[operands.dst].set_i32x4(a.map(|a| a.wrapping_shl(b)));
3398
+ ControlFlow::Continue(())
3399
+ }
3400
+
3401
+ fn vshli64x2(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3402
+ let a = self.state[operands.src1].get_i64x2();
3403
+ let b = self.state[operands.src2].get_u32();
3404
+ self.state[operands.dst].set_i64x2(a.map(|a| a.wrapping_shl(b)));
3405
+ ControlFlow::Continue(())
3406
+ }
3407
+
3408
+ fn vshri8x16_s(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3409
+ let a = self.state[operands.src1].get_i8x16();
3410
+ let b = self.state[operands.src2].get_u32();
3411
+ self.state[operands.dst].set_i8x16(a.map(|a| a.wrapping_shr(b)));
3412
+ ControlFlow::Continue(())
3413
+ }
3414
+
3415
+ fn vshri16x8_s(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3416
+ let a = self.state[operands.src1].get_i16x8();
3417
+ let b = self.state[operands.src2].get_u32();
3418
+ self.state[operands.dst].set_i16x8(a.map(|a| a.wrapping_shr(b)));
3419
+ ControlFlow::Continue(())
3420
+ }
3421
+
3422
+ fn vshri32x4_s(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3423
+ let a = self.state[operands.src1].get_i32x4();
3424
+ let b = self.state[operands.src2].get_u32();
3425
+ self.state[operands.dst].set_i32x4(a.map(|a| a.wrapping_shr(b)));
3426
+ ControlFlow::Continue(())
3427
+ }
3428
+
3429
+ fn vshri64x2_s(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3430
+ let a = self.state[operands.src1].get_i64x2();
3431
+ let b = self.state[operands.src2].get_u32();
3432
+ self.state[operands.dst].set_i64x2(a.map(|a| a.wrapping_shr(b)));
3433
+ ControlFlow::Continue(())
3434
+ }
3435
+
3436
+ fn vshri8x16_u(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3437
+ let a = self.state[operands.src1].get_u8x16();
3438
+ let b = self.state[operands.src2].get_u32();
3439
+ self.state[operands.dst].set_u8x16(a.map(|a| a.wrapping_shr(b)));
3440
+ ControlFlow::Continue(())
3441
+ }
3442
+
3443
+ fn vshri16x8_u(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3444
+ let a = self.state[operands.src1].get_u16x8();
3445
+ let b = self.state[operands.src2].get_u32();
3446
+ self.state[operands.dst].set_u16x8(a.map(|a| a.wrapping_shr(b)));
3447
+ ControlFlow::Continue(())
3448
+ }
3449
+
3450
+ fn vshri32x4_u(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3451
+ let a = self.state[operands.src1].get_u32x4();
3452
+ let b = self.state[operands.src2].get_u32();
3453
+ self.state[operands.dst].set_u32x4(a.map(|a| a.wrapping_shr(b)));
3454
+ ControlFlow::Continue(())
3455
+ }
3456
+
3457
+ fn vshri64x2_u(&mut self, operands: BinaryOperands<VReg, VReg, XReg>) -> ControlFlow<Done> {
3458
+ let a = self.state[operands.src1].get_u64x2();
3459
+ let b = self.state[operands.src2].get_u32();
3460
+ self.state[operands.dst].set_u64x2(a.map(|a| a.wrapping_shr(b)));
3461
+ ControlFlow::Continue(())
3462
+ }
3463
+
3464
+ fn vconst128(&mut self, dst: VReg, val: u128) -> ControlFlow<Done> {
3465
+ self.state[dst].set_u128(val);
3466
+ ControlFlow::Continue(())
3467
+ }
3468
+
3469
+ fn vsplatx8(&mut self, dst: VReg, src: XReg) -> ControlFlow<Done> {
3470
+ let val = self.state[src].get_u32() as u8;
3471
+ self.state[dst].set_u8x16([val; 16]);
3472
+ ControlFlow::Continue(())
3473
+ }
3474
+
3475
+ fn vsplatx16(&mut self, dst: VReg, src: XReg) -> ControlFlow<Done> {
3476
+ let val = self.state[src].get_u32() as u16;
3477
+ self.state[dst].set_u16x8([val; 8]);
3478
+ ControlFlow::Continue(())
3479
+ }
3480
+
3481
+ fn vsplatx32(&mut self, dst: VReg, src: XReg) -> ControlFlow<Done> {
3482
+ let val = self.state[src].get_u32();
3483
+ self.state[dst].set_u32x4([val; 4]);
3484
+ ControlFlow::Continue(())
3485
+ }
3486
+
3487
+ fn vsplatx64(&mut self, dst: VReg, src: XReg) -> ControlFlow<Done> {
3488
+ let val = self.state[src].get_u64();
3489
+ self.state[dst].set_u64x2([val; 2]);
3490
+ ControlFlow::Continue(())
3491
+ }
3492
+
3493
+ fn vsplatf32(&mut self, dst: VReg, src: FReg) -> ControlFlow<Done> {
3494
+ let val = self.state[src].get_f32();
3495
+ self.state[dst].set_f32x4([val; 4]);
3496
+ ControlFlow::Continue(())
3497
+ }
3498
+
3499
+ fn vsplatf64(&mut self, dst: VReg, src: FReg) -> ControlFlow<Done> {
3500
+ let val = self.state[src].get_f64();
3501
+ self.state[dst].set_f64x2([val; 2]);
3502
+ ControlFlow::Continue(())
3503
+ }
3504
+
3505
+ fn vload8x8_s_offset32(&mut self, dst: VReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
3506
+ let val = unsafe { self.load::<[i8; 8]>(ptr, offset) };
3507
+ self.state[dst].set_i16x8(val.map(|i| i.into()));
3508
+ ControlFlow::Continue(())
3509
+ }
3510
+
3511
+ fn vload8x8_u_offset32(&mut self, dst: VReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
3512
+ let val = unsafe { self.load::<[u8; 8]>(ptr, offset) };
3513
+ self.state[dst].set_u16x8(val.map(|i| i.into()));
3514
+ ControlFlow::Continue(())
3515
+ }
3516
+
3517
+ fn vload16x4le_s_offset32(&mut self, dst: VReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
3518
+ let val = unsafe { self.load::<[i16; 4]>(ptr, offset) };
3519
+ self.state[dst].set_i32x4(val.map(|i| i16::from_le(i).into()));
3520
+ ControlFlow::Continue(())
3521
+ }
3522
+
3523
+ fn vload16x4le_u_offset32(&mut self, dst: VReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
3524
+ let val = unsafe { self.load::<[u16; 4]>(ptr, offset) };
3525
+ self.state[dst].set_u32x4(val.map(|i| u16::from_le(i).into()));
3526
+ ControlFlow::Continue(())
3527
+ }
3528
+
3529
+ fn vload32x2le_s_offset32(&mut self, dst: VReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
3530
+ let val = unsafe { self.load::<[i32; 2]>(ptr, offset) };
3531
+ self.state[dst].set_i64x2(val.map(|i| i32::from_le(i).into()));
3532
+ ControlFlow::Continue(())
3533
+ }
3534
+
3535
+ fn vload32x2le_u_offset32(&mut self, dst: VReg, ptr: XReg, offset: i32) -> ControlFlow<Done> {
3536
+ let val = unsafe { self.load::<[u32; 2]>(ptr, offset) };
3537
+ self.state[dst].set_u64x2(val.map(|i| u32::from_le(i).into()));
3538
+ ControlFlow::Continue(())
3539
+ }
3540
+
3541
+ fn vband128(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3542
+ let a = self.state[operands.src1].get_u128();
3543
+ let b = self.state[operands.src2].get_u128();
3544
+ self.state[operands.dst].set_u128(a & b);
3545
+ ControlFlow::Continue(())
3546
+ }
3547
+
3548
+ fn vbor128(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3549
+ let a = self.state[operands.src1].get_u128();
3550
+ let b = self.state[operands.src2].get_u128();
3551
+ self.state[operands.dst].set_u128(a | b);
3552
+ ControlFlow::Continue(())
3553
+ }
3554
+
3555
+ fn vbxor128(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3556
+ let a = self.state[operands.src1].get_u128();
3557
+ let b = self.state[operands.src2].get_u128();
3558
+ self.state[operands.dst].set_u128(a ^ b);
3559
+ ControlFlow::Continue(())
3560
+ }
3561
+
3562
+ fn vbnot128(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3563
+ let a = self.state[src].get_u128();
3564
+ self.state[dst].set_u128(!a);
3565
+ ControlFlow::Continue(())
3566
+ }
3567
+
3568
+ fn vbitselect128(&mut self, dst: VReg, c: VReg, x: VReg, y: VReg) -> ControlFlow<Done> {
3569
+ let c = self.state[c].get_u128();
3570
+ let x = self.state[x].get_u128();
3571
+ let y = self.state[y].get_u128();
3572
+ self.state[dst].set_u128((c & x) | (!c & y));
3573
+ ControlFlow::Continue(())
3574
+ }
3575
+
3576
+ fn vbitmask8x16(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3577
+ let a = self.state[src].get_u8x16();
3578
+ let mut result = 0;
3579
+ for item in a.iter().rev() {
3580
+ result <<= 1;
3581
+ result |= (*item >> 7) as u32;
3582
+ }
3583
+ self.state[dst].set_u32(result);
3584
+ ControlFlow::Continue(())
3585
+ }
3586
+
3587
+ fn vbitmask16x8(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3588
+ let a = self.state[src].get_u16x8();
3589
+ let mut result = 0;
3590
+ for item in a.iter().rev() {
3591
+ result <<= 1;
3592
+ result |= (*item >> 15) as u32;
3593
+ }
3594
+ self.state[dst].set_u32(result);
3595
+ ControlFlow::Continue(())
3596
+ }
3597
+
3598
+ fn vbitmask32x4(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3599
+ let a = self.state[src].get_u32x4();
3600
+ let mut result = 0;
3601
+ for item in a.iter().rev() {
3602
+ result <<= 1;
3603
+ result |= *item >> 31;
3604
+ }
3605
+ self.state[dst].set_u32(result);
3606
+ ControlFlow::Continue(())
3607
+ }
3608
+
3609
+ fn vbitmask64x2(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3610
+ let a = self.state[src].get_u64x2();
3611
+ let mut result = 0;
3612
+ for item in a.iter().rev() {
3613
+ result <<= 1;
3614
+ result |= (*item >> 63) as u32;
3615
+ }
3616
+ self.state[dst].set_u32(result);
3617
+ ControlFlow::Continue(())
3618
+ }
3619
+
3620
+ fn valltrue8x16(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3621
+ let a = self.state[src].get_u8x16();
3622
+ let result = a.iter().all(|a| *a != 0);
3623
+ self.state[dst].set_u32(u32::from(result));
3624
+ ControlFlow::Continue(())
3625
+ }
3626
+
3627
+ fn valltrue16x8(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3628
+ let a = self.state[src].get_u16x8();
3629
+ let result = a.iter().all(|a| *a != 0);
3630
+ self.state[dst].set_u32(u32::from(result));
3631
+ ControlFlow::Continue(())
3632
+ }
3633
+
3634
+ fn valltrue32x4(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3635
+ let a = self.state[src].get_u32x4();
3636
+ let result = a.iter().all(|a| *a != 0);
3637
+ self.state[dst].set_u32(u32::from(result));
3638
+ ControlFlow::Continue(())
3639
+ }
3640
+
3641
+ fn valltrue64x2(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3642
+ let a = self.state[src].get_u64x2();
3643
+ let result = a.iter().all(|a| *a != 0);
3644
+ self.state[dst].set_u32(u32::from(result));
3645
+ ControlFlow::Continue(())
3646
+ }
3647
+
3648
+ fn vanytrue8x16(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3649
+ let a = self.state[src].get_u8x16();
3650
+ let result = a.iter().any(|a| *a != 0);
3651
+ self.state[dst].set_u32(u32::from(result));
3652
+ ControlFlow::Continue(())
3653
+ }
3654
+
3655
+ fn vanytrue16x8(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3656
+ let a = self.state[src].get_u16x8();
3657
+ let result = a.iter().any(|a| *a != 0);
3658
+ self.state[dst].set_u32(u32::from(result));
3659
+ ControlFlow::Continue(())
3660
+ }
3661
+
3662
+ fn vanytrue32x4(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3663
+ let a = self.state[src].get_u32x4();
3664
+ let result = a.iter().any(|a| *a != 0);
3665
+ self.state[dst].set_u32(u32::from(result));
3666
+ ControlFlow::Continue(())
3667
+ }
3668
+
3669
+ fn vanytrue64x2(&mut self, dst: XReg, src: VReg) -> ControlFlow<Done> {
3670
+ let a = self.state[src].get_u64x2();
3671
+ let result = a.iter().any(|a| *a != 0);
3672
+ self.state[dst].set_u32(u32::from(result));
3673
+ ControlFlow::Continue(())
3674
+ }
3675
+
3676
+ fn vf32x4_from_i32x4_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3677
+ let a = self.state[src].get_i32x4();
3678
+ self.state[dst].set_f32x4(a.map(|i| i as f32));
3679
+ ControlFlow::Continue(())
3680
+ }
3681
+
3682
+ fn vf32x4_from_i32x4_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3683
+ let a = self.state[src].get_u32x4();
3684
+ self.state[dst].set_f32x4(a.map(|i| i as f32));
3685
+ ControlFlow::Continue(())
3686
+ }
3687
+
3688
+ fn vf64x2_from_i64x2_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3689
+ let a = self.state[src].get_i64x2();
3690
+ self.state[dst].set_f64x2(a.map(|i| i as f64));
3691
+ ControlFlow::Continue(())
3692
+ }
3693
+
3694
+ fn vf64x2_from_i64x2_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3695
+ let a = self.state[src].get_u64x2();
3696
+ self.state[dst].set_f64x2(a.map(|i| i as f64));
3697
+ ControlFlow::Continue(())
3698
+ }
3699
+
3700
+ fn vwidenlow8x16_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3701
+ let a = *self.state[src].get_i8x16().first_chunk().unwrap();
3702
+ self.state[dst].set_i16x8(a.map(|i| i.into()));
3703
+ ControlFlow::Continue(())
3704
+ }
3705
+
3706
+ fn vwidenlow8x16_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3707
+ let a = *self.state[src].get_u8x16().first_chunk().unwrap();
3708
+ self.state[dst].set_u16x8(a.map(|i| i.into()));
3709
+ ControlFlow::Continue(())
3710
+ }
3711
+
3712
+ fn vwidenlow16x8_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3713
+ let a = *self.state[src].get_i16x8().first_chunk().unwrap();
3714
+ self.state[dst].set_i32x4(a.map(|i| i.into()));
3715
+ ControlFlow::Continue(())
3716
+ }
3717
+
3718
+ fn vwidenlow16x8_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3719
+ let a = *self.state[src].get_u16x8().first_chunk().unwrap();
3720
+ self.state[dst].set_u32x4(a.map(|i| i.into()));
3721
+ ControlFlow::Continue(())
3722
+ }
3723
+
3724
+ fn vwidenlow32x4_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3725
+ let a = *self.state[src].get_i32x4().first_chunk().unwrap();
3726
+ self.state[dst].set_i64x2(a.map(|i| i.into()));
3727
+ ControlFlow::Continue(())
3728
+ }
3729
+
3730
+ fn vwidenlow32x4_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3731
+ let a = *self.state[src].get_u32x4().first_chunk().unwrap();
3732
+ self.state[dst].set_u64x2(a.map(|i| i.into()));
3733
+ ControlFlow::Continue(())
3734
+ }
3735
+
3736
+ fn vwidenhigh8x16_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3737
+ let a = *self.state[src].get_i8x16().last_chunk().unwrap();
3738
+ self.state[dst].set_i16x8(a.map(|i| i.into()));
3739
+ ControlFlow::Continue(())
3740
+ }
3741
+
3742
+ fn vwidenhigh8x16_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3743
+ let a = *self.state[src].get_u8x16().last_chunk().unwrap();
3744
+ self.state[dst].set_u16x8(a.map(|i| i.into()));
3745
+ ControlFlow::Continue(())
3746
+ }
3747
+
3748
+ fn vwidenhigh16x8_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3749
+ let a = *self.state[src].get_i16x8().last_chunk().unwrap();
3750
+ self.state[dst].set_i32x4(a.map(|i| i.into()));
3751
+ ControlFlow::Continue(())
3752
+ }
3753
+
3754
+ fn vwidenhigh16x8_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3755
+ let a = *self.state[src].get_u16x8().last_chunk().unwrap();
3756
+ self.state[dst].set_u32x4(a.map(|i| i.into()));
3757
+ ControlFlow::Continue(())
3758
+ }
3759
+
3760
+ fn vwidenhigh32x4_s(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3761
+ let a = *self.state[src].get_i32x4().last_chunk().unwrap();
3762
+ self.state[dst].set_i64x2(a.map(|i| i.into()));
3763
+ ControlFlow::Continue(())
3764
+ }
3765
+
3766
+ fn vwidenhigh32x4_u(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3767
+ let a = *self.state[src].get_u32x4().last_chunk().unwrap();
3768
+ self.state[dst].set_u64x2(a.map(|i| i.into()));
3769
+ ControlFlow::Continue(())
3770
+ }
3771
+
3772
+ fn vnarrow16x8_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3773
+ let a = self.state[operands.src1].get_i16x8();
3774
+ let b = self.state[operands.src2].get_i16x8();
3775
+ let mut result = [0; 16];
3776
+ for (i, d) in a.iter().chain(&b).zip(&mut result) {
3777
+ *d = (*i)
3778
+ .try_into()
3779
+ .unwrap_or(if *i < 0 { i8::MIN } else { i8::MAX });
3780
+ }
3781
+ self.state[operands.dst].set_i8x16(result);
3782
+ ControlFlow::Continue(())
3783
+ }
3784
+
3785
+ fn vnarrow16x8_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3786
+ let a = self.state[operands.src1].get_i16x8();
3787
+ let b = self.state[operands.src2].get_i16x8();
3788
+ let mut result = [0; 16];
3789
+ for (i, d) in a.iter().chain(&b).zip(&mut result) {
3790
+ *d = (*i)
3791
+ .try_into()
3792
+ .unwrap_or(if *i < 0 { u8::MIN } else { u8::MAX });
3793
+ }
3794
+ self.state[operands.dst].set_u8x16(result);
3795
+ ControlFlow::Continue(())
3796
+ }
3797
+
3798
+ fn vnarrow32x4_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3799
+ let a = self.state[operands.src1].get_i32x4();
3800
+ let b = self.state[operands.src2].get_i32x4();
3801
+ let mut result = [0; 8];
3802
+ for (i, d) in a.iter().chain(&b).zip(&mut result) {
3803
+ *d = (*i)
3804
+ .try_into()
3805
+ .unwrap_or(if *i < 0 { i16::MIN } else { i16::MAX });
3806
+ }
3807
+ self.state[operands.dst].set_i16x8(result);
3808
+ ControlFlow::Continue(())
3809
+ }
3810
+
3811
+ fn vnarrow32x4_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3812
+ let a = self.state[operands.src1].get_i32x4();
3813
+ let b = self.state[operands.src2].get_i32x4();
3814
+ let mut result = [0; 8];
3815
+ for (i, d) in a.iter().chain(&b).zip(&mut result) {
3816
+ *d = (*i)
3817
+ .try_into()
3818
+ .unwrap_or(if *i < 0 { u16::MIN } else { u16::MAX });
3819
+ }
3820
+ self.state[operands.dst].set_u16x8(result);
3821
+ ControlFlow::Continue(())
3822
+ }
3823
+
3824
+ fn vfpromotelow(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3825
+ let a = self.state[src].get_f32x4();
3826
+ self.state[dst].set_f64x2([a[0].into(), a[1].into()]);
3827
+ ControlFlow::Continue(())
3828
+ }
3829
+
3830
+ fn vfdemote(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3831
+ let a = self.state[src].get_f64x2();
3832
+ self.state[dst].set_f32x4([a[0] as f32, a[1] as f32, 0.0, 0.0]);
3833
+ ControlFlow::Continue(())
3834
+ }
3835
+
3836
+ fn vsubi8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3837
+ let mut a = self.state[operands.src1].get_i8x16();
3838
+ let b = self.state[operands.src2].get_i8x16();
3839
+ for (a, b) in a.iter_mut().zip(b) {
3840
+ *a = a.wrapping_sub(b);
3841
+ }
3842
+ self.state[operands.dst].set_i8x16(a);
3843
+ ControlFlow::Continue(())
3844
+ }
3845
+
3846
+ fn vsubi16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3847
+ let mut a = self.state[operands.src1].get_i16x8();
3848
+ let b = self.state[operands.src2].get_i16x8();
3849
+ for (a, b) in a.iter_mut().zip(b) {
3850
+ *a = a.wrapping_sub(b);
3851
+ }
3852
+ self.state[operands.dst].set_i16x8(a);
3853
+ ControlFlow::Continue(())
3854
+ }
3855
+
3856
+ fn vsubi32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3857
+ let mut a = self.state[operands.src1].get_i32x4();
3858
+ let b = self.state[operands.src2].get_i32x4();
3859
+ for (a, b) in a.iter_mut().zip(b) {
3860
+ *a = a.wrapping_sub(b);
3861
+ }
3862
+ self.state[operands.dst].set_i32x4(a);
3863
+ ControlFlow::Continue(())
3864
+ }
3865
+
3866
+ fn vsubi64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3867
+ let mut a = self.state[operands.src1].get_i64x2();
3868
+ let b = self.state[operands.src2].get_i64x2();
3869
+ for (a, b) in a.iter_mut().zip(b) {
3870
+ *a = a.wrapping_sub(b);
3871
+ }
3872
+ self.state[operands.dst].set_i64x2(a);
3873
+ ControlFlow::Continue(())
3874
+ }
3875
+
3876
+ fn vsubi8x16_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3877
+ let mut a = self.state[operands.src1].get_i8x16();
3878
+ let b = self.state[operands.src2].get_i8x16();
3879
+ for (a, b) in a.iter_mut().zip(b) {
3880
+ *a = a.saturating_sub(b);
3881
+ }
3882
+ self.state[operands.dst].set_i8x16(a);
3883
+ ControlFlow::Continue(())
3884
+ }
3885
+
3886
+ fn vsubu8x16_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3887
+ let mut a = self.state[operands.src1].get_u8x16();
3888
+ let b = self.state[operands.src2].get_u8x16();
3889
+ for (a, b) in a.iter_mut().zip(b) {
3890
+ *a = a.saturating_sub(b);
3891
+ }
3892
+ self.state[operands.dst].set_u8x16(a);
3893
+ ControlFlow::Continue(())
3894
+ }
3895
+
3896
+ fn vsubi16x8_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3897
+ let mut a = self.state[operands.src1].get_i16x8();
3898
+ let b = self.state[operands.src2].get_i16x8();
3899
+ for (a, b) in a.iter_mut().zip(b) {
3900
+ *a = a.saturating_sub(b);
3901
+ }
3902
+ self.state[operands.dst].set_i16x8(a);
3903
+ ControlFlow::Continue(())
3904
+ }
3905
+
3906
+ fn vsubu16x8_sat(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3907
+ let mut a = self.state[operands.src1].get_u16x8();
3908
+ let b = self.state[operands.src2].get_u16x8();
3909
+ for (a, b) in a.iter_mut().zip(b) {
3910
+ *a = a.saturating_sub(b);
3911
+ }
3912
+ self.state[operands.dst].set_u16x8(a);
3913
+ ControlFlow::Continue(())
3914
+ }
3915
+
3916
+ fn vsubf64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3917
+ let mut a = self.state[operands.src1].get_f64x2();
3918
+ let b = self.state[operands.src2].get_f64x2();
3919
+ for (a, b) in a.iter_mut().zip(b) {
3920
+ *a = *a - b;
3921
+ }
3922
+ self.state[operands.dst].set_f64x2(a);
3923
+ ControlFlow::Continue(())
3924
+ }
3925
+
3926
+ fn vmuli8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3927
+ let mut a = self.state[operands.src1].get_i8x16();
3928
+ let b = self.state[operands.src2].get_i8x16();
3929
+ for (a, b) in a.iter_mut().zip(b) {
3930
+ *a = a.wrapping_mul(b);
3931
+ }
3932
+ self.state[operands.dst].set_i8x16(a);
3933
+ ControlFlow::Continue(())
3934
+ }
3935
+
3936
+ fn vmuli16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3937
+ let mut a = self.state[operands.src1].get_i16x8();
3938
+ let b = self.state[operands.src2].get_i16x8();
3939
+ for (a, b) in a.iter_mut().zip(b) {
3940
+ *a = a.wrapping_mul(b);
3941
+ }
3942
+ self.state[operands.dst].set_i16x8(a);
3943
+ ControlFlow::Continue(())
3944
+ }
3945
+
3946
+ fn vmuli32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3947
+ let mut a = self.state[operands.src1].get_i32x4();
3948
+ let b = self.state[operands.src2].get_i32x4();
3949
+ for (a, b) in a.iter_mut().zip(b) {
3950
+ *a = a.wrapping_mul(b);
3951
+ }
3952
+ self.state[operands.dst].set_i32x4(a);
3953
+ ControlFlow::Continue(())
3954
+ }
3955
+
3956
+ fn vmuli64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3957
+ let mut a = self.state[operands.src1].get_i64x2();
3958
+ let b = self.state[operands.src2].get_i64x2();
3959
+ for (a, b) in a.iter_mut().zip(b) {
3960
+ *a = a.wrapping_mul(b);
3961
+ }
3962
+ self.state[operands.dst].set_i64x2(a);
3963
+ ControlFlow::Continue(())
3964
+ }
3965
+
3966
+ fn vmulf64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3967
+ let mut a = self.state[operands.src1].get_f64x2();
3968
+ let b = self.state[operands.src2].get_f64x2();
3969
+ for (a, b) in a.iter_mut().zip(b) {
3970
+ *a = *a * b;
3971
+ }
3972
+ self.state[operands.dst].set_f64x2(a);
3973
+ ControlFlow::Continue(())
3974
+ }
3975
+
3976
+ fn vqmulrsi16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
3977
+ let mut a = self.state[operands.src1].get_i16x8();
3978
+ let b = self.state[operands.src2].get_i16x8();
3979
+ const MIN: i32 = i16::MIN as i32;
3980
+ const MAX: i32 = i16::MAX as i32;
3981
+ for (a, b) in a.iter_mut().zip(b) {
3982
+ let r = (i32::from(*a) * i32::from(b) + (1 << 14)) >> 15;
3983
+ *a = r.clamp(MIN, MAX) as i16;
3984
+ }
3985
+ self.state[operands.dst].set_i16x8(a);
3986
+ ControlFlow::Continue(())
3987
+ }
3988
+
3989
+ fn vpopcnt8x16(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
3990
+ let a = self.state[src].get_u8x16();
3991
+ self.state[dst].set_u8x16(a.map(|i| i.count_ones() as u8));
3992
+ ControlFlow::Continue(())
3993
+ }
3994
+
3995
+ fn xextractv8x16(&mut self, dst: XReg, src: VReg, lane: u8) -> ControlFlow<Done> {
3996
+ let a = unsafe { *self.state[src].get_u8x16().get_unchecked(usize::from(lane)) };
3997
+ self.state[dst].set_u32(u32::from(a));
3998
+ ControlFlow::Continue(())
3999
+ }
4000
+
4001
+ fn xextractv16x8(&mut self, dst: XReg, src: VReg, lane: u8) -> ControlFlow<Done> {
4002
+ let a = unsafe { *self.state[src].get_u16x8().get_unchecked(usize::from(lane)) };
4003
+ self.state[dst].set_u32(u32::from(a));
4004
+ ControlFlow::Continue(())
4005
+ }
4006
+
4007
+ fn xextractv32x4(&mut self, dst: XReg, src: VReg, lane: u8) -> ControlFlow<Done> {
4008
+ let a = unsafe { *self.state[src].get_u32x4().get_unchecked(usize::from(lane)) };
4009
+ self.state[dst].set_u32(a);
4010
+ ControlFlow::Continue(())
4011
+ }
4012
+
4013
+ fn xextractv64x2(&mut self, dst: XReg, src: VReg, lane: u8) -> ControlFlow<Done> {
4014
+ let a = unsafe { *self.state[src].get_u64x2().get_unchecked(usize::from(lane)) };
4015
+ self.state[dst].set_u64(a);
4016
+ ControlFlow::Continue(())
4017
+ }
4018
+
4019
+ fn fextractv32x4(&mut self, dst: FReg, src: VReg, lane: u8) -> ControlFlow<Done> {
4020
+ let a = unsafe { *self.state[src].get_f32x4().get_unchecked(usize::from(lane)) };
4021
+ self.state[dst].set_f32(a);
4022
+ ControlFlow::Continue(())
4023
+ }
4024
+
4025
+ fn fextractv64x2(&mut self, dst: FReg, src: VReg, lane: u8) -> ControlFlow<Done> {
4026
+ let a = unsafe { *self.state[src].get_f64x2().get_unchecked(usize::from(lane)) };
4027
+ self.state[dst].set_f64(a);
4028
+ ControlFlow::Continue(())
4029
+ }
4030
+
4031
+ fn vinsertx8(
4032
+ &mut self,
4033
+ operands: BinaryOperands<VReg, VReg, XReg>,
4034
+ lane: u8,
4035
+ ) -> ControlFlow<Done> {
4036
+ let mut a = self.state[operands.src1].get_u8x16();
4037
+ let b = self.state[operands.src2].get_u32() as u8;
4038
+ unsafe {
4039
+ *a.get_unchecked_mut(usize::from(lane)) = b;
4040
+ }
4041
+ self.state[operands.dst].set_u8x16(a);
4042
+ ControlFlow::Continue(())
4043
+ }
4044
+
4045
+ fn vinsertx16(
4046
+ &mut self,
4047
+ operands: BinaryOperands<VReg, VReg, XReg>,
4048
+ lane: u8,
4049
+ ) -> ControlFlow<Done> {
4050
+ let mut a = self.state[operands.src1].get_u16x8();
4051
+ let b = self.state[operands.src2].get_u32() as u16;
4052
+ unsafe {
4053
+ *a.get_unchecked_mut(usize::from(lane)) = b;
4054
+ }
4055
+ self.state[operands.dst].set_u16x8(a);
4056
+ ControlFlow::Continue(())
4057
+ }
4058
+
4059
+ fn vinsertx32(
4060
+ &mut self,
4061
+ operands: BinaryOperands<VReg, VReg, XReg>,
4062
+ lane: u8,
4063
+ ) -> ControlFlow<Done> {
4064
+ let mut a = self.state[operands.src1].get_u32x4();
4065
+ let b = self.state[operands.src2].get_u32();
4066
+ unsafe {
4067
+ *a.get_unchecked_mut(usize::from(lane)) = b;
4068
+ }
4069
+ self.state[operands.dst].set_u32x4(a);
4070
+ ControlFlow::Continue(())
4071
+ }
4072
+
4073
+ fn vinsertx64(
4074
+ &mut self,
4075
+ operands: BinaryOperands<VReg, VReg, XReg>,
4076
+ lane: u8,
4077
+ ) -> ControlFlow<Done> {
4078
+ let mut a = self.state[operands.src1].get_u64x2();
4079
+ let b = self.state[operands.src2].get_u64();
4080
+ unsafe {
4081
+ *a.get_unchecked_mut(usize::from(lane)) = b;
4082
+ }
4083
+ self.state[operands.dst].set_u64x2(a);
4084
+ ControlFlow::Continue(())
4085
+ }
4086
+
4087
+ fn vinsertf32(
4088
+ &mut self,
4089
+ operands: BinaryOperands<VReg, VReg, FReg>,
4090
+ lane: u8,
4091
+ ) -> ControlFlow<Done> {
4092
+ let mut a = self.state[operands.src1].get_f32x4();
4093
+ let b = self.state[operands.src2].get_f32();
4094
+ unsafe {
4095
+ *a.get_unchecked_mut(usize::from(lane)) = b;
4096
+ }
4097
+ self.state[operands.dst].set_f32x4(a);
4098
+ ControlFlow::Continue(())
4099
+ }
4100
+
4101
+ fn vinsertf64(
4102
+ &mut self,
4103
+ operands: BinaryOperands<VReg, VReg, FReg>,
4104
+ lane: u8,
4105
+ ) -> ControlFlow<Done> {
4106
+ let mut a = self.state[operands.src1].get_f64x2();
4107
+ let b = self.state[operands.src2].get_f64();
4108
+ unsafe {
4109
+ *a.get_unchecked_mut(usize::from(lane)) = b;
4110
+ }
4111
+ self.state[operands.dst].set_f64x2(a);
4112
+ ControlFlow::Continue(())
4113
+ }
4114
+
4115
+ fn veq8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4116
+ let a = self.state[operands.src1].get_u8x16();
4117
+ let b = self.state[operands.src2].get_u8x16();
4118
+ let mut c = [0; 16];
4119
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4120
+ *c = if a == b { u8::MAX } else { 0 };
4121
+ }
4122
+ self.state[operands.dst].set_u8x16(c);
4123
+ ControlFlow::Continue(())
4124
+ }
4125
+
4126
+ fn vneq8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4127
+ let a = self.state[operands.src1].get_u8x16();
4128
+ let b = self.state[operands.src2].get_u8x16();
4129
+ let mut c = [0; 16];
4130
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4131
+ *c = if a != b { u8::MAX } else { 0 };
4132
+ }
4133
+ self.state[operands.dst].set_u8x16(c);
4134
+ ControlFlow::Continue(())
4135
+ }
4136
+
4137
+ fn vslt8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4138
+ let a = self.state[operands.src1].get_i8x16();
4139
+ let b = self.state[operands.src2].get_i8x16();
4140
+ let mut c = [0; 16];
4141
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4142
+ *c = if a < b { u8::MAX } else { 0 };
4143
+ }
4144
+ self.state[operands.dst].set_u8x16(c);
4145
+ ControlFlow::Continue(())
4146
+ }
4147
+
4148
+ fn vslteq8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4149
+ let a = self.state[operands.src1].get_i8x16();
4150
+ let b = self.state[operands.src2].get_i8x16();
4151
+ let mut c = [0; 16];
4152
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4153
+ *c = if a <= b { u8::MAX } else { 0 };
4154
+ }
4155
+ self.state[operands.dst].set_u8x16(c);
4156
+ ControlFlow::Continue(())
4157
+ }
4158
+
4159
+ fn vult8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4160
+ let a = self.state[operands.src1].get_u8x16();
4161
+ let b = self.state[operands.src2].get_u8x16();
4162
+ let mut c = [0; 16];
4163
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4164
+ *c = if a < b { u8::MAX } else { 0 };
4165
+ }
4166
+ self.state[operands.dst].set_u8x16(c);
4167
+ ControlFlow::Continue(())
4168
+ }
4169
+
4170
+ fn vulteq8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4171
+ let a = self.state[operands.src1].get_u8x16();
4172
+ let b = self.state[operands.src2].get_u8x16();
4173
+ let mut c = [0; 16];
4174
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4175
+ *c = if a <= b { u8::MAX } else { 0 };
4176
+ }
4177
+ self.state[operands.dst].set_u8x16(c);
4178
+ ControlFlow::Continue(())
4179
+ }
4180
+
4181
+ fn veq16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4182
+ let a = self.state[operands.src1].get_u16x8();
4183
+ let b = self.state[operands.src2].get_u16x8();
4184
+ let mut c = [0; 8];
4185
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4186
+ *c = if a == b { u16::MAX } else { 0 };
4187
+ }
4188
+ self.state[operands.dst].set_u16x8(c);
4189
+ ControlFlow::Continue(())
4190
+ }
4191
+
4192
+ fn vneq16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4193
+ let a = self.state[operands.src1].get_u16x8();
4194
+ let b = self.state[operands.src2].get_u16x8();
4195
+ let mut c = [0; 8];
4196
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4197
+ *c = if a != b { u16::MAX } else { 0 };
4198
+ }
4199
+ self.state[operands.dst].set_u16x8(c);
4200
+ ControlFlow::Continue(())
4201
+ }
4202
+
4203
+ fn vslt16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4204
+ let a = self.state[operands.src1].get_i16x8();
4205
+ let b = self.state[operands.src2].get_i16x8();
4206
+ let mut c = [0; 8];
4207
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4208
+ *c = if a < b { u16::MAX } else { 0 };
4209
+ }
4210
+ self.state[operands.dst].set_u16x8(c);
4211
+ ControlFlow::Continue(())
4212
+ }
4213
+
4214
+ fn vslteq16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4215
+ let a = self.state[operands.src1].get_i16x8();
4216
+ let b = self.state[operands.src2].get_i16x8();
4217
+ let mut c = [0; 8];
4218
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4219
+ *c = if a <= b { u16::MAX } else { 0 };
4220
+ }
4221
+ self.state[operands.dst].set_u16x8(c);
4222
+ ControlFlow::Continue(())
4223
+ }
4224
+
4225
+ fn vult16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4226
+ let a = self.state[operands.src1].get_u16x8();
4227
+ let b = self.state[operands.src2].get_u16x8();
4228
+ let mut c = [0; 8];
4229
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4230
+ *c = if a < b { u16::MAX } else { 0 };
4231
+ }
4232
+ self.state[operands.dst].set_u16x8(c);
4233
+ ControlFlow::Continue(())
4234
+ }
4235
+
4236
+ fn vulteq16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4237
+ let a = self.state[operands.src1].get_u16x8();
4238
+ let b = self.state[operands.src2].get_u16x8();
4239
+ let mut c = [0; 8];
4240
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4241
+ *c = if a <= b { u16::MAX } else { 0 };
4242
+ }
4243
+ self.state[operands.dst].set_u16x8(c);
4244
+ ControlFlow::Continue(())
4245
+ }
4246
+
4247
+ fn veq32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4248
+ let a = self.state[operands.src1].get_u32x4();
4249
+ let b = self.state[operands.src2].get_u32x4();
4250
+ let mut c = [0; 4];
4251
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4252
+ *c = if a == b { u32::MAX } else { 0 };
4253
+ }
4254
+ self.state[operands.dst].set_u32x4(c);
4255
+ ControlFlow::Continue(())
4256
+ }
4257
+
4258
+ fn vneq32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4259
+ let a = self.state[operands.src1].get_u32x4();
4260
+ let b = self.state[operands.src2].get_u32x4();
4261
+ let mut c = [0; 4];
4262
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4263
+ *c = if a != b { u32::MAX } else { 0 };
4264
+ }
4265
+ self.state[operands.dst].set_u32x4(c);
4266
+ ControlFlow::Continue(())
4267
+ }
4268
+
4269
+ fn vslt32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4270
+ let a = self.state[operands.src1].get_i32x4();
4271
+ let b = self.state[operands.src2].get_i32x4();
4272
+ let mut c = [0; 4];
4273
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4274
+ *c = if a < b { u32::MAX } else { 0 };
4275
+ }
4276
+ self.state[operands.dst].set_u32x4(c);
4277
+ ControlFlow::Continue(())
4278
+ }
4279
+
4280
+ fn vslteq32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4281
+ let a = self.state[operands.src1].get_i32x4();
4282
+ let b = self.state[operands.src2].get_i32x4();
4283
+ let mut c = [0; 4];
4284
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4285
+ *c = if a <= b { u32::MAX } else { 0 };
4286
+ }
4287
+ self.state[operands.dst].set_u32x4(c);
4288
+ ControlFlow::Continue(())
4289
+ }
4290
+
4291
+ fn vult32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4292
+ let a = self.state[operands.src1].get_u32x4();
4293
+ let b = self.state[operands.src2].get_u32x4();
4294
+ let mut c = [0; 4];
4295
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4296
+ *c = if a < b { u32::MAX } else { 0 };
4297
+ }
4298
+ self.state[operands.dst].set_u32x4(c);
4299
+ ControlFlow::Continue(())
4300
+ }
4301
+
4302
+ fn vulteq32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4303
+ let a = self.state[operands.src1].get_u32x4();
4304
+ let b = self.state[operands.src2].get_u32x4();
4305
+ let mut c = [0; 4];
4306
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4307
+ *c = if a <= b { u32::MAX } else { 0 };
4308
+ }
4309
+ self.state[operands.dst].set_u32x4(c);
4310
+ ControlFlow::Continue(())
4311
+ }
4312
+
4313
+ fn veq64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4314
+ let a = self.state[operands.src1].get_u64x2();
4315
+ let b = self.state[operands.src2].get_u64x2();
4316
+ let mut c = [0; 2];
4317
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4318
+ *c = if a == b { u64::MAX } else { 0 };
4319
+ }
4320
+ self.state[operands.dst].set_u64x2(c);
4321
+ ControlFlow::Continue(())
4322
+ }
4323
+
4324
+ fn vneq64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4325
+ let a = self.state[operands.src1].get_u64x2();
4326
+ let b = self.state[operands.src2].get_u64x2();
4327
+ let mut c = [0; 2];
4328
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4329
+ *c = if a != b { u64::MAX } else { 0 };
4330
+ }
4331
+ self.state[operands.dst].set_u64x2(c);
4332
+ ControlFlow::Continue(())
4333
+ }
4334
+
4335
+ fn vslt64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4336
+ let a = self.state[operands.src1].get_i64x2();
4337
+ let b = self.state[operands.src2].get_i64x2();
4338
+ let mut c = [0; 2];
4339
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4340
+ *c = if a < b { u64::MAX } else { 0 };
4341
+ }
4342
+ self.state[operands.dst].set_u64x2(c);
4343
+ ControlFlow::Continue(())
4344
+ }
4345
+
4346
+ fn vslteq64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4347
+ let a = self.state[operands.src1].get_i64x2();
4348
+ let b = self.state[operands.src2].get_i64x2();
4349
+ let mut c = [0; 2];
4350
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4351
+ *c = if a <= b { u64::MAX } else { 0 };
4352
+ }
4353
+ self.state[operands.dst].set_u64x2(c);
4354
+ ControlFlow::Continue(())
4355
+ }
4356
+
4357
+ fn vult64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4358
+ let a = self.state[operands.src1].get_u64x2();
4359
+ let b = self.state[operands.src2].get_u64x2();
4360
+ let mut c = [0; 2];
4361
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4362
+ *c = if a < b { u64::MAX } else { 0 };
4363
+ }
4364
+ self.state[operands.dst].set_u64x2(c);
4365
+ ControlFlow::Continue(())
4366
+ }
4367
+
4368
+ fn vulteq64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4369
+ let a = self.state[operands.src1].get_u64x2();
4370
+ let b = self.state[operands.src2].get_u64x2();
4371
+ let mut c = [0; 2];
4372
+ for ((a, b), c) in a.iter().zip(&b).zip(&mut c) {
4373
+ *c = if a <= b { u64::MAX } else { 0 };
4374
+ }
4375
+ self.state[operands.dst].set_u64x2(c);
4376
+ ControlFlow::Continue(())
4377
+ }
4378
+
4379
+ fn vneg8x16(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4380
+ let a = self.state[src].get_i8x16();
4381
+ self.state[dst].set_i8x16(a.map(|i| i.wrapping_neg()));
4382
+ ControlFlow::Continue(())
4383
+ }
4384
+
4385
+ fn vneg16x8(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4386
+ let a = self.state[src].get_i16x8();
4387
+ self.state[dst].set_i16x8(a.map(|i| i.wrapping_neg()));
4388
+ ControlFlow::Continue(())
4389
+ }
4390
+
4391
+ fn vneg32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4392
+ let a = self.state[src].get_i32x4();
4393
+ self.state[dst].set_i32x4(a.map(|i| i.wrapping_neg()));
4394
+ ControlFlow::Continue(())
4395
+ }
4396
+
4397
+ fn vneg64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4398
+ let a = self.state[src].get_i64x2();
4399
+ self.state[dst].set_i64x2(a.map(|i| i.wrapping_neg()));
4400
+ ControlFlow::Continue(())
4401
+ }
4402
+
4403
+ fn vnegf64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4404
+ let a = self.state[src].get_f64x2();
4405
+ self.state[dst].set_f64x2(a.map(|i| -i));
4406
+ ControlFlow::Continue(())
4407
+ }
4408
+
4409
+ fn vmin8x16_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4410
+ let mut a = self.state[operands.src1].get_i8x16();
4411
+ let b = self.state[operands.src2].get_i8x16();
4412
+ for (a, b) in a.iter_mut().zip(&b) {
4413
+ *a = (*a).min(*b);
4414
+ }
4415
+ self.state[operands.dst].set_i8x16(a);
4416
+ ControlFlow::Continue(())
4417
+ }
4418
+
4419
+ fn vmin8x16_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4420
+ let mut a = self.state[operands.src1].get_u8x16();
4421
+ let b = self.state[operands.src2].get_u8x16();
4422
+ for (a, b) in a.iter_mut().zip(&b) {
4423
+ *a = (*a).min(*b);
4424
+ }
4425
+ self.state[operands.dst].set_u8x16(a);
4426
+ ControlFlow::Continue(())
4427
+ }
4428
+
4429
+ fn vmin16x8_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4430
+ let mut a = self.state[operands.src1].get_i16x8();
4431
+ let b = self.state[operands.src2].get_i16x8();
4432
+ for (a, b) in a.iter_mut().zip(&b) {
4433
+ *a = (*a).min(*b);
4434
+ }
4435
+ self.state[operands.dst].set_i16x8(a);
4436
+ ControlFlow::Continue(())
4437
+ }
4438
+
4439
+ fn vmin16x8_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4440
+ let mut a = self.state[operands.src1].get_u16x8();
4441
+ let b = self.state[operands.src2].get_u16x8();
4442
+ for (a, b) in a.iter_mut().zip(&b) {
4443
+ *a = (*a).min(*b);
4444
+ }
4445
+ self.state[operands.dst].set_u16x8(a);
4446
+ ControlFlow::Continue(())
4447
+ }
4448
+
4449
+ fn vmin32x4_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4450
+ let mut a = self.state[operands.src1].get_i32x4();
4451
+ let b = self.state[operands.src2].get_i32x4();
4452
+ for (a, b) in a.iter_mut().zip(&b) {
4453
+ *a = (*a).min(*b);
4454
+ }
4455
+ self.state[operands.dst].set_i32x4(a);
4456
+ ControlFlow::Continue(())
4457
+ }
4458
+
4459
+ fn vmin32x4_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4460
+ let mut a = self.state[operands.src1].get_u32x4();
4461
+ let b = self.state[operands.src2].get_u32x4();
4462
+ for (a, b) in a.iter_mut().zip(&b) {
4463
+ *a = (*a).min(*b);
4464
+ }
4465
+ self.state[operands.dst].set_u32x4(a);
4466
+ ControlFlow::Continue(())
4467
+ }
4468
+
4469
+ fn vmax8x16_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4470
+ let mut a = self.state[operands.src1].get_i8x16();
4471
+ let b = self.state[operands.src2].get_i8x16();
4472
+ for (a, b) in a.iter_mut().zip(&b) {
4473
+ *a = (*a).max(*b);
4474
+ }
4475
+ self.state[operands.dst].set_i8x16(a);
4476
+ ControlFlow::Continue(())
4477
+ }
4478
+
4479
+ fn vmax8x16_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4480
+ let mut a = self.state[operands.src1].get_u8x16();
4481
+ let b = self.state[operands.src2].get_u8x16();
4482
+ for (a, b) in a.iter_mut().zip(&b) {
4483
+ *a = (*a).max(*b);
4484
+ }
4485
+ self.state[operands.dst].set_u8x16(a);
4486
+ ControlFlow::Continue(())
4487
+ }
4488
+
4489
+ fn vmax16x8_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4490
+ let mut a = self.state[operands.src1].get_i16x8();
4491
+ let b = self.state[operands.src2].get_i16x8();
4492
+ for (a, b) in a.iter_mut().zip(&b) {
4493
+ *a = (*a).max(*b);
4494
+ }
4495
+ self.state[operands.dst].set_i16x8(a);
4496
+ ControlFlow::Continue(())
4497
+ }
4498
+
4499
+ fn vmax16x8_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4500
+ let mut a = self.state[operands.src1].get_u16x8();
4501
+ let b = self.state[operands.src2].get_u16x8();
4502
+ for (a, b) in a.iter_mut().zip(&b) {
4503
+ *a = (*a).max(*b);
4504
+ }
4505
+ self.state[operands.dst].set_u16x8(a);
4506
+ ControlFlow::Continue(())
4507
+ }
4508
+
4509
+ fn vmax32x4_s(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4510
+ let mut a = self.state[operands.src1].get_i32x4();
4511
+ let b = self.state[operands.src2].get_i32x4();
4512
+ for (a, b) in a.iter_mut().zip(&b) {
4513
+ *a = (*a).max(*b);
4514
+ }
4515
+ self.state[operands.dst].set_i32x4(a);
4516
+ ControlFlow::Continue(())
4517
+ }
4518
+
4519
+ fn vmax32x4_u(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4520
+ let mut a = self.state[operands.src1].get_u32x4();
4521
+ let b = self.state[operands.src2].get_u32x4();
4522
+ for (a, b) in a.iter_mut().zip(&b) {
4523
+ *a = (*a).max(*b);
4524
+ }
4525
+ self.state[operands.dst].set_u32x4(a);
4526
+ ControlFlow::Continue(())
4527
+ }
4528
+
4529
+ fn vabs8x16(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4530
+ let a = self.state[src].get_i8x16();
4531
+ self.state[dst].set_i8x16(a.map(|i| i.wrapping_abs()));
4532
+ ControlFlow::Continue(())
4533
+ }
4534
+
4535
+ fn vabs16x8(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4536
+ let a = self.state[src].get_i16x8();
4537
+ self.state[dst].set_i16x8(a.map(|i| i.wrapping_abs()));
4538
+ ControlFlow::Continue(())
4539
+ }
4540
+
4541
+ fn vabs32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4542
+ let a = self.state[src].get_i32x4();
4543
+ self.state[dst].set_i32x4(a.map(|i| i.wrapping_abs()));
4544
+ ControlFlow::Continue(())
4545
+ }
4546
+
4547
+ fn vabs64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4548
+ let a = self.state[src].get_i64x2();
4549
+ self.state[dst].set_i64x2(a.map(|i| i.wrapping_abs()));
4550
+ ControlFlow::Continue(())
4551
+ }
4552
+
4553
+ fn vabsf32x4(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4554
+ let a = self.state[src].get_f32x4();
4555
+ self.state[dst].set_f32x4(a.map(|i| i.wasm_abs()));
4556
+ ControlFlow::Continue(())
4557
+ }
4558
+
4559
+ fn vabsf64x2(&mut self, dst: VReg, src: VReg) -> ControlFlow<Done> {
4560
+ let a = self.state[src].get_f64x2();
4561
+ self.state[dst].set_f64x2(a.map(|i| i.wasm_abs()));
4562
+ ControlFlow::Continue(())
4563
+ }
4564
+
4565
+ fn vmaximumf32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4566
+ let mut a = self.state[operands.src1].get_f32x4();
4567
+ let b = self.state[operands.src2].get_f32x4();
4568
+ for (a, b) in a.iter_mut().zip(&b) {
4569
+ *a = a.wasm_maximum(*b);
4570
+ }
4571
+ self.state[operands.dst].set_f32x4(a);
4572
+ ControlFlow::Continue(())
4573
+ }
4574
+
4575
+ fn vmaximumf64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4576
+ let mut a = self.state[operands.src1].get_f64x2();
4577
+ let b = self.state[operands.src2].get_f64x2();
4578
+ for (a, b) in a.iter_mut().zip(&b) {
4579
+ *a = a.wasm_maximum(*b);
4580
+ }
4581
+ self.state[operands.dst].set_f64x2(a);
4582
+ ControlFlow::Continue(())
4583
+ }
4584
+
4585
+ fn vminimumf32x4(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4586
+ let mut a = self.state[operands.src1].get_f32x4();
4587
+ let b = self.state[operands.src2].get_f32x4();
4588
+ for (a, b) in a.iter_mut().zip(&b) {
4589
+ *a = a.wasm_minimum(*b);
4590
+ }
4591
+ self.state[operands.dst].set_f32x4(a);
4592
+ ControlFlow::Continue(())
4593
+ }
4594
+
4595
+ fn vminimumf64x2(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4596
+ let mut a = self.state[operands.src1].get_f64x2();
4597
+ let b = self.state[operands.src2].get_f64x2();
4598
+ for (a, b) in a.iter_mut().zip(&b) {
4599
+ *a = a.wasm_minimum(*b);
4600
+ }
4601
+ self.state[operands.dst].set_f64x2(a);
4602
+ ControlFlow::Continue(())
4603
+ }
4604
+
4605
+ fn vshuffle(&mut self, dst: VReg, src1: VReg, src2: VReg, mask: u128) -> ControlFlow<Done> {
4606
+ let a = self.state[src1].get_u8x16();
4607
+ let b = self.state[src2].get_u8x16();
4608
+ let result = mask.to_le_bytes().map(|m| {
4609
+ if m < 16 {
4610
+ a[m as usize]
4611
+ } else {
4612
+ b[m as usize - 16]
4613
+ }
4614
+ });
4615
+ self.state[dst].set_u8x16(result);
4616
+ ControlFlow::Continue(())
4617
+ }
4618
+
4619
+ fn vswizzlei8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4620
+ let src1 = self.state[operands.src1].get_i8x16();
4621
+ let src2 = self.state[operands.src2].get_i8x16();
4622
+ let mut dst = [0i8; 16];
4623
+ for (i, &idx) in src2.iter().enumerate() {
4624
+ if (idx as usize) < 16 {
4625
+ dst[i] = src1[idx as usize];
4626
+ } else {
4627
+ dst[i] = 0
4628
+ }
4629
+ }
4630
+ self.state[operands.dst].set_i8x16(dst);
4631
+ ControlFlow::Continue(())
4632
+ }
4633
+
4634
+ fn vavground8x16(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4635
+ let mut a = self.state[operands.src1].get_u8x16();
4636
+ let b = self.state[operands.src2].get_u8x16();
4637
+ for (a, b) in a.iter_mut().zip(&b) {
4638
+ // use wider precision to avoid overflow
4639
+ *a = ((u32::from(*a) + u32::from(*b) + 1) / 2) as u8;
4640
+ }
4641
+ self.state[operands.dst].set_u8x16(a);
4642
+ ControlFlow::Continue(())
4643
+ }
4644
+
4645
+ fn vavground16x8(&mut self, operands: BinaryOperands<VReg>) -> ControlFlow<Done> {
4646
+ let mut a = self.state[operands.src1].get_u16x8();
4647
+ let b = self.state[operands.src2].get_u16x8();
4648
+ for (a, b) in a.iter_mut().zip(&b) {
4649
+ // use wider precision to avoid overflow
4650
+ *a = ((u32::from(*a) + u32::from(*b) + 1) / 2) as u16;
4651
+ }
4652
+ self.state[operands.dst].set_u16x8(a);
4653
+ ControlFlow::Continue(())
4654
+ }
4655
+ }