wasmtime 21.0.1 → 22.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2043) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +80 -87
  3. data/ext/Cargo.toml +4 -4
  4. data/ext/cargo-vendor/cranelift-bforest-0.109.0/.cargo-checksum.json +1 -0
  5. data/ext/cargo-vendor/cranelift-bforest-0.109.0/Cargo.toml +41 -0
  6. data/ext/cargo-vendor/cranelift-codegen-0.109.0/.cargo-checksum.json +1 -0
  7. data/ext/cargo-vendor/cranelift-codegen-0.109.0/Cargo.toml +193 -0
  8. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/context.rs +384 -0
  9. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/dominator_tree.rs +727 -0
  10. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/egraph.rs +835 -0
  11. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/inst_predicates.rs +230 -0
  12. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/ir/dfg.rs +1777 -0
  13. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/ir/extfunc.rs +402 -0
  14. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/ir/immediates.rs +1612 -0
  15. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/ir/stackslot.rs +208 -0
  16. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/ir/types.rs +627 -0
  17. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/abi.rs +1556 -0
  18. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst/args.rs +711 -0
  19. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst/emit.rs +3584 -0
  20. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst/emit_tests.rs +7901 -0
  21. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst/imms.rs +1213 -0
  22. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst/mod.rs +3060 -0
  23. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst/regs.rs +269 -0
  24. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst/unwind/systemv.rs +174 -0
  25. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/inst.isle +4218 -0
  26. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/aarch64/pcc.rs +568 -0
  27. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/abi.rs +1029 -0
  28. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/args.rs +2054 -0
  29. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/emit.rs +2682 -0
  30. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/emit_tests.rs +2215 -0
  31. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/encode.rs +675 -0
  32. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/imms.rs +374 -0
  33. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/mod.rs +1938 -0
  34. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/unwind/systemv.rs +170 -0
  35. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst/vector.rs +1150 -0
  36. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst.isle +3127 -0
  37. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/inst_vector.isle +1907 -0
  38. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/lower/isle.rs +649 -0
  39. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/lower.isle +2923 -0
  40. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/riscv64/mod.rs +260 -0
  41. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/abi.rs +1016 -0
  42. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst/args.rs +298 -0
  43. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst/emit.rs +3401 -0
  44. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst/emit_tests.rs +13388 -0
  45. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst/imms.rs +202 -0
  46. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst/mod.rs +3401 -0
  47. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst/regs.rs +169 -0
  48. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst/unwind/systemv.rs +212 -0
  49. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/inst.isle +5028 -0
  50. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/s390x/lower.isle +3995 -0
  51. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/abi.rs +1390 -0
  52. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst/args.rs +2240 -0
  53. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst/emit.rs +4287 -0
  54. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst/emit_state.rs +52 -0
  55. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst/emit_tests.rs +5171 -0
  56. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst/mod.rs +2821 -0
  57. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst/regs.rs +275 -0
  58. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst/unwind/systemv.rs +198 -0
  59. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/inst.isle +5289 -0
  60. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/lower.isle +4810 -0
  61. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isa/x64/pcc.rs +1014 -0
  62. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/isle_prelude.rs +986 -0
  63. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/lib.rs +106 -0
  64. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/abi.rs +2419 -0
  65. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/blockorder.rs +465 -0
  66. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/buffer.rs +2508 -0
  67. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/isle.rs +909 -0
  68. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/lower.rs +1432 -0
  69. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/mod.rs +551 -0
  70. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/reg.rs +479 -0
  71. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/valueregs.rs +138 -0
  72. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/machinst/vcode.rs +1741 -0
  73. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/opts/cprop.isle +297 -0
  74. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/opts/shifts.isle +307 -0
  75. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/prelude.isle +664 -0
  76. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/prelude_lower.isle +1073 -0
  77. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/timing.rs +296 -0
  78. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/traversals.rs +216 -0
  79. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/verifier/mod.rs +1957 -0
  80. data/ext/cargo-vendor/cranelift-codegen-0.109.0/src/write.rs +638 -0
  81. data/ext/cargo-vendor/cranelift-codegen-meta-0.109.0/.cargo-checksum.json +1 -0
  82. data/ext/cargo-vendor/cranelift-codegen-meta-0.109.0/Cargo.toml +36 -0
  83. data/ext/cargo-vendor/cranelift-codegen-meta-0.109.0/src/cdsl/types.rs +496 -0
  84. data/ext/cargo-vendor/cranelift-codegen-meta-0.109.0/src/isa/riscv64.rs +174 -0
  85. data/ext/cargo-vendor/cranelift-codegen-shared-0.109.0/.cargo-checksum.json +1 -0
  86. data/ext/cargo-vendor/cranelift-codegen-shared-0.109.0/Cargo.toml +22 -0
  87. data/ext/cargo-vendor/cranelift-codegen-shared-0.109.0/src/constants.rs +28 -0
  88. data/ext/cargo-vendor/cranelift-control-0.109.0/.cargo-checksum.json +1 -0
  89. data/ext/cargo-vendor/cranelift-control-0.109.0/Cargo.toml +30 -0
  90. data/ext/cargo-vendor/cranelift-entity-0.109.0/.cargo-checksum.json +1 -0
  91. data/ext/cargo-vendor/cranelift-entity-0.109.0/Cargo.toml +53 -0
  92. data/ext/cargo-vendor/cranelift-entity-0.109.0/src/set.rs +290 -0
  93. data/ext/cargo-vendor/cranelift-frontend-0.109.0/.cargo-checksum.json +1 -0
  94. data/ext/cargo-vendor/cranelift-frontend-0.109.0/Cargo.toml +68 -0
  95. data/ext/cargo-vendor/cranelift-frontend-0.109.0/src/frontend.rs +1857 -0
  96. data/ext/cargo-vendor/cranelift-frontend-0.109.0/src/lib.rs +187 -0
  97. data/ext/cargo-vendor/cranelift-frontend-0.109.0/src/ssa.rs +1328 -0
  98. data/ext/cargo-vendor/cranelift-isle-0.109.0/.cargo-checksum.json +1 -0
  99. data/ext/cargo-vendor/cranelift-isle-0.109.0/Cargo.toml +47 -0
  100. data/ext/cargo-vendor/cranelift-isle-0.109.0/src/sema.rs +2492 -0
  101. data/ext/cargo-vendor/cranelift-native-0.109.0/.cargo-checksum.json +1 -0
  102. data/ext/cargo-vendor/cranelift-native-0.109.0/Cargo.toml +43 -0
  103. data/ext/cargo-vendor/cranelift-native-0.109.0/src/lib.rs +188 -0
  104. data/ext/cargo-vendor/cranelift-native-0.109.0/src/riscv.rs +128 -0
  105. data/ext/cargo-vendor/cranelift-wasm-0.109.0/.cargo-checksum.json +1 -0
  106. data/ext/cargo-vendor/cranelift-wasm-0.109.0/Cargo.toml +110 -0
  107. data/ext/cargo-vendor/cranelift-wasm-0.109.0/src/code_translator.rs +3695 -0
  108. data/ext/cargo-vendor/cranelift-wasm-0.109.0/src/func_translator.rs +296 -0
  109. data/ext/cargo-vendor/cranelift-wasm-0.109.0/src/module_translator.rs +120 -0
  110. data/ext/cargo-vendor/cranelift-wasm-0.109.0/src/sections_translator.rs +343 -0
  111. data/ext/cargo-vendor/cranelift-wasm-0.109.0/src/state.rs +522 -0
  112. data/ext/cargo-vendor/object-0.36.3/.cargo-checksum.json +1 -0
  113. data/ext/cargo-vendor/object-0.36.3/CHANGELOG.md +1028 -0
  114. data/ext/cargo-vendor/object-0.36.3/Cargo.toml +180 -0
  115. data/ext/cargo-vendor/object-0.36.3/README.md +60 -0
  116. data/ext/cargo-vendor/object-0.36.3/src/build/bytes.rs +146 -0
  117. data/ext/cargo-vendor/object-0.36.3/src/build/elf.rs +3113 -0
  118. data/ext/cargo-vendor/object-0.36.3/src/common.rs +590 -0
  119. data/ext/cargo-vendor/object-0.36.3/src/elf.rs +6303 -0
  120. data/ext/cargo-vendor/object-0.36.3/src/endian.rs +831 -0
  121. data/ext/cargo-vendor/object-0.36.3/src/macho.rs +3303 -0
  122. data/ext/cargo-vendor/object-0.36.3/src/pod.rs +281 -0
  123. data/ext/cargo-vendor/object-0.36.3/src/read/any.rs +1334 -0
  124. data/ext/cargo-vendor/object-0.36.3/src/read/archive.rs +1133 -0
  125. data/ext/cargo-vendor/object-0.36.3/src/read/coff/comdat.rs +220 -0
  126. data/ext/cargo-vendor/object-0.36.3/src/read/coff/file.rs +381 -0
  127. data/ext/cargo-vendor/object-0.36.3/src/read/coff/relocation.rs +113 -0
  128. data/ext/cargo-vendor/object-0.36.3/src/read/coff/section.rs +619 -0
  129. data/ext/cargo-vendor/object-0.36.3/src/read/coff/symbol.rs +669 -0
  130. data/ext/cargo-vendor/object-0.36.3/src/read/elf/attributes.rs +340 -0
  131. data/ext/cargo-vendor/object-0.36.3/src/read/elf/comdat.rs +186 -0
  132. data/ext/cargo-vendor/object-0.36.3/src/read/elf/file.rs +959 -0
  133. data/ext/cargo-vendor/object-0.36.3/src/read/elf/hash.rs +236 -0
  134. data/ext/cargo-vendor/object-0.36.3/src/read/elf/note.rs +302 -0
  135. data/ext/cargo-vendor/object-0.36.3/src/read/elf/relocation.rs +661 -0
  136. data/ext/cargo-vendor/object-0.36.3/src/read/elf/section.rs +1241 -0
  137. data/ext/cargo-vendor/object-0.36.3/src/read/elf/segment.rs +365 -0
  138. data/ext/cargo-vendor/object-0.36.3/src/read/elf/symbol.rs +654 -0
  139. data/ext/cargo-vendor/object-0.36.3/src/read/elf/version.rs +513 -0
  140. data/ext/cargo-vendor/object-0.36.3/src/read/gnu_compression.rs +36 -0
  141. data/ext/cargo-vendor/object-0.36.3/src/read/macho/dyld_cache.rs +384 -0
  142. data/ext/cargo-vendor/object-0.36.3/src/read/macho/file.rs +779 -0
  143. data/ext/cargo-vendor/object-0.36.3/src/read/macho/load_command.rs +404 -0
  144. data/ext/cargo-vendor/object-0.36.3/src/read/macho/section.rs +420 -0
  145. data/ext/cargo-vendor/object-0.36.3/src/read/macho/segment.rs +317 -0
  146. data/ext/cargo-vendor/object-0.36.3/src/read/macho/symbol.rs +532 -0
  147. data/ext/cargo-vendor/object-0.36.3/src/read/mod.rs +1018 -0
  148. data/ext/cargo-vendor/object-0.36.3/src/read/pe/file.rs +1033 -0
  149. data/ext/cargo-vendor/object-0.36.3/src/read/pe/import.rs +381 -0
  150. data/ext/cargo-vendor/object-0.36.3/src/read/pe/relocation.rs +109 -0
  151. data/ext/cargo-vendor/object-0.36.3/src/read/pe/section.rs +476 -0
  152. data/ext/cargo-vendor/object-0.36.3/src/read/read_cache.rs +261 -0
  153. data/ext/cargo-vendor/object-0.36.3/src/read/traits.rs +589 -0
  154. data/ext/cargo-vendor/object-0.36.3/src/read/wasm.rs +983 -0
  155. data/ext/cargo-vendor/object-0.36.3/src/read/xcoff/file.rs +716 -0
  156. data/ext/cargo-vendor/object-0.36.3/src/read/xcoff/relocation.rs +138 -0
  157. data/ext/cargo-vendor/object-0.36.3/src/read/xcoff/section.rs +452 -0
  158. data/ext/cargo-vendor/object-0.36.3/src/read/xcoff/symbol.rs +836 -0
  159. data/ext/cargo-vendor/object-0.36.3/src/write/coff/object.rs +681 -0
  160. data/ext/cargo-vendor/object-0.36.3/src/write/coff/writer.rs +520 -0
  161. data/ext/cargo-vendor/object-0.36.3/src/write/elf/object.rs +897 -0
  162. data/ext/cargo-vendor/object-0.36.3/src/write/elf/writer.rs +2361 -0
  163. data/ext/cargo-vendor/object-0.36.3/src/write/macho.rs +1124 -0
  164. data/ext/cargo-vendor/object-0.36.3/src/write/mod.rs +1023 -0
  165. data/ext/cargo-vendor/object-0.36.3/src/write/pe.rs +849 -0
  166. data/ext/cargo-vendor/object-0.36.3/src/write/xcoff.rs +588 -0
  167. data/ext/cargo-vendor/object-0.36.3/tests/build/elf.rs +254 -0
  168. data/ext/cargo-vendor/object-0.36.3/tests/build/mod.rs +3 -0
  169. data/ext/cargo-vendor/object-0.36.3/tests/integration.rs +3 -0
  170. data/ext/cargo-vendor/object-0.36.3/tests/read/macho.rs +49 -0
  171. data/ext/cargo-vendor/object-0.36.3/tests/read/mod.rs +5 -0
  172. data/ext/cargo-vendor/object-0.36.3/tests/round_trip/bss.rs +244 -0
  173. data/ext/cargo-vendor/object-0.36.3/tests/round_trip/comdat.rs +217 -0
  174. data/ext/cargo-vendor/object-0.36.3/tests/round_trip/common.rs +241 -0
  175. data/ext/cargo-vendor/object-0.36.3/tests/round_trip/elf.rs +302 -0
  176. data/ext/cargo-vendor/object-0.36.3/tests/round_trip/mod.rs +682 -0
  177. data/ext/cargo-vendor/object-0.36.3/tests/round_trip/section_flags.rs +89 -0
  178. data/ext/cargo-vendor/object-0.36.3/tests/round_trip/tls.rs +308 -0
  179. data/ext/cargo-vendor/wasi-common-22.0.0/.cargo-checksum.json +1 -0
  180. data/ext/cargo-vendor/wasi-common-22.0.0/Cargo.toml +224 -0
  181. data/ext/cargo-vendor/wasi-common-22.0.0/src/snapshots/preview_0.rs +1080 -0
  182. data/ext/cargo-vendor/wasi-common-22.0.0/src/snapshots/preview_1.rs +1562 -0
  183. data/ext/cargo-vendor/wasi-common-22.0.0/src/string_array.rs +75 -0
  184. data/ext/cargo-vendor/wasi-common-22.0.0/src/sync/sched/windows.rs +221 -0
  185. data/ext/cargo-vendor/wasi-common-22.0.0/src/tokio/file.rs +247 -0
  186. data/ext/cargo-vendor/wasmparser-0.209.1/.cargo-checksum.json +1 -0
  187. data/ext/cargo-vendor/wasmparser-0.209.1/Cargo.lock +662 -0
  188. data/ext/cargo-vendor/wasmparser-0.209.1/Cargo.toml +109 -0
  189. data/ext/cargo-vendor/wasmparser-0.209.1/src/binary_reader.rs +1929 -0
  190. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/hash.rs +120 -0
  191. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/index_map/detail.rs +1094 -0
  192. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/index_map/tests.rs +183 -0
  193. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/index_map.rs +656 -0
  194. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/index_set.rs +316 -0
  195. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/map.rs +840 -0
  196. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/mod.rs +24 -0
  197. data/ext/cargo-vendor/wasmparser-0.209.1/src/collections/set.rs +660 -0
  198. data/ext/cargo-vendor/wasmparser-0.209.1/src/features.rs +164 -0
  199. data/ext/cargo-vendor/wasmparser-0.209.1/src/lib.rs +814 -0
  200. data/ext/cargo-vendor/wasmparser-0.209.1/src/limits.rs +79 -0
  201. data/ext/cargo-vendor/wasmparser-0.209.1/src/parser.rs +1682 -0
  202. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/component/imports.rs +130 -0
  203. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/component/instances.rs +166 -0
  204. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/component/names.rs +99 -0
  205. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/component/types.rs +553 -0
  206. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/branch_hinting.rs +59 -0
  207. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/code.rs +142 -0
  208. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/coredumps.rs +278 -0
  209. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/custom.rs +128 -0
  210. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/data.rs +96 -0
  211. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/elements.rs +146 -0
  212. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/globals.rs +61 -0
  213. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/init.rs +57 -0
  214. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/linking.rs +457 -0
  215. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/names.rs +159 -0
  216. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/operators.rs +423 -0
  217. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/producers.rs +84 -0
  218. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/reloc.rs +300 -0
  219. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers/core/types.rs +1788 -0
  220. data/ext/cargo-vendor/wasmparser-0.209.1/src/readers.rs +315 -0
  221. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator/component.rs +3236 -0
  222. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator/core/canonical.rs +233 -0
  223. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator/core.rs +1464 -0
  224. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator/func.rs +331 -0
  225. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator/names.rs +1016 -0
  226. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator/operators.rs +4231 -0
  227. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator/types.rs +4550 -0
  228. data/ext/cargo-vendor/wasmparser-0.209.1/src/validator.rs +1633 -0
  229. data/ext/cargo-vendor/wasmprinter-0.209.1/.cargo-checksum.json +1 -0
  230. data/ext/cargo-vendor/wasmprinter-0.209.1/Cargo.toml +51 -0
  231. data/ext/cargo-vendor/wasmprinter-0.209.1/src/lib.rs +3225 -0
  232. data/ext/cargo-vendor/wasmprinter-0.209.1/src/operator.rs +1171 -0
  233. data/ext/cargo-vendor/wasmtime-22.0.0/.cargo-checksum.json +1 -0
  234. data/ext/cargo-vendor/wasmtime-22.0.0/Cargo.toml +387 -0
  235. data/ext/cargo-vendor/wasmtime-22.0.0/build.rs +42 -0
  236. data/ext/cargo-vendor/wasmtime-22.0.0/src/compile/runtime.rs +167 -0
  237. data/ext/cargo-vendor/wasmtime-22.0.0/src/compile.rs +917 -0
  238. data/ext/cargo-vendor/wasmtime-22.0.0/src/config.rs +2943 -0
  239. data/ext/cargo-vendor/wasmtime-22.0.0/src/engine/serialization.rs +890 -0
  240. data/ext/cargo-vendor/wasmtime-22.0.0/src/lib.rs +389 -0
  241. data/ext/cargo-vendor/wasmtime-22.0.0/src/profiling_agent/jitdump.rs +67 -0
  242. data/ext/cargo-vendor/wasmtime-22.0.0/src/profiling_agent/perfmap.rs +48 -0
  243. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/code.rs +102 -0
  244. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/code_memory.rs +338 -0
  245. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/_0_hello_world.rs +9 -0
  246. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/_1_world_imports.rs +17 -0
  247. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/_2_world_exports.rs +18 -0
  248. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/_3_interface_imports.rs +20 -0
  249. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/_4_imported_resources.rs +45 -0
  250. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/_5_all_world_export_kinds.rs +29 -0
  251. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/_6_exported_resources.rs +26 -0
  252. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/bindgen_examples/mod.rs +489 -0
  253. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/component.rs +656 -0
  254. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/func/typed.rs +2498 -0
  255. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/func.rs +689 -0
  256. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/instance.rs +810 -0
  257. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/linker.rs +854 -0
  258. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/matching.rs +217 -0
  259. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/mod.rs +657 -0
  260. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/resource_table.rs +355 -0
  261. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/component/types.rs +897 -0
  262. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/debug.rs +166 -0
  263. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/externals/global.rs +310 -0
  264. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/externals/table.rs +481 -0
  265. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/func/typed.rs +780 -0
  266. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/func.rs +2564 -0
  267. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/gc/enabled/anyref.rs +410 -0
  268. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/gc/enabled/externref.rs +592 -0
  269. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/gc/enabled/i31.rs +299 -0
  270. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/gc/noextern.rs +154 -0
  271. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/gc.rs +92 -0
  272. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/instance.rs +992 -0
  273. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/instantiate.rs +337 -0
  274. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/linker.rs +1499 -0
  275. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/module/registry.rs +353 -0
  276. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/module.rs +1322 -0
  277. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/store/func_refs.rs +90 -0
  278. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/store.rs +2824 -0
  279. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/trampoline/func.rs +94 -0
  280. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/trampoline/memory.rs +287 -0
  281. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/type_registry.rs +1015 -0
  282. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/types.rs +2580 -0
  283. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/v128.rs +116 -0
  284. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/values.rs +966 -0
  285. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/component/resources.rs +352 -0
  286. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/component.rs +857 -0
  287. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/cow.rs +972 -0
  288. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/export.rs +108 -0
  289. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/gc/gc_ref.rs +491 -0
  290. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/on_demand.rs +220 -0
  291. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling/decommit_queue.rs +194 -0
  292. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling/gc_heap_pool.rs +94 -0
  293. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling/generic_stack_pool.rs +78 -0
  294. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling/index_allocator.rs +707 -0
  295. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +975 -0
  296. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling/table_pool.rs +245 -0
  297. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling/unix_stack_pool.rs +278 -0
  298. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator/pooling.rs +794 -0
  299. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance/allocator.rs +801 -0
  300. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/instance.rs +1514 -0
  301. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/memory.rs +736 -0
  302. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/sys/custom/capi.rs +200 -0
  303. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/sys/custom/vm.rs +105 -0
  304. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/sys/miri/vm.rs +59 -0
  305. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/sys/mod.rs +36 -0
  306. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/sys/unix/signals.rs +407 -0
  307. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/sys/unix/vm.rs +190 -0
  308. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/sys/windows/vm.rs +75 -0
  309. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/table.rs +899 -0
  310. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/traphandlers.rs +768 -0
  311. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/vmcontext/vm_host_func_context.rs +79 -0
  312. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm/vmcontext.rs +1302 -0
  313. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime/vm.rs +277 -0
  314. data/ext/cargo-vendor/wasmtime-22.0.0/src/runtime.rs +113 -0
  315. data/ext/cargo-vendor/wasmtime-asm-macros-22.0.0/.cargo-checksum.json +1 -0
  316. data/ext/cargo-vendor/wasmtime-asm-macros-22.0.0/Cargo.toml +22 -0
  317. data/ext/cargo-vendor/wasmtime-cache-22.0.0/.cargo-checksum.json +1 -0
  318. data/ext/cargo-vendor/wasmtime-cache-22.0.0/Cargo.toml +89 -0
  319. data/ext/cargo-vendor/wasmtime-cache-22.0.0/src/config.rs +584 -0
  320. data/ext/cargo-vendor/wasmtime-cache-22.0.0/src/lib.rs +235 -0
  321. data/ext/cargo-vendor/wasmtime-cache-22.0.0/src/tests.rs +91 -0
  322. data/ext/cargo-vendor/wasmtime-cache-22.0.0/src/worker/tests.rs +758 -0
  323. data/ext/cargo-vendor/wasmtime-cache-22.0.0/src/worker.rs +890 -0
  324. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/.cargo-checksum.json +1 -0
  325. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/Cargo.toml +86 -0
  326. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/src/bindgen.rs +493 -0
  327. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/src/component.rs +1330 -0
  328. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/codegen.rs +651 -0
  329. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/char.rs +198 -0
  330. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/char_async.rs +215 -0
  331. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/conventions.rs +586 -0
  332. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/conventions_async.rs +631 -0
  333. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/dead-code.rs +165 -0
  334. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/dead-code_async.rs +178 -0
  335. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/direct-import.rs +91 -0
  336. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/direct-import_async.rs +97 -0
  337. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/empty.rs +45 -0
  338. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/empty_async.rs +45 -0
  339. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/flags.rs +637 -0
  340. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/flags_async.rs +679 -0
  341. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/floats.rs +255 -0
  342. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/floats_async.rs +282 -0
  343. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/function-new.rs +59 -0
  344. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/function-new_async.rs +62 -0
  345. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/integers.rs +722 -0
  346. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/integers_async.rs +819 -0
  347. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/lists.rs +1743 -0
  348. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/lists_async.rs +1927 -0
  349. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/many-arguments.rs +543 -0
  350. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/many-arguments_async.rs +561 -0
  351. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/multi-return.rs +270 -0
  352. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/multi-return_async.rs +298 -0
  353. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/multiversion.rs +251 -0
  354. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/multiversion_async.rs +270 -0
  355. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/records.rs +815 -0
  356. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/records_async.rs +877 -0
  357. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/rename.rs +154 -0
  358. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/rename_async.rs +167 -0
  359. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/resources-export.rs +467 -0
  360. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/resources-export_async.rs +516 -0
  361. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/resources-import.rs +1014 -0
  362. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/resources-import_async.rs +1086 -0
  363. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/share-types.rs +249 -0
  364. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/share-types_async.rs +265 -0
  365. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/simple-functions.rs +313 -0
  366. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/simple-functions_async.rs +347 -0
  367. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/simple-lists.rs +350 -0
  368. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/simple-lists_async.rs +381 -0
  369. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/simple-wasi.rs +216 -0
  370. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/simple-wasi_async.rs +229 -0
  371. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/small-anonymous.rs +275 -0
  372. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/small-anonymous_async.rs +287 -0
  373. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/smoke-default.rs +59 -0
  374. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/smoke-default_async.rs +62 -0
  375. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/smoke-export.rs +86 -0
  376. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/smoke-export_async.rs +89 -0
  377. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/smoke.rs +104 -0
  378. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/smoke_async.rs +111 -0
  379. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/strings.rs +247 -0
  380. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/strings_async.rs +269 -0
  381. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/unversioned-foo.rs +136 -0
  382. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/unversioned-foo_async.rs +143 -0
  383. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/use-paths.rs +288 -0
  384. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/use-paths_async.rs +314 -0
  385. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/variants.rs +1750 -0
  386. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/variants_async.rs +1867 -0
  387. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/wat.rs +84 -0
  388. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/wat_async.rs +84 -0
  389. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/worlds-with-types.rs +138 -0
  390. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded/worlds-with-types_async.rs +148 -0
  391. data/ext/cargo-vendor/wasmtime-component-macro-22.0.0/tests/expanded.rs +65 -0
  392. data/ext/cargo-vendor/wasmtime-component-util-22.0.0/.cargo-checksum.json +1 -0
  393. data/ext/cargo-vendor/wasmtime-component-util-22.0.0/Cargo.toml +25 -0
  394. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/.cargo-checksum.json +1 -0
  395. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/Cargo.toml +115 -0
  396. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/compiler/component.rs +957 -0
  397. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/compiler.rs +1067 -0
  398. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/debug/transform/address_transform.rs +783 -0
  399. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/debug/transform/mod.rs +256 -0
  400. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/debug/transform/simulate.rs +411 -0
  401. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/debug/transform/unit.rs +529 -0
  402. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/debug/transform/utils.rs +186 -0
  403. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/debug/write_debuginfo.rs +196 -0
  404. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/func_environ.rs +2910 -0
  405. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/gc/enabled.rs +648 -0
  406. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/lib.rs +462 -0
  407. data/ext/cargo-vendor/wasmtime-cranelift-22.0.0/src/obj.rs +545 -0
  408. data/ext/cargo-vendor/wasmtime-environ-22.0.0/.cargo-checksum.json +1 -0
  409. data/ext/cargo-vendor/wasmtime-environ-22.0.0/Cargo.lock +774 -0
  410. data/ext/cargo-vendor/wasmtime-environ-22.0.0/Cargo.toml +161 -0
  411. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/compile/address_map.rs +73 -0
  412. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/compile/mod.rs +374 -0
  413. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/compile/module_artifacts.rs +315 -0
  414. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/compile/module_environ.rs +1348 -0
  415. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/compile/module_types.rs +455 -0
  416. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/component/artifacts.rs +68 -0
  417. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/component/info.rs +672 -0
  418. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/component/translate/adapt.rs +455 -0
  419. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/component/translate.rs +985 -0
  420. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/component/types.rs +1038 -0
  421. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/component/types_builder/resources.rs +233 -0
  422. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/component/types_builder.rs +1004 -0
  423. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/fact/trampoline.rs +3234 -0
  424. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/fact/transcode.rs +90 -0
  425. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/fact.rs +714 -0
  426. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/lib.rs +151 -0
  427. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/module.rs +704 -0
  428. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/module_artifacts.rs +144 -0
  429. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/module_types.rs +139 -0
  430. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/ref_bits.rs +36 -0
  431. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/tunables.rs +175 -0
  432. data/ext/cargo-vendor/wasmtime-environ-22.0.0/src/vmoffsets.rs +989 -0
  433. data/ext/cargo-vendor/wasmtime-fiber-22.0.0/.cargo-checksum.json +1 -0
  434. data/ext/cargo-vendor/wasmtime-fiber-22.0.0/Cargo.toml +65 -0
  435. data/ext/cargo-vendor/wasmtime-fiber-22.0.0/build.rs +39 -0
  436. data/ext/cargo-vendor/wasmtime-fiber-22.0.0/src/lib.rs +340 -0
  437. data/ext/cargo-vendor/wasmtime-fiber-22.0.0/src/unix.rs +494 -0
  438. data/ext/cargo-vendor/wasmtime-fiber-22.0.0/src/windows.rs +170 -0
  439. data/ext/cargo-vendor/wasmtime-jit-debug-22.0.0/.cargo-checksum.json +1 -0
  440. data/ext/cargo-vendor/wasmtime-jit-debug-22.0.0/Cargo.toml +68 -0
  441. data/ext/cargo-vendor/wasmtime-jit-debug-22.0.0/src/gdb_jit_int.rs +130 -0
  442. data/ext/cargo-vendor/wasmtime-jit-debug-22.0.0/src/perf_jitdump.rs +293 -0
  443. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-22.0.0/.cargo-checksum.json +1 -0
  444. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-22.0.0/Cargo.toml +52 -0
  445. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-22.0.0/src/libc.rs +164 -0
  446. data/ext/cargo-vendor/wasmtime-slab-22.0.0/.cargo-checksum.json +1 -0
  447. data/ext/cargo-vendor/wasmtime-slab-22.0.0/Cargo.toml +21 -0
  448. data/ext/cargo-vendor/wasmtime-slab-22.0.0/src/lib.rs +498 -0
  449. data/ext/cargo-vendor/wasmtime-types-22.0.0/.cargo-checksum.json +1 -0
  450. data/ext/cargo-vendor/wasmtime-types-22.0.0/Cargo.toml +56 -0
  451. data/ext/cargo-vendor/wasmtime-types-22.0.0/src/lib.rs +1737 -0
  452. data/ext/cargo-vendor/wasmtime-versioned-export-macros-22.0.0/.cargo-checksum.json +1 -0
  453. data/ext/cargo-vendor/wasmtime-versioned-export-macros-22.0.0/Cargo.toml +32 -0
  454. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/.cargo-checksum.json +1 -0
  455. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/Cargo.toml +201 -0
  456. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/bindings.rs +289 -0
  457. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/ctx.rs +704 -0
  458. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/filesystem.rs +446 -0
  459. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/clocks.rs +109 -0
  460. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/env.rs +18 -0
  461. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/exit.rs +14 -0
  462. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/filesystem/sync.rs +525 -0
  463. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/filesystem.rs +1091 -0
  464. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/instance_network.rs +18 -0
  465. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/io.rs +388 -0
  466. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/network.rs +545 -0
  467. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/random.rs +45 -0
  468. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/tcp.rs +547 -0
  469. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/tcp_create_socket.rs +18 -0
  470. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/udp.rs +762 -0
  471. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/host/udp_create_socket.rs +18 -0
  472. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/ip_name_lookup.rs +132 -0
  473. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/lib.rs +417 -0
  474. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/network.rs +113 -0
  475. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/pipe.rs +826 -0
  476. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/poll.rs +245 -0
  477. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/preview0.rs +983 -0
  478. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/preview1.rs +2801 -0
  479. data/ext/cargo-vendor/wasmtime-wasi-22.0.0/src/stdio.rs +533 -0
  480. data/ext/cargo-vendor/wasmtime-winch-22.0.0/.cargo-checksum.json +1 -0
  481. data/ext/cargo-vendor/wasmtime-winch-22.0.0/Cargo.toml +82 -0
  482. data/ext/cargo-vendor/wasmtime-winch-22.0.0/src/compiler.rs +239 -0
  483. data/ext/cargo-vendor/wasmtime-wit-bindgen-22.0.0/.cargo-checksum.json +1 -0
  484. data/ext/cargo-vendor/wasmtime-wit-bindgen-22.0.0/Cargo.toml +47 -0
  485. data/ext/cargo-vendor/wasmtime-wit-bindgen-22.0.0/src/lib.rs +2639 -0
  486. data/ext/cargo-vendor/wasmtime-wit-bindgen-22.0.0/src/rust.rs +427 -0
  487. data/ext/cargo-vendor/wasmtime-wit-bindgen-22.0.0/src/types.rs +202 -0
  488. data/ext/cargo-vendor/wiggle-22.0.0/.cargo-checksum.json +1 -0
  489. data/ext/cargo-vendor/wiggle-22.0.0/Cargo.toml +124 -0
  490. data/ext/cargo-vendor/wiggle-22.0.0/src/guest_type.rs +200 -0
  491. data/ext/cargo-vendor/wiggle-22.0.0/src/lib.rs +605 -0
  492. data/ext/cargo-vendor/wiggle-generate-22.0.0/.cargo-checksum.json +1 -0
  493. data/ext/cargo-vendor/wiggle-generate-22.0.0/Cargo.toml +67 -0
  494. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/funcs.rs +434 -0
  495. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/module_trait.rs +89 -0
  496. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/names.rs +299 -0
  497. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/types/flags.rs +92 -0
  498. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/types/handle.rs +84 -0
  499. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/types/mod.rs +129 -0
  500. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/types/record.rs +129 -0
  501. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/types/variant.rs +186 -0
  502. data/ext/cargo-vendor/wiggle-generate-22.0.0/src/wasmtime.rs +172 -0
  503. data/ext/cargo-vendor/wiggle-macro-22.0.0/.cargo-checksum.json +1 -0
  504. data/ext/cargo-vendor/wiggle-macro-22.0.0/Cargo.toml +51 -0
  505. data/ext/cargo-vendor/wiggle-macro-22.0.0/build.rs +5 -0
  506. data/ext/cargo-vendor/wiggle-macro-22.0.0/src/lib.rs +233 -0
  507. data/ext/cargo-vendor/winch-codegen-0.20.0/.cargo-checksum.json +1 -0
  508. data/ext/cargo-vendor/winch-codegen-0.20.0/Cargo.toml +77 -0
  509. data/ext/cargo-vendor/winch-codegen-0.20.0/src/abi/mod.rs +671 -0
  510. data/ext/cargo-vendor/winch-codegen-0.20.0/src/codegen/context.rs +536 -0
  511. data/ext/cargo-vendor/winch-codegen-0.20.0/src/codegen/control.rs +972 -0
  512. data/ext/cargo-vendor/winch-codegen-0.20.0/src/codegen/env.rs +448 -0
  513. data/ext/cargo-vendor/winch-codegen-0.20.0/src/codegen/mod.rs +882 -0
  514. data/ext/cargo-vendor/winch-codegen-0.20.0/src/frame/mod.rs +258 -0
  515. data/ext/cargo-vendor/winch-codegen-0.20.0/src/isa/aarch64/asm.rs +430 -0
  516. data/ext/cargo-vendor/winch-codegen-0.20.0/src/isa/aarch64/masm.rs +572 -0
  517. data/ext/cargo-vendor/winch-codegen-0.20.0/src/isa/aarch64/regs.rs +161 -0
  518. data/ext/cargo-vendor/winch-codegen-0.20.0/src/isa/x64/asm.rs +1423 -0
  519. data/ext/cargo-vendor/winch-codegen-0.20.0/src/isa/x64/masm.rs +1120 -0
  520. data/ext/cargo-vendor/winch-codegen-0.20.0/src/masm.rs +941 -0
  521. data/ext/cargo-vendor/winch-codegen-0.20.0/src/regalloc.rs +65 -0
  522. data/ext/cargo-vendor/winch-codegen-0.20.0/src/stack.rs +439 -0
  523. data/ext/cargo-vendor/winch-codegen-0.20.0/src/visitor.rs +2149 -0
  524. data/ext/cargo-vendor/wit-parser-0.209.1/.cargo-checksum.json +1 -0
  525. data/ext/cargo-vendor/wit-parser-0.209.1/Cargo.toml +112 -0
  526. data/ext/cargo-vendor/wit-parser-0.209.1/src/ast/resolve.rs +1524 -0
  527. data/ext/cargo-vendor/wit-parser-0.209.1/src/ast.rs +1668 -0
  528. data/ext/cargo-vendor/wit-parser-0.209.1/src/decoding.rs +1795 -0
  529. data/ext/cargo-vendor/wit-parser-0.209.1/src/lib.rs +873 -0
  530. data/ext/cargo-vendor/wit-parser-0.209.1/src/live.rs +126 -0
  531. data/ext/cargo-vendor/wit-parser-0.209.1/src/metadata.rs +772 -0
  532. data/ext/cargo-vendor/wit-parser-0.209.1/src/resolve.rs +2498 -0
  533. data/ext/cargo-vendor/wit-parser-0.209.1/src/serde_.rs +124 -0
  534. data/ext/cargo-vendor/wit-parser-0.209.1/tests/all.rs +154 -0
  535. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/complex-include.wit.json +200 -0
  536. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/diamond1.wit.json +59 -0
  537. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/disambiguate-diamond.wit.json +115 -0
  538. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/feature-gates.wit +118 -0
  539. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/feature-gates.wit.json +288 -0
  540. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/foreign-deps-union.wit.json +410 -0
  541. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/foreign-deps.wit.json +362 -0
  542. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/ignore-files-deps.wit.json +41 -0
  543. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/import-export-overlap2.wit.json +43 -0
  544. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/include-reps.wit.json +68 -0
  545. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/kinds-of-deps.wit.json +95 -0
  546. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/many-names.wit.json +42 -0
  547. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/multi-file.wit.json +304 -0
  548. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate1.wit +8 -0
  549. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate1.wit.result +5 -0
  550. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate2.wit +8 -0
  551. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate2.wit.result +5 -0
  552. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate3.wit +6 -0
  553. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate3.wit.result +8 -0
  554. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate4.wit +8 -0
  555. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate4.wit.result +8 -0
  556. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate5.wit +11 -0
  557. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-gate5.wit.result +8 -0
  558. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-since1.wit +4 -0
  559. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-since1.wit.result +5 -0
  560. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-since3.wit +5 -0
  561. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/bad-since3.wit.result +5 -0
  562. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/conflicting-package.wit.result +10 -0
  563. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/multiple-package-docs.wit.result +10 -0
  564. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/resources-multiple-returns-borrow.wit.result +8 -0
  565. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/resources-return-borrow.wit.result +8 -0
  566. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/return-borrow1.wit.result +8 -0
  567. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/return-borrow2.wit.result +8 -0
  568. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/return-borrow6.wit.result +8 -0
  569. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/return-borrow7.wit.result +8 -0
  570. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/parse-fail/return-borrow8.wit.result +9 -0
  571. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/shared-types.wit.json +87 -0
  572. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/since-and-unstable.wit +89 -0
  573. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/since-and-unstable.wit.json +549 -0
  574. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/stress-export-elaborate.wit.json +1156 -0
  575. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/world-diamond.wit.json +124 -0
  576. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/world-iface-no-collide.wit.json +68 -0
  577. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/world-implicit-import1.wit.json +81 -0
  578. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/world-implicit-import2.wit.json +72 -0
  579. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/world-implicit-import3.wit.json +73 -0
  580. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/world-same-fields4.wit.json +82 -0
  581. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/world-top-level-resources.wit.json +237 -0
  582. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/worlds-union-dedup.wit.json +112 -0
  583. data/ext/cargo-vendor/wit-parser-0.209.1/tests/ui/worlds-with-types.wit.json +204 -0
  584. data/ext/src/ruby_api/pooling_allocation_config.rs +6 -6
  585. data/lib/wasmtime/version.rb +1 -1
  586. metadata +1525 -1459
  587. data/ext/cargo-vendor/cranelift-bforest-0.108.1/.cargo-checksum.json +0 -1
  588. data/ext/cargo-vendor/cranelift-bforest-0.108.1/Cargo.toml +0 -40
  589. data/ext/cargo-vendor/cranelift-codegen-0.108.1/.cargo-checksum.json +0 -1
  590. data/ext/cargo-vendor/cranelift-codegen-0.108.1/Cargo.toml +0 -189
  591. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/context.rs +0 -395
  592. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/dce.rs +0 -37
  593. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/dominator_tree.rs +0 -803
  594. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/egraph.rs +0 -839
  595. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/inst_predicates.rs +0 -236
  596. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ir/dfg.rs +0 -1777
  597. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ir/extfunc.rs +0 -411
  598. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ir/immediates.rs +0 -1612
  599. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ir/stackslot.rs +0 -216
  600. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ir/types.rs +0 -629
  601. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/abi.rs +0 -1580
  602. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/args.rs +0 -721
  603. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/emit.rs +0 -3846
  604. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/emit_tests.rs +0 -7902
  605. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/imms.rs +0 -1213
  606. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/mod.rs +0 -3094
  607. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/regs.rs +0 -288
  608. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/unwind/systemv.rs +0 -174
  609. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst.isle +0 -4225
  610. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/pcc.rs +0 -568
  611. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/abi.rs +0 -1051
  612. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/args.rs +0 -1938
  613. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/emit.rs +0 -2681
  614. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/emit_tests.rs +0 -2197
  615. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/encode.rs +0 -654
  616. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/imms.rs +0 -374
  617. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/mod.rs +0 -1975
  618. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/unwind/systemv.rs +0 -170
  619. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/vector.rs +0 -1144
  620. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst.isle +0 -2969
  621. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst_vector.isle +0 -1899
  622. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/lower/isle.rs +0 -625
  623. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/lower.isle +0 -2883
  624. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/mod.rs +0 -260
  625. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/abi.rs +0 -1037
  626. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/args.rs +0 -314
  627. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/emit.rs +0 -3646
  628. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/emit_tests.rs +0 -13389
  629. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/imms.rs +0 -202
  630. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/mod.rs +0 -3421
  631. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/regs.rs +0 -180
  632. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/unwind/systemv.rs +0 -212
  633. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst.isle +0 -5033
  634. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/lower.isle +0 -3995
  635. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/abi.rs +0 -1410
  636. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/args.rs +0 -2256
  637. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/emit.rs +0 -4311
  638. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/emit_state.rs +0 -74
  639. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/emit_tests.rs +0 -5171
  640. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/mod.rs +0 -2838
  641. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/regs.rs +0 -276
  642. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/unwind/systemv.rs +0 -198
  643. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst.isle +0 -5294
  644. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/lower.isle +0 -4808
  645. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/pcc.rs +0 -1014
  646. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isle_prelude.rs +0 -957
  647. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/lib.rs +0 -106
  648. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/abi.rs +0 -2506
  649. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/blockorder.rs +0 -465
  650. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/buffer.rs +0 -2512
  651. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/isle.rs +0 -903
  652. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/lower.rs +0 -1432
  653. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/mod.rs +0 -555
  654. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/reg.rs +0 -522
  655. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/valueregs.rs +0 -138
  656. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/vcode.rs +0 -1741
  657. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/opts/cprop.isle +0 -281
  658. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/opts/shifts.isle +0 -307
  659. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/prelude.isle +0 -646
  660. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/prelude_lower.isle +0 -1073
  661. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/timing.rs +0 -297
  662. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/verifier/mod.rs +0 -1957
  663. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/write.rs +0 -631
  664. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/.cargo-checksum.json +0 -1
  665. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/Cargo.toml +0 -35
  666. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/cdsl/types.rs +0 -496
  667. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/isa/riscv64.rs +0 -168
  668. data/ext/cargo-vendor/cranelift-codegen-shared-0.108.1/.cargo-checksum.json +0 -1
  669. data/ext/cargo-vendor/cranelift-codegen-shared-0.108.1/Cargo.toml +0 -22
  670. data/ext/cargo-vendor/cranelift-codegen-shared-0.108.1/src/constants.rs +0 -28
  671. data/ext/cargo-vendor/cranelift-control-0.108.1/.cargo-checksum.json +0 -1
  672. data/ext/cargo-vendor/cranelift-control-0.108.1/Cargo.toml +0 -30
  673. data/ext/cargo-vendor/cranelift-entity-0.108.1/.cargo-checksum.json +0 -1
  674. data/ext/cargo-vendor/cranelift-entity-0.108.1/Cargo.toml +0 -52
  675. data/ext/cargo-vendor/cranelift-entity-0.108.1/src/set.rs +0 -290
  676. data/ext/cargo-vendor/cranelift-frontend-0.108.1/.cargo-checksum.json +0 -1
  677. data/ext/cargo-vendor/cranelift-frontend-0.108.1/Cargo.toml +0 -67
  678. data/ext/cargo-vendor/cranelift-frontend-0.108.1/src/frontend.rs +0 -1854
  679. data/ext/cargo-vendor/cranelift-frontend-0.108.1/src/lib.rs +0 -189
  680. data/ext/cargo-vendor/cranelift-frontend-0.108.1/src/ssa.rs +0 -1328
  681. data/ext/cargo-vendor/cranelift-isle-0.108.1/.cargo-checksum.json +0 -1
  682. data/ext/cargo-vendor/cranelift-isle-0.108.1/Cargo.toml +0 -46
  683. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/sema.rs +0 -2492
  684. data/ext/cargo-vendor/cranelift-native-0.108.1/.cargo-checksum.json +0 -1
  685. data/ext/cargo-vendor/cranelift-native-0.108.1/Cargo.toml +0 -43
  686. data/ext/cargo-vendor/cranelift-native-0.108.1/src/lib.rs +0 -188
  687. data/ext/cargo-vendor/cranelift-native-0.108.1/src/riscv.rs +0 -128
  688. data/ext/cargo-vendor/cranelift-wasm-0.108.1/.cargo-checksum.json +0 -1
  689. data/ext/cargo-vendor/cranelift-wasm-0.108.1/Cargo.toml +0 -109
  690. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/code_translator.rs +0 -3687
  691. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/func_translator.rs +0 -296
  692. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/module_translator.rs +0 -128
  693. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/sections_translator.rs +0 -389
  694. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/state.rs +0 -522
  695. data/ext/cargo-vendor/object-0.33.0/.cargo-checksum.json +0 -1
  696. data/ext/cargo-vendor/object-0.33.0/CHANGELOG.md +0 -797
  697. data/ext/cargo-vendor/object-0.33.0/Cargo.toml +0 -179
  698. data/ext/cargo-vendor/object-0.33.0/README.md +0 -56
  699. data/ext/cargo-vendor/object-0.33.0/src/build/bytes.rs +0 -141
  700. data/ext/cargo-vendor/object-0.33.0/src/build/elf.rs +0 -3033
  701. data/ext/cargo-vendor/object-0.33.0/src/common.rs +0 -568
  702. data/ext/cargo-vendor/object-0.33.0/src/elf.rs +0 -6291
  703. data/ext/cargo-vendor/object-0.33.0/src/endian.rs +0 -831
  704. data/ext/cargo-vendor/object-0.33.0/src/macho.rs +0 -3309
  705. data/ext/cargo-vendor/object-0.33.0/src/pod.rs +0 -239
  706. data/ext/cargo-vendor/object-0.33.0/src/read/any.rs +0 -1328
  707. data/ext/cargo-vendor/object-0.33.0/src/read/archive.rs +0 -759
  708. data/ext/cargo-vendor/object-0.33.0/src/read/coff/comdat.rs +0 -211
  709. data/ext/cargo-vendor/object-0.33.0/src/read/coff/file.rs +0 -383
  710. data/ext/cargo-vendor/object-0.33.0/src/read/coff/relocation.rs +0 -108
  711. data/ext/cargo-vendor/object-0.33.0/src/read/coff/section.rs +0 -585
  712. data/ext/cargo-vendor/object-0.33.0/src/read/coff/symbol.rs +0 -635
  713. data/ext/cargo-vendor/object-0.33.0/src/read/elf/attributes.rs +0 -306
  714. data/ext/cargo-vendor/object-0.33.0/src/read/elf/comdat.rs +0 -162
  715. data/ext/cargo-vendor/object-0.33.0/src/read/elf/file.rs +0 -918
  716. data/ext/cargo-vendor/object-0.33.0/src/read/elf/hash.rs +0 -224
  717. data/ext/cargo-vendor/object-0.33.0/src/read/elf/note.rs +0 -271
  718. data/ext/cargo-vendor/object-0.33.0/src/read/elf/relocation.rs +0 -629
  719. data/ext/cargo-vendor/object-0.33.0/src/read/elf/section.rs +0 -1150
  720. data/ext/cargo-vendor/object-0.33.0/src/read/elf/segment.rs +0 -356
  721. data/ext/cargo-vendor/object-0.33.0/src/read/elf/symbol.rs +0 -595
  722. data/ext/cargo-vendor/object-0.33.0/src/read/elf/version.rs +0 -424
  723. data/ext/cargo-vendor/object-0.33.0/src/read/macho/dyld_cache.rs +0 -345
  724. data/ext/cargo-vendor/object-0.33.0/src/read/macho/file.rs +0 -783
  725. data/ext/cargo-vendor/object-0.33.0/src/read/macho/load_command.rs +0 -386
  726. data/ext/cargo-vendor/object-0.33.0/src/read/macho/section.rs +0 -389
  727. data/ext/cargo-vendor/object-0.33.0/src/read/macho/segment.rs +0 -303
  728. data/ext/cargo-vendor/object-0.33.0/src/read/macho/symbol.rs +0 -492
  729. data/ext/cargo-vendor/object-0.33.0/src/read/mod.rs +0 -880
  730. data/ext/cargo-vendor/object-0.33.0/src/read/pe/file.rs +0 -1053
  731. data/ext/cargo-vendor/object-0.33.0/src/read/pe/import.rs +0 -339
  732. data/ext/cargo-vendor/object-0.33.0/src/read/pe/relocation.rs +0 -92
  733. data/ext/cargo-vendor/object-0.33.0/src/read/pe/section.rs +0 -440
  734. data/ext/cargo-vendor/object-0.33.0/src/read/read_cache.rs +0 -213
  735. data/ext/cargo-vendor/object-0.33.0/src/read/traits.rs +0 -551
  736. data/ext/cargo-vendor/object-0.33.0/src/read/wasm.rs +0 -966
  737. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/file.rs +0 -697
  738. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/relocation.rs +0 -134
  739. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/section.rs +0 -433
  740. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/symbol.rs +0 -784
  741. data/ext/cargo-vendor/object-0.33.0/src/write/coff/object.rs +0 -678
  742. data/ext/cargo-vendor/object-0.33.0/src/write/coff/writer.rs +0 -518
  743. data/ext/cargo-vendor/object-0.33.0/src/write/elf/object.rs +0 -885
  744. data/ext/cargo-vendor/object-0.33.0/src/write/elf/writer.rs +0 -2309
  745. data/ext/cargo-vendor/object-0.33.0/src/write/macho.rs +0 -1107
  746. data/ext/cargo-vendor/object-0.33.0/src/write/mod.rs +0 -990
  747. data/ext/cargo-vendor/object-0.33.0/src/write/pe.rs +0 -847
  748. data/ext/cargo-vendor/object-0.33.0/src/write/xcoff.rs +0 -589
  749. data/ext/cargo-vendor/object-0.33.0/tests/integration.rs +0 -2
  750. data/ext/cargo-vendor/object-0.33.0/tests/read/mod.rs +0 -4
  751. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/bss.rs +0 -255
  752. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/comdat.rs +0 -225
  753. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/common.rs +0 -245
  754. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/elf.rs +0 -289
  755. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/mod.rs +0 -704
  756. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/section_flags.rs +0 -90
  757. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/tls.rs +0 -316
  758. data/ext/cargo-vendor/wasi-common-21.0.1/.cargo-checksum.json +0 -1
  759. data/ext/cargo-vendor/wasi-common-21.0.1/Cargo.toml +0 -223
  760. data/ext/cargo-vendor/wasi-common-21.0.1/src/snapshots/preview_0.rs +0 -1145
  761. data/ext/cargo-vendor/wasi-common-21.0.1/src/snapshots/preview_1.rs +0 -1497
  762. data/ext/cargo-vendor/wasi-common-21.0.1/src/string_array.rs +0 -74
  763. data/ext/cargo-vendor/wasi-common-21.0.1/src/sync/sched/windows.rs +0 -221
  764. data/ext/cargo-vendor/wasi-common-21.0.1/src/tokio/file.rs +0 -247
  765. data/ext/cargo-vendor/wasm-encoder-0.207.0/.cargo-checksum.json +0 -1
  766. data/ext/cargo-vendor/wasm-encoder-0.207.0/Cargo.toml +0 -45
  767. data/ext/cargo-vendor/wasm-encoder-0.207.0/README.md +0 -80
  768. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/aliases.rs +0 -160
  769. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/builder.rs +0 -455
  770. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/canonicals.rs +0 -159
  771. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/components.rs +0 -29
  772. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/exports.rs +0 -124
  773. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/imports.rs +0 -175
  774. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/instances.rs +0 -200
  775. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/modules.rs +0 -29
  776. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/names.rs +0 -149
  777. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/start.rs +0 -52
  778. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component/types.rs +0 -792
  779. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/component.rs +0 -168
  780. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/code.rs +0 -3502
  781. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/custom.rs +0 -73
  782. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/data.rs +0 -186
  783. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/dump.rs +0 -627
  784. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/elements.rs +0 -221
  785. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/exports.rs +0 -98
  786. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/functions.rs +0 -63
  787. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/globals.rs +0 -112
  788. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/imports.rs +0 -157
  789. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/linking.rs +0 -263
  790. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/memories.rs +0 -128
  791. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/names.rs +0 -298
  792. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/producers.rs +0 -180
  793. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/start.rs +0 -39
  794. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/tables.rs +0 -134
  795. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/tags.rs +0 -104
  796. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/types.rs +0 -678
  797. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core.rs +0 -168
  798. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/lib.rs +0 -215
  799. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/raw.rs +0 -30
  800. data/ext/cargo-vendor/wasmparser-0.207.0/.cargo-checksum.json +0 -1
  801. data/ext/cargo-vendor/wasmparser-0.207.0/Cargo.lock +0 -659
  802. data/ext/cargo-vendor/wasmparser-0.207.0/Cargo.toml +0 -95
  803. data/ext/cargo-vendor/wasmparser-0.207.0/src/binary_reader.rs +0 -1867
  804. data/ext/cargo-vendor/wasmparser-0.207.0/src/lib.rs +0 -805
  805. data/ext/cargo-vendor/wasmparser-0.207.0/src/limits.rs +0 -78
  806. data/ext/cargo-vendor/wasmparser-0.207.0/src/map.rs +0 -137
  807. data/ext/cargo-vendor/wasmparser-0.207.0/src/parser.rs +0 -1636
  808. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/imports.rs +0 -129
  809. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/instances.rs +0 -164
  810. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/names.rs +0 -102
  811. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/types.rs +0 -551
  812. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/branch_hinting.rs +0 -59
  813. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/code.rs +0 -146
  814. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/coredumps.rs +0 -244
  815. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/custom.rs +0 -64
  816. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/data.rs +0 -96
  817. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/elements.rs +0 -152
  818. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/globals.rs +0 -51
  819. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/init.rs +0 -51
  820. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/linking.rs +0 -450
  821. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/names.rs +0 -159
  822. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/operators.rs +0 -430
  823. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/producers.rs +0 -83
  824. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/reloc.rs +0 -301
  825. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/types.rs +0 -1773
  826. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers.rs +0 -316
  827. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/component.rs +0 -3242
  828. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/core/canonical.rs +0 -233
  829. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/core.rs +0 -1450
  830. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/func.rs +0 -331
  831. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/names.rs +0 -947
  832. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/operators.rs +0 -4117
  833. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/types.rs +0 -4492
  834. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator.rs +0 -1786
  835. data/ext/cargo-vendor/wasmprinter-0.207.0/.cargo-checksum.json +0 -1
  836. data/ext/cargo-vendor/wasmprinter-0.207.0/Cargo.toml +0 -50
  837. data/ext/cargo-vendor/wasmprinter-0.207.0/src/lib.rs +0 -3226
  838. data/ext/cargo-vendor/wasmprinter-0.207.0/src/operator.rs +0 -1164
  839. data/ext/cargo-vendor/wasmtime-21.0.1/.cargo-checksum.json +0 -1
  840. data/ext/cargo-vendor/wasmtime-21.0.1/Cargo.toml +0 -386
  841. data/ext/cargo-vendor/wasmtime-21.0.1/build.rs +0 -37
  842. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile/runtime.rs +0 -176
  843. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile.rs +0 -910
  844. data/ext/cargo-vendor/wasmtime-21.0.1/src/config.rs +0 -2904
  845. data/ext/cargo-vendor/wasmtime-21.0.1/src/engine/serialization.rs +0 -887
  846. data/ext/cargo-vendor/wasmtime-21.0.1/src/lib.rs +0 -328
  847. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/jitdump.rs +0 -67
  848. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/perfmap.rs +0 -48
  849. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/code.rs +0 -102
  850. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/code_memory.rs +0 -337
  851. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/component.rs +0 -661
  852. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func/typed.rs +0 -2498
  853. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func.rs +0 -746
  854. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/instance.rs +0 -814
  855. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/linker.rs +0 -783
  856. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/matching.rs +0 -217
  857. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/mod.rs +0 -783
  858. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/resource_table.rs +0 -355
  859. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/types.rs +0 -892
  860. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/debug.rs +0 -166
  861. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals/global.rs +0 -310
  862. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals/table.rs +0 -477
  863. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/func/typed.rs +0 -899
  864. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/func.rs +0 -2627
  865. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/anyref.rs +0 -473
  866. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/externref.rs +0 -650
  867. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/i31.rs +0 -346
  868. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc.rs +0 -89
  869. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/instance.rs +0 -992
  870. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/instantiate.rs +0 -346
  871. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/linker.rs +0 -1506
  872. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/module/registry.rs +0 -353
  873. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/module.rs +0 -1295
  874. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store/func_refs.rs +0 -90
  875. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store.rs +0 -2820
  876. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/func.rs +0 -139
  877. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/memory.rs +0 -287
  878. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/type_registry.rs +0 -807
  879. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/types.rs +0 -2239
  880. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/v128.rs +0 -131
  881. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/values.rs +0 -966
  882. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component/resources.rs +0 -352
  883. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component.rs +0 -860
  884. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/cow.rs +0 -893
  885. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/export.rs +0 -108
  886. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/gc_ref.rs +0 -491
  887. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/on_demand.rs +0 -218
  888. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/gc_heap_pool.rs +0 -93
  889. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/generic_stack_pool.rs +0 -66
  890. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/index_allocator.rs +0 -705
  891. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +0 -1000
  892. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/table_pool.rs +0 -233
  893. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/unix_stack_pool.rs +0 -245
  894. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling.rs +0 -656
  895. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator.rs +0 -798
  896. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance.rs +0 -1519
  897. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/memory.rs +0 -744
  898. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/capi.rs +0 -200
  899. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/vm.rs +0 -109
  900. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/miri/vm.rs +0 -63
  901. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/mod.rs +0 -25
  902. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/signals.rs +0 -401
  903. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/vm.rs +0 -215
  904. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/windows/vm.rs +0 -79
  905. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/table.rs +0 -847
  906. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers.rs +0 -768
  907. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/vmcontext/vm_host_func_context.rs +0 -138
  908. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/vmcontext.rs +0 -1337
  909. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm.rs +0 -287
  910. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime.rs +0 -110
  911. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/.cargo-checksum.json +0 -1
  912. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/Cargo.toml +0 -22
  913. data/ext/cargo-vendor/wasmtime-cache-21.0.1/.cargo-checksum.json +0 -1
  914. data/ext/cargo-vendor/wasmtime-cache-21.0.1/Cargo.toml +0 -88
  915. data/ext/cargo-vendor/wasmtime-cache-21.0.1/src/config.rs +0 -584
  916. data/ext/cargo-vendor/wasmtime-cache-21.0.1/src/lib.rs +0 -235
  917. data/ext/cargo-vendor/wasmtime-cache-21.0.1/src/tests.rs +0 -91
  918. data/ext/cargo-vendor/wasmtime-cache-21.0.1/src/worker/tests.rs +0 -758
  919. data/ext/cargo-vendor/wasmtime-cache-21.0.1/src/worker.rs +0 -890
  920. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/.cargo-checksum.json +0 -1
  921. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/Cargo.toml +0 -79
  922. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/src/bindgen.rs +0 -436
  923. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/src/component.rs +0 -1295
  924. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/tests/codegen.rs +0 -576
  925. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/.cargo-checksum.json +0 -1
  926. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/Cargo.toml +0 -25
  927. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/.cargo-checksum.json +0 -1
  928. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/Cargo.toml +0 -114
  929. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/compiler/component.rs +0 -968
  930. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/compiler.rs +0 -1383
  931. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/address_transform.rs +0 -783
  932. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/mod.rs +0 -256
  933. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/simulate.rs +0 -411
  934. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/unit.rs +0 -529
  935. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/utils.rs +0 -186
  936. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/write_debuginfo.rs +0 -196
  937. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/func_environ.rs +0 -2888
  938. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/gc/enabled.rs +0 -648
  939. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/lib.rs +0 -511
  940. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/obj.rs +0 -545
  941. data/ext/cargo-vendor/wasmtime-environ-21.0.1/.cargo-checksum.json +0 -1
  942. data/ext/cargo-vendor/wasmtime-environ-21.0.1/Cargo.lock +0 -772
  943. data/ext/cargo-vendor/wasmtime-environ-21.0.1/Cargo.toml +0 -154
  944. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/address_map.rs +0 -73
  945. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/mod.rs +0 -419
  946. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_artifacts.rs +0 -315
  947. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_environ.rs +0 -1337
  948. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_types.rs +0 -362
  949. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/artifacts.rs +0 -72
  950. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/info.rs +0 -672
  951. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/translate/adapt.rs +0 -455
  952. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/translate.rs +0 -978
  953. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types.rs +0 -1029
  954. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types_builder/resources.rs +0 -233
  955. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types_builder.rs +0 -997
  956. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/trampoline.rs +0 -3234
  957. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/transcode.rs +0 -90
  958. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact.rs +0 -714
  959. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/lib.rs +0 -161
  960. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module.rs +0 -697
  961. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module_artifacts.rs +0 -146
  962. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module_types.rs +0 -91
  963. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/ref_bits.rs +0 -36
  964. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/tunables.rs +0 -168
  965. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/vmoffsets.rs +0 -1015
  966. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/.cargo-checksum.json +0 -1
  967. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/Cargo.toml +0 -64
  968. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/build.rs +0 -38
  969. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/lib.rs +0 -328
  970. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/unix.rs +0 -490
  971. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/windows.rs +0 -166
  972. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/.cargo-checksum.json +0 -1
  973. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/Cargo.toml +0 -67
  974. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/src/gdb_jit_int.rs +0 -130
  975. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/src/perf_jitdump.rs +0 -293
  976. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/.cargo-checksum.json +0 -1
  977. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/Cargo.toml +0 -51
  978. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/libc.rs +0 -163
  979. data/ext/cargo-vendor/wasmtime-slab-21.0.1/.cargo-checksum.json +0 -1
  980. data/ext/cargo-vendor/wasmtime-slab-21.0.1/Cargo.toml +0 -21
  981. data/ext/cargo-vendor/wasmtime-slab-21.0.1/src/lib.rs +0 -498
  982. data/ext/cargo-vendor/wasmtime-types-21.0.1/.cargo-checksum.json +0 -1
  983. data/ext/cargo-vendor/wasmtime-types-21.0.1/Cargo.toml +0 -55
  984. data/ext/cargo-vendor/wasmtime-types-21.0.1/src/lib.rs +0 -1572
  985. data/ext/cargo-vendor/wasmtime-versioned-export-macros-21.0.1/.cargo-checksum.json +0 -1
  986. data/ext/cargo-vendor/wasmtime-versioned-export-macros-21.0.1/Cargo.toml +0 -32
  987. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/.cargo-checksum.json +0 -1
  988. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/Cargo.toml +0 -200
  989. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/bindings.rs +0 -280
  990. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/ctx.rs +0 -667
  991. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/filesystem.rs +0 -446
  992. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/clocks.rs +0 -103
  993. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/env.rs +0 -15
  994. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/exit.rs +0 -11
  995. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/filesystem/sync.rs +0 -518
  996. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/filesystem.rs +0 -1079
  997. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/instance_network.rs +0 -15
  998. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/io.rs +0 -367
  999. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/network.rs +0 -539
  1000. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/random.rs +0 -36
  1001. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/tcp.rs +0 -306
  1002. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/tcp_create_socket.rs +0 -15
  1003. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/udp.rs +0 -532
  1004. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/host/udp_create_socket.rs +0 -15
  1005. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/ip_name_lookup.rs +0 -126
  1006. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/lib.rs +0 -426
  1007. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/network.rs +0 -107
  1008. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/pipe.rs +0 -826
  1009. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/poll.rs +0 -233
  1010. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/preview0.rs +0 -877
  1011. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/preview1.rs +0 -2660
  1012. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/stdio.rs +0 -507
  1013. data/ext/cargo-vendor/wasmtime-winch-21.0.1/.cargo-checksum.json +0 -1
  1014. data/ext/cargo-vendor/wasmtime-winch-21.0.1/Cargo.toml +0 -81
  1015. data/ext/cargo-vendor/wasmtime-winch-21.0.1/src/compiler.rs +0 -261
  1016. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/.cargo-checksum.json +0 -1
  1017. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/Cargo.toml +0 -46
  1018. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/src/lib.rs +0 -2541
  1019. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/src/rust.rs +0 -421
  1020. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/src/types.rs +0 -202
  1021. data/ext/cargo-vendor/wiggle-21.0.1/.cargo-checksum.json +0 -1
  1022. data/ext/cargo-vendor/wiggle-21.0.1/Cargo.toml +0 -123
  1023. data/ext/cargo-vendor/wiggle-21.0.1/src/borrow.rs +0 -113
  1024. data/ext/cargo-vendor/wiggle-21.0.1/src/guest_type.rs +0 -237
  1025. data/ext/cargo-vendor/wiggle-21.0.1/src/lib.rs +0 -1184
  1026. data/ext/cargo-vendor/wiggle-21.0.1/src/wasmtime.rs +0 -97
  1027. data/ext/cargo-vendor/wiggle-generate-21.0.1/.cargo-checksum.json +0 -1
  1028. data/ext/cargo-vendor/wiggle-generate-21.0.1/Cargo.toml +0 -66
  1029. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/funcs.rs +0 -435
  1030. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/module_trait.rs +0 -102
  1031. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/names.rs +0 -303
  1032. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/types/flags.rs +0 -92
  1033. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/types/handle.rs +0 -84
  1034. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/types/mod.rs +0 -129
  1035. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/types/record.rs +0 -132
  1036. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/types/variant.rs +0 -191
  1037. data/ext/cargo-vendor/wiggle-generate-21.0.1/src/wasmtime.rs +0 -170
  1038. data/ext/cargo-vendor/wiggle-macro-21.0.1/.cargo-checksum.json +0 -1
  1039. data/ext/cargo-vendor/wiggle-macro-21.0.1/Cargo.toml +0 -55
  1040. data/ext/cargo-vendor/wiggle-macro-21.0.1/LICENSE +0 -220
  1041. data/ext/cargo-vendor/wiggle-macro-21.0.1/src/lib.rs +0 -210
  1042. data/ext/cargo-vendor/winch-codegen-0.19.1/.cargo-checksum.json +0 -1
  1043. data/ext/cargo-vendor/winch-codegen-0.19.1/Cargo.toml +0 -76
  1044. data/ext/cargo-vendor/winch-codegen-0.19.1/src/abi/mod.rs +0 -671
  1045. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/context.rs +0 -534
  1046. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/control.rs +0 -972
  1047. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/env.rs +0 -440
  1048. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/mod.rs +0 -882
  1049. data/ext/cargo-vendor/winch-codegen-0.19.1/src/frame/mod.rs +0 -258
  1050. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/asm.rs +0 -380
  1051. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/masm.rs +0 -566
  1052. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/regs.rs +0 -161
  1053. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/x64/asm.rs +0 -1423
  1054. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/x64/masm.rs +0 -1120
  1055. data/ext/cargo-vendor/winch-codegen-0.19.1/src/masm.rs +0 -941
  1056. data/ext/cargo-vendor/winch-codegen-0.19.1/src/regalloc.rs +0 -65
  1057. data/ext/cargo-vendor/winch-codegen-0.19.1/src/stack.rs +0 -439
  1058. data/ext/cargo-vendor/winch-codegen-0.19.1/src/visitor.rs +0 -2144
  1059. data/ext/cargo-vendor/wit-parser-0.207.0/.cargo-checksum.json +0 -1
  1060. data/ext/cargo-vendor/wit-parser-0.207.0/Cargo.toml +0 -109
  1061. data/ext/cargo-vendor/wit-parser-0.207.0/src/ast/resolve.rs +0 -1442
  1062. data/ext/cargo-vendor/wit-parser-0.207.0/src/ast.rs +0 -1348
  1063. data/ext/cargo-vendor/wit-parser-0.207.0/src/decoding.rs +0 -1764
  1064. data/ext/cargo-vendor/wit-parser-0.207.0/src/docs.rs +0 -389
  1065. data/ext/cargo-vendor/wit-parser-0.207.0/src/lib.rs +0 -777
  1066. data/ext/cargo-vendor/wit-parser-0.207.0/src/live.rs +0 -126
  1067. data/ext/cargo-vendor/wit-parser-0.207.0/src/resolve.rs +0 -2337
  1068. data/ext/cargo-vendor/wit-parser-0.207.0/src/serde_.rs +0 -108
  1069. data/ext/cargo-vendor/wit-parser-0.207.0/tests/all.rs +0 -153
  1070. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/complex-include.wit.json +0 -168
  1071. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/diamond1.wit.json +0 -55
  1072. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/disambiguate-diamond.wit.json +0 -107
  1073. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/foreign-deps-union.wit.json +0 -380
  1074. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/foreign-deps.wit.json +0 -344
  1075. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/ignore-files-deps.wit.json +0 -39
  1076. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/import-export-overlap2.wit.json +0 -41
  1077. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/include-reps.wit.json +0 -60
  1078. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/kinds-of-deps.wit.json +0 -87
  1079. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/many-names.wit.json +0 -40
  1080. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/multi-file.wit.json +0 -298
  1081. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/conflicting-package.wit.result +0 -9
  1082. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/multiple-package-docs.wit.result +0 -9
  1083. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/resources-multiple-returns-borrow.wit.result +0 -5
  1084. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/resources-return-borrow.wit.result +0 -5
  1085. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow1.wit.result +0 -5
  1086. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow2.wit.result +0 -5
  1087. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow6.wit.result +0 -5
  1088. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow7.wit.result +0 -5
  1089. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow8.wit.result +0 -8
  1090. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/shared-types.wit.json +0 -83
  1091. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/stress-export-elaborate.wit.json +0 -1136
  1092. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-diamond.wit.json +0 -118
  1093. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-iface-no-collide.wit.json +0 -66
  1094. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-implicit-import1.wit.json +0 -75
  1095. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-implicit-import2.wit.json +0 -70
  1096. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-implicit-import3.wit.json +0 -71
  1097. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-same-fields4.wit.json +0 -76
  1098. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-top-level-resources.wit.json +0 -231
  1099. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/worlds-union-dedup.wit.json +0 -100
  1100. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/worlds-with-types.wit.json +0 -202
  1101. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/LICENSE +0 -0
  1102. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/README.md +0 -0
  1103. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/src/lib.rs +0 -0
  1104. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/src/map.rs +0 -0
  1105. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/src/node.rs +0 -0
  1106. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/src/path.rs +0 -0
  1107. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/src/pool.rs +0 -0
  1108. /data/ext/cargo-vendor/{cranelift-bforest-0.108.1 → cranelift-bforest-0.109.0}/src/set.rs +0 -0
  1109. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/LICENSE +0 -0
  1110. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/README.md +0 -0
  1111. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/benches/x64-evex-encoding.rs +0 -0
  1112. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/build.rs +0 -0
  1113. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/alias_analysis.rs +0 -0
  1114. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/binemit/mod.rs +0 -0
  1115. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/binemit/stack_map.rs +0 -0
  1116. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/bitset.rs +0 -0
  1117. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/cfg_printer.rs +0 -0
  1118. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/constant_hash.rs +0 -0
  1119. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ctxhash.rs +0 -0
  1120. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/cursor.rs +0 -0
  1121. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/data_value.rs +0 -0
  1122. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/dbg.rs +0 -0
  1123. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/egraph/cost.rs +0 -0
  1124. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/egraph/elaborate.rs +0 -0
  1125. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/flowgraph.rs +0 -0
  1126. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/incremental_cache.rs +0 -0
  1127. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/atomic_rmw_op.rs +0 -0
  1128. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/builder.rs +0 -0
  1129. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/condcodes.rs +0 -0
  1130. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/constant.rs +0 -0
  1131. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/dynamic_type.rs +0 -0
  1132. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/entities.rs +0 -0
  1133. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/extname.rs +0 -0
  1134. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/function.rs +0 -0
  1135. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/globalvalue.rs +0 -0
  1136. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/instructions.rs +0 -0
  1137. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/jumptable.rs +0 -0
  1138. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/known_symbol.rs +0 -0
  1139. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/layout.rs +0 -0
  1140. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/libcall.rs +0 -0
  1141. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/memflags.rs +0 -0
  1142. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/memtype.rs +0 -0
  1143. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/mod.rs +0 -0
  1144. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/pcc.rs +0 -0
  1145. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/progpoint.rs +0 -0
  1146. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/sourceloc.rs +0 -0
  1147. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ir/trapcode.rs +0 -0
  1148. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/inst/unwind.rs +0 -0
  1149. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/inst_neon.isle +0 -0
  1150. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/lower/isle/generated_code.rs +0 -0
  1151. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/lower/isle.rs +0 -0
  1152. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/lower.isle +0 -0
  1153. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/lower.rs +0 -0
  1154. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/lower_dynamic_neon.isle +0 -0
  1155. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/mod.rs +0 -0
  1156. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/aarch64/settings.rs +0 -0
  1157. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/call_conv.rs +0 -0
  1158. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/mod.rs +0 -0
  1159. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/riscv64/inst/regs.rs +0 -0
  1160. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/riscv64/inst/unwind.rs +0 -0
  1161. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/riscv64/lower/isle/generated_code.rs +0 -0
  1162. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/riscv64/lower.rs +0 -0
  1163. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/riscv64/settings.rs +0 -0
  1164. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/s390x/inst/unwind.rs +0 -0
  1165. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/s390x/lower/isle/generated_code.rs +0 -0
  1166. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/s390x/lower/isle.rs +0 -0
  1167. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/s390x/lower.rs +0 -0
  1168. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/s390x/mod.rs +0 -0
  1169. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/s390x/settings.rs +0 -0
  1170. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/unwind/systemv.rs +0 -0
  1171. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/unwind/winx64.rs +0 -0
  1172. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/unwind.rs +0 -0
  1173. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/encoding/evex.rs +0 -0
  1174. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/encoding/mod.rs +0 -0
  1175. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/encoding/rex.rs +0 -0
  1176. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/encoding/vex.rs +0 -0
  1177. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/inst/unwind/winx64.rs +0 -0
  1178. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/inst/unwind.rs +0 -0
  1179. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/lower/isle/generated_code.rs +0 -0
  1180. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/lower/isle.rs +0 -0
  1181. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/lower.rs +0 -0
  1182. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/mod.rs +0 -0
  1183. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/isa/x64/settings.rs +0 -0
  1184. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/iterators.rs +0 -0
  1185. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/legalizer/globalvalue.rs +0 -0
  1186. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/legalizer/mod.rs +0 -0
  1187. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/loop_analysis.rs +0 -0
  1188. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/machinst/compile.rs +0 -0
  1189. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/machinst/helpers.rs +0 -0
  1190. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/machinst/inst_common.rs +0 -0
  1191. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/machinst/pcc.rs +0 -0
  1192. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/nan_canonicalization.rs +0 -0
  1193. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/README.md +0 -0
  1194. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/arithmetic.isle +0 -0
  1195. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/bitops.isle +0 -0
  1196. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/extends.isle +0 -0
  1197. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/generated_code.rs +0 -0
  1198. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/icmp.isle +0 -0
  1199. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/remat.isle +0 -0
  1200. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/selects.isle +0 -0
  1201. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/spaceship.isle +0 -0
  1202. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/spectre.isle +0 -0
  1203. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts/vector.isle +0 -0
  1204. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/opts.rs +0 -0
  1205. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/prelude_opt.isle +0 -0
  1206. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/print_errors.rs +0 -0
  1207. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/ranges.rs +0 -0
  1208. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/remove_constant_phis.rs +0 -0
  1209. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/result.rs +0 -0
  1210. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/scoped_hash_map.rs +0 -0
  1211. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/settings.rs +0 -0
  1212. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/souper_harvest.rs +0 -0
  1213. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/unionfind.rs +0 -0
  1214. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/unreachable_code.rs +0 -0
  1215. /data/ext/cargo-vendor/{cranelift-codegen-0.108.1 → cranelift-codegen-0.109.0}/src/value_label.rs +0 -0
  1216. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/LICENSE +0 -0
  1217. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/README.md +0 -0
  1218. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/cdsl/formats.rs +0 -0
  1219. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/cdsl/instructions.rs +0 -0
  1220. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/cdsl/isa.rs +0 -0
  1221. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/cdsl/mod.rs +0 -0
  1222. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/cdsl/operands.rs +0 -0
  1223. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/cdsl/settings.rs +0 -0
  1224. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/cdsl/typevar.rs +0 -0
  1225. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/constant_hash.rs +0 -0
  1226. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/error.rs +0 -0
  1227. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/gen_inst.rs +0 -0
  1228. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/gen_isle.rs +0 -0
  1229. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/gen_settings.rs +0 -0
  1230. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/gen_types.rs +0 -0
  1231. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/isa/arm64.rs +0 -0
  1232. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/isa/mod.rs +0 -0
  1233. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/isa/s390x.rs +0 -0
  1234. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/isa/x86.rs +0 -0
  1235. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/isle.rs +0 -0
  1236. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/lib.rs +0 -0
  1237. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/shared/entities.rs +0 -0
  1238. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/shared/formats.rs +0 -0
  1239. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/shared/immediates.rs +0 -0
  1240. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/shared/instructions.rs +0 -0
  1241. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/shared/mod.rs +0 -0
  1242. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/shared/settings.rs +0 -0
  1243. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/shared/types.rs +0 -0
  1244. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/srcgen.rs +0 -0
  1245. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.108.1 → cranelift-codegen-meta-0.109.0}/src/unique_table.rs +0 -0
  1246. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.108.1 → cranelift-codegen-shared-0.109.0}/LICENSE +0 -0
  1247. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.108.1 → cranelift-codegen-shared-0.109.0}/README.md +0 -0
  1248. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.108.1 → cranelift-codegen-shared-0.109.0}/src/constant_hash.rs +0 -0
  1249. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.108.1 → cranelift-codegen-shared-0.109.0}/src/lib.rs +0 -0
  1250. /data/ext/cargo-vendor/{cranelift-control-0.108.1 → cranelift-control-0.109.0}/LICENSE +0 -0
  1251. /data/ext/cargo-vendor/{cranelift-control-0.108.1 → cranelift-control-0.109.0}/README.md +0 -0
  1252. /data/ext/cargo-vendor/{cranelift-control-0.108.1 → cranelift-control-0.109.0}/src/chaos.rs +0 -0
  1253. /data/ext/cargo-vendor/{cranelift-control-0.108.1 → cranelift-control-0.109.0}/src/lib.rs +0 -0
  1254. /data/ext/cargo-vendor/{cranelift-control-0.108.1 → cranelift-control-0.109.0}/src/zero_sized.rs +0 -0
  1255. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/LICENSE +0 -0
  1256. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/README.md +0 -0
  1257. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/boxed_slice.rs +0 -0
  1258. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/iter.rs +0 -0
  1259. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/keys.rs +0 -0
  1260. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/lib.rs +0 -0
  1261. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/list.rs +0 -0
  1262. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/map.rs +0 -0
  1263. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/packed_option.rs +0 -0
  1264. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/primary.rs +0 -0
  1265. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/sparse.rs +0 -0
  1266. /data/ext/cargo-vendor/{cranelift-entity-0.108.1 → cranelift-entity-0.109.0}/src/unsigned.rs +0 -0
  1267. /data/ext/cargo-vendor/{cranelift-frontend-0.108.1 → cranelift-frontend-0.109.0}/LICENSE +0 -0
  1268. /data/ext/cargo-vendor/{cranelift-frontend-0.108.1 → cranelift-frontend-0.109.0}/README.md +0 -0
  1269. /data/ext/cargo-vendor/{cranelift-frontend-0.108.1 → cranelift-frontend-0.109.0}/src/switch.rs +0 -0
  1270. /data/ext/cargo-vendor/{cranelift-frontend-0.108.1 → cranelift-frontend-0.109.0}/src/variable.rs +0 -0
  1271. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/README.md +0 -0
  1272. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/build.rs +0 -0
  1273. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/bad_converters.isle +0 -0
  1274. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/bound_var_type_mismatch.isle +0 -0
  1275. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/converter_extractor_constructor.isle +0 -0
  1276. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/error1.isle +0 -0
  1277. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/extra_parens.isle +0 -0
  1278. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/impure_expression.isle +0 -0
  1279. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/impure_rhs.isle +0 -0
  1280. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/multi_internal_etor.isle +0 -0
  1281. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/fail/multi_prio.isle +0 -0
  1282. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/borrows.isle +0 -0
  1283. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/borrows_main.rs +0 -0
  1284. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/iflets.isle +0 -0
  1285. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/iflets_main.rs +0 -0
  1286. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/multi_constructor.isle +0 -0
  1287. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/multi_constructor_main.rs +0 -0
  1288. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/multi_extractor.isle +0 -0
  1289. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/multi_extractor_main.rs +0 -0
  1290. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/test.isle +0 -0
  1291. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/link/test_main.rs +0 -0
  1292. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/bound_var.isle +0 -0
  1293. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/construct_and_extract.isle +0 -0
  1294. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/conversions.isle +0 -0
  1295. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/conversions_extern.isle +0 -0
  1296. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/let.isle +0 -0
  1297. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/nodebug.isle +0 -0
  1298. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/prio_trie_bug.isle +0 -0
  1299. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/test2.isle +0 -0
  1300. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/test3.isle +0 -0
  1301. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/test4.isle +0 -0
  1302. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/pass/tutorial.isle +0 -0
  1303. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/run/iconst.isle +0 -0
  1304. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/run/iconst_main.rs +0 -0
  1305. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/run/let_shadowing.isle +0 -0
  1306. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/isle_examples/run/let_shadowing_main.rs +0 -0
  1307. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/ast.rs +0 -0
  1308. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/codegen.rs +0 -0
  1309. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/compile.rs +0 -0
  1310. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/disjointsets.rs +0 -0
  1311. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/error.rs +0 -0
  1312. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/lexer.rs +0 -0
  1313. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/lib.rs +0 -0
  1314. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/log.rs +0 -0
  1315. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/overlap.rs +0 -0
  1316. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/parser.rs +0 -0
  1317. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/serialize.rs +0 -0
  1318. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/stablemapset.rs +0 -0
  1319. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/src/trie_again.rs +0 -0
  1320. /data/ext/cargo-vendor/{cranelift-isle-0.108.1 → cranelift-isle-0.109.0}/tests/run_tests.rs +0 -0
  1321. /data/ext/cargo-vendor/{cranelift-native-0.108.1 → cranelift-native-0.109.0}/LICENSE +0 -0
  1322. /data/ext/cargo-vendor/{cranelift-native-0.108.1 → cranelift-native-0.109.0}/README.md +0 -0
  1323. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/LICENSE +0 -0
  1324. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/README.md +0 -0
  1325. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/code_translator/bounds_checks.rs +0 -0
  1326. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/environ/dummy.rs +0 -0
  1327. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/environ/mod.rs +0 -0
  1328. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/environ/spec.rs +0 -0
  1329. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/heap.rs +0 -0
  1330. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/lib.rs +0 -0
  1331. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/table.rs +0 -0
  1332. /data/ext/cargo-vendor/{cranelift-wasm-0.108.1 → cranelift-wasm-0.109.0}/src/translation_utils.rs +0 -0
  1333. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/LICENSE-APACHE +0 -0
  1334. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/LICENSE-MIT +0 -0
  1335. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/archive.rs +0 -0
  1336. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/build/error.rs +0 -0
  1337. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/build/mod.rs +0 -0
  1338. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/build/table.rs +0 -0
  1339. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/lib.rs +0 -0
  1340. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/pe.rs +0 -0
  1341. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/coff/import.rs +0 -0
  1342. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/coff/mod.rs +0 -0
  1343. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/elf/compression.rs +0 -0
  1344. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/elf/dynamic.rs +0 -0
  1345. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/elf/mod.rs +0 -0
  1346. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/macho/fat.rs +0 -0
  1347. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/macho/mod.rs +0 -0
  1348. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/macho/relocation.rs +0 -0
  1349. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/pe/data_directory.rs +0 -0
  1350. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/pe/export.rs +0 -0
  1351. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/pe/mod.rs +0 -0
  1352. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/pe/resource.rs +0 -0
  1353. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/pe/rich.rs +0 -0
  1354. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/read_ref.rs +0 -0
  1355. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/util.rs +0 -0
  1356. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/xcoff/comdat.rs +0 -0
  1357. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/xcoff/mod.rs +0 -0
  1358. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/read/xcoff/segment.rs +0 -0
  1359. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/write/coff/mod.rs +0 -0
  1360. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/write/elf/mod.rs +0 -0
  1361. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/write/string.rs +0 -0
  1362. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/write/util.rs +0 -0
  1363. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/src/xcoff.rs +0 -0
  1364. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/tests/parse_self.rs +0 -0
  1365. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/tests/read/coff.rs +0 -0
  1366. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/tests/read/elf.rs +0 -0
  1367. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/tests/round_trip/coff.rs +0 -0
  1368. /data/ext/cargo-vendor/{object-0.33.0 → object-0.36.3}/tests/round_trip/macho.rs +0 -0
  1369. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/LICENSE +0 -0
  1370. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/README.md +0 -0
  1371. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/clocks.rs +0 -0
  1372. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/ctx.rs +0 -0
  1373. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/dir.rs +0 -0
  1374. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/error.rs +0 -0
  1375. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/file.rs +0 -0
  1376. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/lib.rs +0 -0
  1377. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/pipe.rs +0 -0
  1378. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/random.rs +0 -0
  1379. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sched/subscription.rs +0 -0
  1380. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sched.rs +0 -0
  1381. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/snapshots/mod.rs +0 -0
  1382. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/snapshots/preview_1/error.rs +0 -0
  1383. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/clocks.rs +0 -0
  1384. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/dir.rs +0 -0
  1385. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/file.rs +0 -0
  1386. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/mod.rs +0 -0
  1387. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/net.rs +0 -0
  1388. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/sched/unix.rs +0 -0
  1389. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/sched.rs +0 -0
  1390. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/sync/stdio.rs +0 -0
  1391. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/table.rs +0 -0
  1392. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/tokio/dir.rs +0 -0
  1393. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/tokio/mod.rs +0 -0
  1394. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/tokio/net.rs +0 -0
  1395. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/tokio/sched/unix.rs +0 -0
  1396. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/tokio/sched/windows.rs +0 -0
  1397. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/tokio/sched.rs +0 -0
  1398. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/src/tokio/stdio.rs +0 -0
  1399. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/tests/all/async_.rs +0 -0
  1400. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/tests/all/main.rs +0 -0
  1401. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/tests/all/sync.rs +0 -0
  1402. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/witx/preview0/typenames.witx +0 -0
  1403. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/witx/preview0/wasi_unstable.witx +0 -0
  1404. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/witx/preview1/typenames.witx +0 -0
  1405. /data/ext/cargo-vendor/{wasi-common-21.0.1 → wasi-common-22.0.0}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1406. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/README.md +0 -0
  1407. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/benches/benchmark.rs +0 -0
  1408. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/examples/simple.rs +0 -0
  1409. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/component/aliases.rs +0 -0
  1410. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/component/canonicals.rs +0 -0
  1411. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/component/exports.rs +0 -0
  1412. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/component/start.rs +0 -0
  1413. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/component.rs +0 -0
  1414. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/dylink0.rs +0 -0
  1415. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/exports.rs +0 -0
  1416. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/functions.rs +0 -0
  1417. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/imports.rs +0 -0
  1418. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/memories.rs +0 -0
  1419. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/tables.rs +0 -0
  1420. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/tags.rs +0 -0
  1421. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core/types/matches.rs +0 -0
  1422. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/readers/core.rs +0 -0
  1423. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/src/resources.rs +0 -0
  1424. /data/ext/cargo-vendor/{wasmparser-0.207.0 → wasmparser-0.209.1}/tests/big-module.rs +0 -0
  1425. /data/ext/cargo-vendor/{wasm-encoder-0.207.0 → wasmprinter-0.209.1}/LICENSE +0 -0
  1426. /data/ext/cargo-vendor/{wasmprinter-0.207.0 → wasmprinter-0.209.1}/README.md +0 -0
  1427. /data/ext/cargo-vendor/{wasmprinter-0.207.0 → wasmprinter-0.209.1}/tests/all.rs +0 -0
  1428. /data/ext/cargo-vendor/{wasmprinter-0.207.0 → wasmtime-22.0.0}/LICENSE +0 -0
  1429. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/README.md +0 -0
  1430. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/proptest-regressions/runtime/vm/instance/allocator/pooling/memory_pool.txt +0 -0
  1431. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/compile/code_builder.rs +0 -0
  1432. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/engine.rs +0 -0
  1433. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/profiling_agent/vtune.rs +0 -0
  1434. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/profiling_agent.rs +0 -0
  1435. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/component/func/host.rs +0 -0
  1436. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/component/func/options.rs +0 -0
  1437. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/component/resources.rs +0 -0
  1438. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/component/storage.rs +0 -0
  1439. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/component/store.rs +0 -0
  1440. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/component/values.rs +0 -0
  1441. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/coredump.rs +0 -0
  1442. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/externals.rs +0 -0
  1443. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/gc/disabled/anyref.rs +0 -0
  1444. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/gc/disabled/externref.rs +0 -0
  1445. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/gc/disabled/i31.rs +0 -0
  1446. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/gc/disabled/rooting.rs +0 -0
  1447. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/gc/disabled.rs +0 -0
  1448. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/gc/enabled/rooting.rs +0 -0
  1449. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/gc/enabled.rs +0 -0
  1450. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/limits.rs +0 -0
  1451. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/memory.rs +0 -0
  1452. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/profiling.rs +0 -0
  1453. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/resources.rs +0 -0
  1454. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/signatures.rs +0 -0
  1455. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/stack.rs +0 -0
  1456. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/store/context.rs +0 -0
  1457. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/store/data.rs +0 -0
  1458. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/trampoline/global.rs +0 -0
  1459. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/trampoline/table.rs +0 -0
  1460. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/trampoline.rs +0 -0
  1461. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/trap.rs +0 -0
  1462. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/types/matching.rs +0 -0
  1463. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/uninhabited.rs +0 -0
  1464. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/unix.rs +0 -0
  1465. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/arch/aarch64.rs +0 -0
  1466. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/arch/mod.rs +0 -0
  1467. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/arch/riscv64.rs +0 -0
  1468. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/arch/s390x.S +0 -0
  1469. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/arch/s390x.rs +0 -0
  1470. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/arch/x86_64.rs +0 -0
  1471. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/async_yield.rs +0 -0
  1472. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/component/libcalls.rs +0 -0
  1473. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/const_expr.rs +0 -0
  1474. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/debug_builtins.rs +0 -0
  1475. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/disabled.rs +0 -0
  1476. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/enabled/drc.rs +0 -0
  1477. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/enabled/externref.rs +0 -0
  1478. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/enabled/free_list.rs +0 -0
  1479. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/enabled.rs +0 -0
  1480. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/gc_runtime.rs +0 -0
  1481. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/host_data.rs +0 -0
  1482. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc/i31.rs +0 -0
  1483. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/gc.rs +0 -0
  1484. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/helpers.c +0 -0
  1485. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/imports.rs +0 -0
  1486. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/libcalls.rs +0 -0
  1487. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/mmap.rs +0 -0
  1488. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/mmap_vec.rs +0 -0
  1489. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/module_id.rs +0 -0
  1490. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/mpk/disabled.rs +0 -0
  1491. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/mpk/enabled.rs +0 -0
  1492. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/mpk/mod.rs +0 -0
  1493. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/mpk/pkru.rs +0 -0
  1494. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/mpk/sys.rs +0 -0
  1495. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/send_sync_ptr.rs +0 -0
  1496. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/store_box.rs +0 -0
  1497. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/custom/mmap.rs +0 -0
  1498. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/custom/mod.rs +0 -0
  1499. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/custom/traphandlers.rs +0 -0
  1500. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/custom/unwind.rs +0 -0
  1501. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/miri/mmap.rs +0 -0
  1502. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/miri/mod.rs +0 -0
  1503. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/miri/traphandlers.rs +0 -0
  1504. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/miri/unwind.rs +0 -0
  1505. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/unix/machports.rs +0 -0
  1506. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/unix/macos_traphandlers.rs +0 -0
  1507. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/unix/mmap.rs +0 -0
  1508. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/unix/mod.rs +0 -0
  1509. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/unix/unwind.rs +0 -0
  1510. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/windows/mmap.rs +0 -0
  1511. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/windows/mod.rs +0 -0
  1512. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/windows/traphandlers.rs +0 -0
  1513. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/sys/windows/unwind.rs +0 -0
  1514. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/threads/mod.rs +0 -0
  1515. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/threads/parking_spot.rs +0 -0
  1516. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/threads/shared_memory.rs +0 -0
  1517. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/threads/shared_memory_disabled.rs +0 -0
  1518. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/traphandlers/backtrace.rs +0 -0
  1519. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/traphandlers/coredump_disabled.rs +0 -0
  1520. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/vm/traphandlers/coredump_enabled.rs +0 -0
  1521. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/runtime/windows.rs +0 -0
  1522. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/sync_nostd.rs +0 -0
  1523. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-22.0.0}/src/sync_std.rs +0 -0
  1524. /data/ext/cargo-vendor/{wasmtime-asm-macros-21.0.1 → wasmtime-asm-macros-22.0.0}/src/lib.rs +0 -0
  1525. /data/ext/cargo-vendor/{wasmtime-21.0.1 → wasmtime-cache-22.0.0}/LICENSE +0 -0
  1526. /data/ext/cargo-vendor/{wasmtime-cache-21.0.1 → wasmtime-cache-22.0.0}/build.rs +0 -0
  1527. /data/ext/cargo-vendor/{wasmtime-cache-21.0.1 → wasmtime-cache-22.0.0}/src/config/tests.rs +0 -0
  1528. /data/ext/cargo-vendor/{wasmtime-cache-21.0.1 → wasmtime-cache-22.0.0}/src/worker/tests/system_time_stub.rs +0 -0
  1529. /data/ext/cargo-vendor/{wasmtime-cache-21.0.1 → wasmtime-cache-22.0.0}/tests/cache_write_default_config.rs +0 -0
  1530. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/build.rs +0 -0
  1531. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/src/lib.rs +0 -0
  1532. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/char.wit +0 -0
  1533. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/conventions.wit +0 -0
  1534. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/dead-code.wit +0 -0
  1535. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/direct-import.wit +0 -0
  1536. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/empty.wit +0 -0
  1537. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/flags.wit +0 -0
  1538. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/floats.wit +0 -0
  1539. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/function-new.wit +0 -0
  1540. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/integers.wit +0 -0
  1541. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/lists.wit +0 -0
  1542. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/many-arguments.wit +0 -0
  1543. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/multi-return.wit +0 -0
  1544. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/multiversion/deps/v1/root.wit +0 -0
  1545. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/multiversion/deps/v2/root.wit +0 -0
  1546. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/multiversion/root.wit +0 -0
  1547. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/records.wit +0 -0
  1548. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/rename.wit +0 -0
  1549. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/resources-export.wit +0 -0
  1550. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/resources-import.wit +0 -0
  1551. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/share-types.wit +0 -0
  1552. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/simple-functions.wit +0 -0
  1553. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/simple-lists.wit +0 -0
  1554. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/simple-wasi.wit +0 -0
  1555. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/small-anonymous.wit +0 -0
  1556. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/smoke-default.wit +0 -0
  1557. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/smoke-export.wit +0 -0
  1558. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/smoke.wit +0 -0
  1559. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/strings.wit +0 -0
  1560. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/unversioned-foo.wit +0 -0
  1561. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/use-paths.wit +0 -0
  1562. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/variants.wit +0 -0
  1563. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/wat.wit +0 -0
  1564. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen/worlds-with-types.wit +0 -0
  1565. /data/ext/cargo-vendor/{wasmtime-component-macro-21.0.1 → wasmtime-component-macro-22.0.0}/tests/codegen_no_std.rs +0 -0
  1566. /data/ext/cargo-vendor/{wasmtime-component-util-21.0.1 → wasmtime-component-util-22.0.0}/src/lib.rs +0 -0
  1567. /data/ext/cargo-vendor/{wasmtime-cache-21.0.1 → wasmtime-cranelift-22.0.0}/LICENSE +0 -0
  1568. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/SECURITY.md +0 -0
  1569. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/builder.rs +0 -0
  1570. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/compiled_function.rs +0 -0
  1571. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/debug/gc.rs +0 -0
  1572. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/debug/transform/attr.rs +0 -0
  1573. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/debug/transform/expression.rs +0 -0
  1574. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/debug/transform/line_program.rs +0 -0
  1575. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/debug/transform/range_info_builder.rs +0 -0
  1576. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/debug/transform/refs.rs +0 -0
  1577. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/debug.rs +0 -0
  1578. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/gc/disabled.rs +0 -0
  1579. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/gc.rs +0 -0
  1580. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-cranelift-22.0.0}/src/isa_builder.rs +0 -0
  1581. /data/ext/cargo-vendor/{wasmtime-cranelift-21.0.1 → wasmtime-environ-22.0.0}/LICENSE +0 -0
  1582. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/examples/factc.rs +0 -0
  1583. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/address_map.rs +0 -0
  1584. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/builtin.rs +0 -0
  1585. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/compile/trap_encoding.rs +0 -0
  1586. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/component/compiler.rs +0 -0
  1587. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/component/dfg.rs +0 -0
  1588. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/component/translate/inline.rs +0 -0
  1589. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/component/vmcomponent_offsets.rs +0 -0
  1590. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/component.rs +0 -0
  1591. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/demangling.rs +0 -0
  1592. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/fact/core_types.rs +0 -0
  1593. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/fact/signature.rs +0 -0
  1594. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/fact/traps.rs +0 -0
  1595. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/gc.rs +0 -0
  1596. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/obj.rs +0 -0
  1597. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/scopevec.rs +0 -0
  1598. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/stack_map.rs +0 -0
  1599. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-environ-22.0.0}/src/trap_encoding.rs +0 -0
  1600. /data/ext/cargo-vendor/{wasmtime-environ-21.0.1 → wasmtime-fiber-22.0.0}/LICENSE +0 -0
  1601. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-fiber-22.0.0}/src/unix/aarch64.rs +0 -0
  1602. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-fiber-22.0.0}/src/unix/arm.rs +0 -0
  1603. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-fiber-22.0.0}/src/unix/riscv64.rs +0 -0
  1604. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-fiber-22.0.0}/src/unix/s390x.S +0 -0
  1605. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-fiber-22.0.0}/src/unix/x86.rs +0 -0
  1606. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-fiber-22.0.0}/src/unix/x86_64.rs +0 -0
  1607. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-fiber-22.0.0}/src/windows.c +0 -0
  1608. /data/ext/cargo-vendor/{wasmtime-jit-debug-21.0.1 → wasmtime-jit-debug-22.0.0}/README.md +0 -0
  1609. /data/ext/cargo-vendor/{wasmtime-jit-debug-21.0.1 → wasmtime-jit-debug-22.0.0}/src/lib.rs +0 -0
  1610. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-21.0.1 → wasmtime-jit-icache-coherence-22.0.0}/src/lib.rs +0 -0
  1611. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-21.0.1 → wasmtime-jit-icache-coherence-22.0.0}/src/miri.rs +0 -0
  1612. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-21.0.1 → wasmtime-jit-icache-coherence-22.0.0}/src/win.rs +0 -0
  1613. /data/ext/cargo-vendor/{wasmtime-fiber-21.0.1 → wasmtime-types-22.0.0}/LICENSE +0 -0
  1614. /data/ext/cargo-vendor/{wasmtime-types-21.0.1 → wasmtime-types-22.0.0}/src/error.rs +0 -0
  1615. /data/ext/cargo-vendor/{wasmtime-versioned-export-macros-21.0.1 → wasmtime-versioned-export-macros-22.0.0}/src/lib.rs +0 -0
  1616. /data/ext/cargo-vendor/{wasmtime-types-21.0.1 → wasmtime-wasi-22.0.0}/LICENSE +0 -0
  1617. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/README.md +0 -0
  1618. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/clocks/host.rs +0 -0
  1619. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/clocks.rs +0 -0
  1620. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/error.rs +0 -0
  1621. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/host/mod.rs +0 -0
  1622. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/random.rs +0 -0
  1623. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/runtime.rs +0 -0
  1624. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/stdio/worker_thread_stdin.rs +0 -0
  1625. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/stream.rs +0 -0
  1626. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/tcp.rs +0 -0
  1627. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/udp.rs +0 -0
  1628. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/src/write_stream.rs +0 -0
  1629. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/tests/all/api.rs +0 -0
  1630. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/tests/all/async_.rs +0 -0
  1631. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/tests/all/main.rs +0 -0
  1632. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/tests/all/preview1.rs +0 -0
  1633. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/tests/all/sync.rs +0 -0
  1634. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/tests/process_stdin.rs +0 -0
  1635. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/command-extended.wit +0 -0
  1636. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/cli/command.wit +0 -0
  1637. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/cli/environment.wit +0 -0
  1638. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/cli/exit.wit +0 -0
  1639. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/cli/imports.wit +0 -0
  1640. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/cli/run.wit +0 -0
  1641. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/cli/stdio.wit +0 -0
  1642. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/cli/terminal.wit +0 -0
  1643. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/clocks/monotonic-clock.wit +0 -0
  1644. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/clocks/wall-clock.wit +0 -0
  1645. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/clocks/world.wit +0 -0
  1646. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/filesystem/preopens.wit +0 -0
  1647. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/filesystem/types.wit +0 -0
  1648. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/filesystem/world.wit +0 -0
  1649. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/http/handler.wit +0 -0
  1650. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/http/proxy.wit +0 -0
  1651. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/http/types.wit +0 -0
  1652. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/io/error.wit +0 -0
  1653. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/io/poll.wit +0 -0
  1654. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/io/streams.wit +0 -0
  1655. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/io/world.wit +0 -0
  1656. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/random/insecure-seed.wit +0 -0
  1657. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/random/insecure.wit +0 -0
  1658. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/random/random.wit +0 -0
  1659. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/random/world.wit +0 -0
  1660. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/instance-network.wit +0 -0
  1661. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/ip-name-lookup.wit +0 -0
  1662. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/network.wit +0 -0
  1663. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/tcp-create-socket.wit +0 -0
  1664. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/tcp.wit +0 -0
  1665. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/udp-create-socket.wit +0 -0
  1666. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/udp.wit +0 -0
  1667. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/deps/sockets/world.wit +0 -0
  1668. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/wit/test.wit +0 -0
  1669. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/witx/preview0/typenames.witx +0 -0
  1670. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/witx/preview0/wasi_unstable.witx +0 -0
  1671. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/witx/preview1/typenames.witx +0 -0
  1672. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wasmtime-wasi-22.0.0}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1673. /data/ext/cargo-vendor/{wasmtime-winch-21.0.1 → wasmtime-winch-22.0.0}/LICENSE +0 -0
  1674. /data/ext/cargo-vendor/{wasmtime-winch-21.0.1 → wasmtime-winch-22.0.0}/src/builder.rs +0 -0
  1675. /data/ext/cargo-vendor/{wasmtime-winch-21.0.1 → wasmtime-winch-22.0.0}/src/lib.rs +0 -0
  1676. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-21.0.1 → wasmtime-wit-bindgen-22.0.0}/src/source.rs +0 -0
  1677. /data/ext/cargo-vendor/{wasmtime-wasi-21.0.1 → wiggle-22.0.0}/LICENSE +0 -0
  1678. /data/ext/cargo-vendor/{wiggle-21.0.1 → wiggle-22.0.0}/README.md +0 -0
  1679. /data/ext/cargo-vendor/{wiggle-21.0.1 → wiggle-22.0.0}/src/error.rs +0 -0
  1680. /data/ext/cargo-vendor/{wiggle-21.0.1 → wiggle-22.0.0}/src/region.rs +0 -0
  1681. /data/ext/cargo-vendor/{wiggle-21.0.1 → wiggle-generate-22.0.0}/LICENSE +0 -0
  1682. /data/ext/cargo-vendor/{wiggle-generate-21.0.1 → wiggle-generate-22.0.0}/README.md +0 -0
  1683. /data/ext/cargo-vendor/{wiggle-generate-21.0.1 → wiggle-generate-22.0.0}/src/codegen_settings.rs +0 -0
  1684. /data/ext/cargo-vendor/{wiggle-generate-21.0.1 → wiggle-generate-22.0.0}/src/config.rs +0 -0
  1685. /data/ext/cargo-vendor/{wiggle-generate-21.0.1 → wiggle-generate-22.0.0}/src/lib.rs +0 -0
  1686. /data/ext/cargo-vendor/{wiggle-generate-21.0.1 → wiggle-generate-22.0.0}/src/lifetimes.rs +0 -0
  1687. /data/ext/cargo-vendor/{wiggle-generate-21.0.1 → wiggle-generate-22.0.0}/src/types/error.rs +0 -0
  1688. /data/ext/cargo-vendor/{wiggle-generate-21.0.1 → wiggle-macro-22.0.0}/LICENSE +0 -0
  1689. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/LICENSE +0 -0
  1690. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/build.rs +0 -0
  1691. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/abi/local.rs +0 -0
  1692. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/codegen/bounds.rs +0 -0
  1693. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/codegen/builtin.rs +0 -0
  1694. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/codegen/call.rs +0 -0
  1695. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/aarch64/abi.rs +0 -0
  1696. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/aarch64/address.rs +0 -0
  1697. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/aarch64/mod.rs +0 -0
  1698. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/mod.rs +0 -0
  1699. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/reg.rs +0 -0
  1700. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/x64/abi.rs +0 -0
  1701. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/x64/address.rs +0 -0
  1702. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/x64/mod.rs +0 -0
  1703. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/isa/x64/regs.rs +0 -0
  1704. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/lib.rs +0 -0
  1705. /data/ext/cargo-vendor/{winch-codegen-0.19.1 → winch-codegen-0.20.0}/src/regset.rs +0 -0
  1706. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/README.md +0 -0
  1707. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/src/abi.rs +0 -0
  1708. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/src/ast/lex.rs +0 -0
  1709. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/src/ast/toposort.rs +0 -0
  1710. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/src/sizealign.rs +0 -0
  1711. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/comments.wit +0 -0
  1712. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/comments.wit.json +0 -0
  1713. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/complex-include/deps/bar/root.wit +0 -0
  1714. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/complex-include/deps/baz/root.wit +0 -0
  1715. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/complex-include/root.wit +0 -0
  1716. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/cross-package-resource/deps/foo/foo.wit +0 -0
  1717. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/cross-package-resource/foo.wit +0 -0
  1718. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/cross-package-resource.wit.json +0 -0
  1719. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/diamond1/deps/dep1/types.wit +0 -0
  1720. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/diamond1/deps/dep2/types.wit +0 -0
  1721. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/diamond1/join.wit +0 -0
  1722. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/disambiguate-diamond/shared1.wit +0 -0
  1723. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/disambiguate-diamond/shared2.wit +0 -0
  1724. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/disambiguate-diamond/world.wit +0 -0
  1725. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/empty.wit +0 -0
  1726. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/empty.wit.json +0 -0
  1727. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/deps/another-pkg/other-doc.wit +0 -0
  1728. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/deps/corp/saas.wit +0 -0
  1729. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/deps/different-pkg/the-doc.wit +0 -0
  1730. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/deps/foreign-pkg/the-doc.wit +0 -0
  1731. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/deps/some-pkg/some-doc.wit +0 -0
  1732. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/deps/wasi/clocks.wit +0 -0
  1733. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/deps/wasi/filesystem.wit +0 -0
  1734. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps/root.wit +0 -0
  1735. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/another-pkg/other-doc.wit +0 -0
  1736. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/corp/saas.wit +0 -0
  1737. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/different-pkg/the-doc.wit +0 -0
  1738. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/foreign-pkg/the-doc.wit +0 -0
  1739. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/some-pkg/some-doc.wit +0 -0
  1740. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/wasi/clocks.wit +0 -0
  1741. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/wasi/filesystem.wit +0 -0
  1742. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/deps/wasi/wasi.wit +0 -0
  1743. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/foreign-deps-union/root.wit +0 -0
  1744. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/functions.wit +0 -0
  1745. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/functions.wit.json +0 -0
  1746. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/ignore-files-deps/deps/bar/types.wit +0 -0
  1747. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/ignore-files-deps/deps/ignore-me.txt +0 -0
  1748. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/ignore-files-deps/world.wit +0 -0
  1749. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/import-export-overlap1.wit +0 -0
  1750. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/import-export-overlap1.wit.json +0 -0
  1751. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/import-export-overlap2.wit +0 -0
  1752. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/include-reps.wit +0 -0
  1753. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/kebab-name-include-with.wit +0 -0
  1754. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/kebab-name-include-with.wit.json +0 -0
  1755. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/kinds-of-deps/a.wit +0 -0
  1756. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/kinds-of-deps/deps/b/root.wit +0 -0
  1757. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/kinds-of-deps/deps/c.wit +0 -0
  1758. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/kinds-of-deps/deps/d.wat +0 -0
  1759. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/kinds-of-deps/deps/e.wasm +0 -0
  1760. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/many-names/a.wit +0 -0
  1761. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/many-names/b.wit +0 -0
  1762. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/multi-file/bar.wit +0 -0
  1763. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/multi-file/cycle-a.wit +0 -0
  1764. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/multi-file/cycle-b.wit +0 -0
  1765. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/multi-file/foo.wit +0 -0
  1766. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/name-both-resource-and-type/deps/dep/foo.wit +0 -0
  1767. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/name-both-resource-and-type/foo.wit +0 -0
  1768. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/name-both-resource-and-type.wit.json +0 -0
  1769. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/package-syntax1.wit +0 -0
  1770. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/package-syntax1.wit.json +0 -0
  1771. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/package-syntax3.wit +0 -0
  1772. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/package-syntax3.wit.json +0 -0
  1773. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/package-syntax4.wit +0 -0
  1774. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/package-syntax4.wit.json +0 -0
  1775. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/alias-no-type.wit +0 -0
  1776. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/alias-no-type.wit.result +0 -0
  1777. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/async.wit.result +0 -0
  1778. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/async1.wit.result +0 -0
  1779. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-function.wit +0 -0
  1780. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-function.wit.result +0 -0
  1781. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-function2.wit +0 -0
  1782. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-function2.wit.result +0 -0
  1783. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-include1.wit +0 -0
  1784. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-include1.wit.result +0 -0
  1785. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-include2.wit +0 -0
  1786. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-include2.wit.result +0 -0
  1787. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-include3.wit +0 -0
  1788. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-include3.wit.result +0 -0
  1789. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-list.wit +0 -0
  1790. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-list.wit.result +0 -0
  1791. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg1/root.wit +0 -0
  1792. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg1.wit.result +0 -0
  1793. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg2/deps/bar/empty.wit +0 -0
  1794. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg2/root.wit +0 -0
  1795. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg2.wit.result +0 -0
  1796. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg3/deps/bar/baz.wit +0 -0
  1797. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg3/root.wit +0 -0
  1798. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg3.wit.result +0 -0
  1799. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg4/deps/bar/baz.wit +0 -0
  1800. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg4/root.wit +0 -0
  1801. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg4.wit.result +0 -0
  1802. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg5/deps/bar/baz.wit +0 -0
  1803. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg5/root.wit +0 -0
  1804. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg5.wit.result +0 -0
  1805. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg6/deps/bar/baz.wit +0 -0
  1806. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg6/root.wit +0 -0
  1807. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-pkg6.wit.result +0 -0
  1808. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource1.wit +0 -0
  1809. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource1.wit.result +0 -0
  1810. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource10.wit +0 -0
  1811. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource10.wit.result +0 -0
  1812. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource11.wit +0 -0
  1813. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource11.wit.result +0 -0
  1814. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource12.wit +0 -0
  1815. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource12.wit.result +0 -0
  1816. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource13.wit +0 -0
  1817. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource13.wit.result +0 -0
  1818. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource14.wit +0 -0
  1819. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource14.wit.result +0 -0
  1820. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource15/deps/foo/foo.wit +0 -0
  1821. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource15/foo.wit +0 -0
  1822. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource15.wit.result +0 -0
  1823. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource2.wit +0 -0
  1824. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource2.wit.result +0 -0
  1825. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource3.wit +0 -0
  1826. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource3.wit.result +0 -0
  1827. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource4.wit +0 -0
  1828. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource4.wit.result +0 -0
  1829. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource5.wit +0 -0
  1830. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource5.wit.result +0 -0
  1831. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource6.wit +0 -0
  1832. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource6.wit.result +0 -0
  1833. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource7.wit +0 -0
  1834. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource7.wit.result +0 -0
  1835. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource8.wit +0 -0
  1836. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource8.wit.result +0 -0
  1837. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource9.wit +0 -0
  1838. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-resource9.wit.result +0 -0
  1839. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-world-type1.wit +0 -0
  1840. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/bad-world-type1.wit.result +0 -0
  1841. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/conflicting-package/a.wit +0 -0
  1842. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/conflicting-package/b.wit +0 -0
  1843. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle.wit +0 -0
  1844. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle.wit.result +0 -0
  1845. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle2.wit +0 -0
  1846. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle2.wit.result +0 -0
  1847. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle3.wit +0 -0
  1848. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle3.wit.result +0 -0
  1849. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle4.wit +0 -0
  1850. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle4.wit.result +0 -0
  1851. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle5.wit +0 -0
  1852. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/cycle5.wit.result +0 -0
  1853. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/dangling-type.wit +0 -0
  1854. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/dangling-type.wit.result +0 -0
  1855. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-function-params.wit +0 -0
  1856. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-function-params.wit.result +0 -0
  1857. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-functions.wit +0 -0
  1858. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-functions.wit.result +0 -0
  1859. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-interface.wit +0 -0
  1860. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-interface.wit.result +0 -0
  1861. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-interface2/foo.wit +0 -0
  1862. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-interface2/foo2.wit +0 -0
  1863. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-interface2.wit.result +0 -0
  1864. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-type.wit +0 -0
  1865. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/duplicate-type.wit.result +0 -0
  1866. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/empty-enum.wit +0 -0
  1867. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/empty-enum.wit.result +0 -0
  1868. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/empty-variant1.wit +0 -0
  1869. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/empty-variant1.wit.result +0 -0
  1870. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/export-twice.wit +0 -0
  1871. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/export-twice.wit.result +0 -0
  1872. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export1.wit +0 -0
  1873. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export1.wit.result +0 -0
  1874. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export2.wit +0 -0
  1875. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export2.wit.result +0 -0
  1876. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export3.wit +0 -0
  1877. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export3.wit.result +0 -0
  1878. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export4.wit +0 -0
  1879. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export4.wit.result +0 -0
  1880. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export5.wit +0 -0
  1881. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-and-export5.wit.result +0 -0
  1882. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-twice.wit +0 -0
  1883. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/import-twice.wit.result +0 -0
  1884. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-cycle.wit +0 -0
  1885. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-cycle.wit.result +0 -0
  1886. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-foreign/deps/bar/empty.wit +0 -0
  1887. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-foreign/root.wit +0 -0
  1888. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-foreign.wit.result +0 -0
  1889. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-with-id.wit +0 -0
  1890. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-with-id.wit.result +0 -0
  1891. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-with-on-id.wit +0 -0
  1892. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/include-with-on-id.wit.result +0 -0
  1893. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/invalid-toplevel.wit +0 -0
  1894. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/invalid-toplevel.wit.result +0 -0
  1895. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/invalid-type-reference.wit +0 -0
  1896. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/invalid-type-reference.wit.result +0 -0
  1897. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/invalid-type-reference2.wit +0 -0
  1898. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/invalid-type-reference2.wit.result +0 -0
  1899. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/kebab-name-include-not-found.wit +0 -0
  1900. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/kebab-name-include-not-found.wit.result +0 -0
  1901. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/kebab-name-include.wit +0 -0
  1902. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/kebab-name-include.wit.result +0 -0
  1903. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/keyword.wit +0 -0
  1904. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/keyword.wit.result +0 -0
  1905. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/missing-package.wit +0 -0
  1906. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/missing-package.wit.result +0 -0
  1907. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/multiple-package-docs/a.wit +0 -0
  1908. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/multiple-package-docs/b.wit +0 -0
  1909. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/no-access-to-sibling-use/bar.wit +0 -0
  1910. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/no-access-to-sibling-use/foo.wit +0 -0
  1911. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/no-access-to-sibling-use.wit.result +0 -0
  1912. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/non-existance-world-include/deps/bar/baz.wit +0 -0
  1913. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/non-existance-world-include/root.wit +0 -0
  1914. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/non-existance-world-include.wit.result +0 -0
  1915. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/pkg-cycle/deps/a1/root.wit +0 -0
  1916. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/pkg-cycle/root.wit +0 -0
  1917. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/pkg-cycle.wit.result +0 -0
  1918. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/pkg-cycle2/deps/a1/root.wit +0 -0
  1919. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/pkg-cycle2/deps/a2/root.wit +0 -0
  1920. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/pkg-cycle2/root.wit +0 -0
  1921. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/pkg-cycle2.wit.result +0 -0
  1922. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/resources-multiple-returns-borrow.wit +0 -0
  1923. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/resources-return-borrow.wit +0 -0
  1924. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow1.wit +0 -0
  1925. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow2.wit +0 -0
  1926. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow3.wit +0 -0
  1927. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow3.wit.result +0 -0
  1928. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow4.wit +0 -0
  1929. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow4.wit.result +0 -0
  1930. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow5.wit +0 -0
  1931. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow5.wit.result +0 -0
  1932. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow6.wit +0 -0
  1933. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow7.wit +0 -0
  1934. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow8/deps/baz.wit +0 -0
  1935. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/return-borrow8/foo.wit +0 -0
  1936. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/type-and-resource-same-name/deps/dep/foo.wit +0 -0
  1937. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/type-and-resource-same-name/foo.wit +0 -0
  1938. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/type-and-resource-same-name.wit.result +0 -0
  1939. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/undefined-typed.wit +0 -0
  1940. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/undefined-typed.wit.result +0 -0
  1941. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unknown-interface.wit +0 -0
  1942. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unknown-interface.wit.result +0 -0
  1943. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface1.wit +0 -0
  1944. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface1.wit.result +0 -0
  1945. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface2.wit +0 -0
  1946. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface2.wit.result +0 -0
  1947. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface3.wit +0 -0
  1948. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface3.wit.result +0 -0
  1949. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface4.wit +0 -0
  1950. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-interface4.wit.result +0 -0
  1951. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use1.wit +0 -0
  1952. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use1.wit.result +0 -0
  1953. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use10/bar.wit +0 -0
  1954. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use10/foo.wit +0 -0
  1955. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use10.wit.result +0 -0
  1956. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use2.wit +0 -0
  1957. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use2.wit.result +0 -0
  1958. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use3.wit +0 -0
  1959. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use3.wit.result +0 -0
  1960. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use7.wit +0 -0
  1961. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use7.wit.result +0 -0
  1962. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use8.wit +0 -0
  1963. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use8.wit.result +0 -0
  1964. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use9.wit +0 -0
  1965. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unresolved-use9.wit.result +0 -0
  1966. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/unterminated-string.wit.result +0 -0
  1967. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-and-include-world/deps/bar/baz.wit +0 -0
  1968. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-and-include-world/root.wit +0 -0
  1969. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-and-include-world.wit.result +0 -0
  1970. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-conflict.wit +0 -0
  1971. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-conflict.wit.result +0 -0
  1972. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-conflict2.wit +0 -0
  1973. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-conflict2.wit.result +0 -0
  1974. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-conflict3.wit +0 -0
  1975. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-conflict3.wit.result +0 -0
  1976. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-cycle1.wit +0 -0
  1977. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-cycle1.wit.result +0 -0
  1978. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-cycle4.wit +0 -0
  1979. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-cycle4.wit.result +0 -0
  1980. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-shadow1.wit +0 -0
  1981. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-shadow1.wit.result +0 -0
  1982. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-world/deps/bar/baz.wit +0 -0
  1983. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-world/root.wit +0 -0
  1984. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/use-world.wit.result +0 -0
  1985. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-interface-clash.wit +0 -0
  1986. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-interface-clash.wit.result +0 -0
  1987. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-same-fields2.wit +0 -0
  1988. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-same-fields2.wit.result +0 -0
  1989. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-same-fields3.wit +0 -0
  1990. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-same-fields3.wit.result +0 -0
  1991. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-top-level-func.wit +0 -0
  1992. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-top-level-func.wit.result +0 -0
  1993. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-top-level-func2.wit +0 -0
  1994. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/parse-fail/world-top-level-func2.wit.result +0 -0
  1995. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/random.wit +0 -0
  1996. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/random.wit.json +0 -0
  1997. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-empty.wit +0 -0
  1998. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-empty.wit.json +0 -0
  1999. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-multiple-returns-own.wit +0 -0
  2000. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-multiple-returns-own.wit.json +0 -0
  2001. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-multiple.wit +0 -0
  2002. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-multiple.wit.json +0 -0
  2003. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-return-own.wit +0 -0
  2004. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources-return-own.wit.json +0 -0
  2005. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources.wit +0 -0
  2006. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources.wit.json +0 -0
  2007. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources1.wit +0 -0
  2008. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/resources1.wit.json +0 -0
  2009. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/same-name-import-export.wit +0 -0
  2010. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/same-name-import-export.wit.json +0 -0
  2011. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/shared-types.wit +0 -0
  2012. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/simple-wasm-text.wat +0 -0
  2013. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/simple-wasm-text.wit.json +0 -0
  2014. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/stress-export-elaborate.wit +0 -0
  2015. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/type-then-eof.wit +0 -0
  2016. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/type-then-eof.wit.json +0 -0
  2017. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/types.wit +0 -0
  2018. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/types.wit.json +0 -0
  2019. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/union-fuzz-1.wit +0 -0
  2020. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/union-fuzz-1.wit.json +0 -0
  2021. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/union-fuzz-2.wit +0 -0
  2022. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/union-fuzz-2.wit.json +0 -0
  2023. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/use-chain.wit +0 -0
  2024. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/use-chain.wit.json +0 -0
  2025. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/use.wit +0 -0
  2026. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/use.wit.json +0 -0
  2027. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/versions/deps/a1/foo.wit +0 -0
  2028. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/versions/deps/a2/foo.wit +0 -0
  2029. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/versions/foo.wit +0 -0
  2030. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/versions.wit.json +0 -0
  2031. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/wasi.wit +0 -0
  2032. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/wasi.wit.json +0 -0
  2033. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-diamond.wit +0 -0
  2034. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-iface-no-collide.wit +0 -0
  2035. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-implicit-import1.wit +0 -0
  2036. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-implicit-import2.wit +0 -0
  2037. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-implicit-import3.wit +0 -0
  2038. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-same-fields4.wit +0 -0
  2039. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-top-level-funcs.wit +0 -0
  2040. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-top-level-funcs.wit.json +0 -0
  2041. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/world-top-level-resources.wit +0 -0
  2042. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/worlds-union-dedup.wit +0 -0
  2043. /data/ext/cargo-vendor/{wit-parser-0.207.0 → wit-parser-0.209.1}/tests/ui/worlds-with-types.wit +0 -0
@@ -1,2904 +0,0 @@
1
- use crate::prelude::*;
2
- use alloc::sync::Arc;
3
- use anyhow::{bail, ensure, Result};
4
- use core::fmt;
5
- use core::str::FromStr;
6
- use hashbrown::{HashMap, HashSet};
7
- use serde_derive::{Deserialize, Serialize};
8
- #[cfg(any(feature = "cache", feature = "cranelift", feature = "winch"))]
9
- use std::path::Path;
10
- use target_lexicon::Architecture;
11
- use wasmparser::WasmFeatures;
12
- #[cfg(feature = "cache")]
13
- use wasmtime_cache::CacheConfig;
14
- use wasmtime_environ::Tunables;
15
-
16
- #[cfg(feature = "runtime")]
17
- use crate::memory::MemoryCreator;
18
- #[cfg(feature = "runtime")]
19
- use crate::profiling_agent::{self, ProfilingAgent};
20
- #[cfg(feature = "runtime")]
21
- use crate::runtime::vm::{
22
- GcRuntime, InstanceAllocator, OnDemandInstanceAllocator, RuntimeMemoryCreator,
23
- };
24
- #[cfg(feature = "runtime")]
25
- use crate::trampoline::MemoryCreatorProxy;
26
-
27
- #[cfg(feature = "async")]
28
- use crate::stack::{StackCreator, StackCreatorProxy};
29
- #[cfg(feature = "async")]
30
- use wasmtime_fiber::RuntimeFiberStackCreator;
31
-
32
- #[cfg(feature = "pooling-allocator")]
33
- use crate::runtime::vm::mpk;
34
- #[cfg(feature = "pooling-allocator")]
35
- pub use crate::runtime::vm::MpkEnabled;
36
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
37
- pub use wasmtime_environ::CacheStore;
38
-
39
- /// Represents the module instance allocation strategy to use.
40
- #[derive(Clone)]
41
- pub enum InstanceAllocationStrategy {
42
- /// The on-demand instance allocation strategy.
43
- ///
44
- /// Resources related to a module instance are allocated at instantiation time and
45
- /// immediately deallocated when the `Store` referencing the instance is dropped.
46
- ///
47
- /// This is the default allocation strategy for Wasmtime.
48
- OnDemand,
49
- /// The pooling instance allocation strategy.
50
- ///
51
- /// A pool of resources is created in advance and module instantiation reuses resources
52
- /// from the pool. Resources are returned to the pool when the `Store` referencing the instance
53
- /// is dropped.
54
- #[cfg(feature = "pooling-allocator")]
55
- Pooling(PoolingAllocationConfig),
56
- }
57
-
58
- impl InstanceAllocationStrategy {
59
- /// The default pooling instance allocation strategy.
60
- #[cfg(feature = "pooling-allocator")]
61
- pub fn pooling() -> Self {
62
- Self::Pooling(Default::default())
63
- }
64
- }
65
-
66
- impl Default for InstanceAllocationStrategy {
67
- fn default() -> Self {
68
- Self::OnDemand
69
- }
70
- }
71
-
72
- #[derive(Clone)]
73
- /// Configure the strategy used for versioning in serializing and deserializing [`crate::Module`].
74
- pub enum ModuleVersionStrategy {
75
- /// Use the wasmtime crate's Cargo package version.
76
- WasmtimeVersion,
77
- /// Use a custom version string. Must be at most 255 bytes.
78
- Custom(String),
79
- /// Emit no version string in serialization, and accept all version strings in deserialization.
80
- None,
81
- }
82
-
83
- impl Default for ModuleVersionStrategy {
84
- fn default() -> Self {
85
- ModuleVersionStrategy::WasmtimeVersion
86
- }
87
- }
88
-
89
- impl core::hash::Hash for ModuleVersionStrategy {
90
- fn hash<H: core::hash::Hasher>(&self, hasher: &mut H) {
91
- match self {
92
- Self::WasmtimeVersion => env!("CARGO_PKG_VERSION").hash(hasher),
93
- Self::Custom(s) => s.hash(hasher),
94
- Self::None => {}
95
- };
96
- }
97
- }
98
-
99
- /// Global configuration options used to create an [`Engine`](crate::Engine)
100
- /// and customize its behavior.
101
- ///
102
- /// This structure exposed a builder-like interface and is primarily consumed by
103
- /// [`Engine::new()`](crate::Engine::new).
104
- ///
105
- /// The validation of `Config` is deferred until the engine is being built, thus
106
- /// a problematic config may cause `Engine::new` to fail.
107
- #[derive(Clone)]
108
- pub struct Config {
109
- #[cfg(any(feature = "cranelift", feature = "winch"))]
110
- compiler_config: CompilerConfig,
111
- profiling_strategy: ProfilingStrategy,
112
- tunables: ConfigTunables,
113
-
114
- #[cfg(feature = "cache")]
115
- pub(crate) cache_config: CacheConfig,
116
- #[cfg(feature = "runtime")]
117
- pub(crate) mem_creator: Option<Arc<dyn RuntimeMemoryCreator>>,
118
- pub(crate) allocation_strategy: InstanceAllocationStrategy,
119
- pub(crate) max_wasm_stack: usize,
120
- pub(crate) features: WasmFeatures,
121
- pub(crate) wasm_backtrace: bool,
122
- pub(crate) wasm_backtrace_details_env_used: bool,
123
- pub(crate) native_unwind_info: Option<bool>,
124
- #[cfg(feature = "async")]
125
- pub(crate) async_stack_size: usize,
126
- #[cfg(feature = "async")]
127
- pub(crate) stack_creator: Option<Arc<dyn RuntimeFiberStackCreator>>,
128
- pub(crate) async_support: bool,
129
- pub(crate) module_version: ModuleVersionStrategy,
130
- pub(crate) parallel_compilation: bool,
131
- pub(crate) memory_init_cow: bool,
132
- pub(crate) memory_guaranteed_dense_image_size: u64,
133
- pub(crate) force_memory_init_memfd: bool,
134
- pub(crate) wmemcheck: bool,
135
- pub(crate) coredump_on_trap: bool,
136
- pub(crate) macos_use_mach_ports: bool,
137
- pub(crate) detect_host_feature: Option<fn(&str) -> Option<bool>>,
138
- }
139
-
140
- #[derive(Default, Clone)]
141
- struct ConfigTunables {
142
- static_memory_bound: Option<u64>,
143
- static_memory_offset_guard_size: Option<u64>,
144
- dynamic_memory_offset_guard_size: Option<u64>,
145
- dynamic_memory_growth_reserve: Option<u64>,
146
- generate_native_debuginfo: Option<bool>,
147
- parse_wasm_debuginfo: Option<bool>,
148
- consume_fuel: Option<bool>,
149
- epoch_interruption: Option<bool>,
150
- static_memory_bound_is_maximum: Option<bool>,
151
- guard_before_linear_memory: Option<bool>,
152
- generate_address_map: Option<bool>,
153
- debug_adapter_modules: Option<bool>,
154
- relaxed_simd_deterministic: Option<bool>,
155
- tail_callable: Option<bool>,
156
- cache_call_indirects: Option<bool>,
157
- max_call_indirect_cache_slots: Option<usize>,
158
- }
159
-
160
- /// User-provided configuration for the compiler.
161
- #[cfg(any(feature = "cranelift", feature = "winch"))]
162
- #[derive(Debug, Clone)]
163
- struct CompilerConfig {
164
- strategy: Strategy,
165
- target: Option<target_lexicon::Triple>,
166
- settings: HashMap<String, String>,
167
- flags: HashSet<String>,
168
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
169
- cache_store: Option<Arc<dyn CacheStore>>,
170
- clif_dir: Option<std::path::PathBuf>,
171
- wmemcheck: bool,
172
- }
173
-
174
- #[cfg(any(feature = "cranelift", feature = "winch"))]
175
- impl CompilerConfig {
176
- fn new(strategy: Strategy) -> Self {
177
- Self {
178
- strategy,
179
- target: None,
180
- settings: HashMap::new(),
181
- flags: HashSet::new(),
182
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
183
- cache_store: None,
184
- clif_dir: None,
185
- wmemcheck: false,
186
- }
187
- }
188
-
189
- /// Ensures that the key is not set or equals to the given value.
190
- /// If the key is not set, it will be set to the given value.
191
- ///
192
- /// # Returns
193
- ///
194
- /// Returns true if successfully set or already had the given setting
195
- /// value, or false if the setting was explicitly set to something
196
- /// else previously.
197
- fn ensure_setting_unset_or_given(&mut self, k: &str, v: &str) -> bool {
198
- if let Some(value) = self.settings.get(k) {
199
- if value != v {
200
- return false;
201
- }
202
- } else {
203
- self.settings.insert(k.to_string(), v.to_string());
204
- }
205
- true
206
- }
207
- }
208
-
209
- #[cfg(any(feature = "cranelift", feature = "winch"))]
210
- impl Default for CompilerConfig {
211
- fn default() -> Self {
212
- Self::new(Strategy::Auto)
213
- }
214
- }
215
-
216
- impl Config {
217
- /// Creates a new configuration object with the default configuration
218
- /// specified.
219
- pub fn new() -> Self {
220
- let mut ret = Self {
221
- tunables: ConfigTunables::default(),
222
- #[cfg(any(feature = "cranelift", feature = "winch"))]
223
- compiler_config: CompilerConfig::default(),
224
- #[cfg(feature = "cache")]
225
- cache_config: CacheConfig::new_cache_disabled(),
226
- profiling_strategy: ProfilingStrategy::None,
227
- #[cfg(feature = "runtime")]
228
- mem_creator: None,
229
- allocation_strategy: InstanceAllocationStrategy::OnDemand,
230
- // 512k of stack -- note that this is chosen currently to not be too
231
- // big, not be too small, and be a good default for most platforms.
232
- // One platform of particular note is Windows where the stack size
233
- // of the main thread seems to, by default, be smaller than that of
234
- // Linux and macOS. This 512k value at least lets our current test
235
- // suite pass on the main thread of Windows (using `--test-threads
236
- // 1` forces this), or at least it passed when this change was
237
- // committed.
238
- max_wasm_stack: 512 * 1024,
239
- wasm_backtrace: true,
240
- wasm_backtrace_details_env_used: false,
241
- native_unwind_info: None,
242
- features: WasmFeatures::default(),
243
- #[cfg(feature = "async")]
244
- async_stack_size: 2 << 20,
245
- #[cfg(feature = "async")]
246
- stack_creator: None,
247
- async_support: false,
248
- module_version: ModuleVersionStrategy::default(),
249
- parallel_compilation: !cfg!(miri),
250
- memory_init_cow: true,
251
- memory_guaranteed_dense_image_size: 16 << 20,
252
- force_memory_init_memfd: false,
253
- wmemcheck: false,
254
- coredump_on_trap: false,
255
- macos_use_mach_ports: !cfg!(miri),
256
- #[cfg(feature = "std")]
257
- detect_host_feature: Some(detect_host_feature),
258
- #[cfg(not(feature = "std"))]
259
- detect_host_feature: None,
260
- };
261
- #[cfg(any(feature = "cranelift", feature = "winch"))]
262
- {
263
- ret.cranelift_debug_verifier(false);
264
- ret.cranelift_opt_level(OptLevel::Speed);
265
- }
266
-
267
- // Not yet implemented in Wasmtime
268
- ret.features.set(WasmFeatures::EXTENDED_CONST, false);
269
-
270
- // Conditionally enabled features depending on compile-time crate
271
- // features. Note that if these features are disabled then `Config` has
272
- // no way of re-enabling them.
273
- ret.features
274
- .set(WasmFeatures::REFERENCE_TYPES, cfg!(feature = "gc"));
275
- ret.features
276
- .set(WasmFeatures::THREADS, cfg!(feature = "threads"));
277
- ret.features.set(
278
- WasmFeatures::COMPONENT_MODEL,
279
- cfg!(feature = "component-model"),
280
- );
281
-
282
- // If GC is disabled at compile time also disable it in features
283
- // forcibly irrespective of `wasmparser` defaults. Note that these also
284
- // aren't yet fully implemented in Wasmtime.
285
- if !cfg!(feature = "gc") {
286
- ret.features.set(WasmFeatures::FUNCTION_REFERENCES, false);
287
- ret.features.set(WasmFeatures::GC, false);
288
- }
289
-
290
- ret.wasm_multi_value(true);
291
- ret.wasm_bulk_memory(true);
292
- ret.wasm_simd(true);
293
- ret.wasm_backtrace_details(WasmBacktraceDetails::Environment);
294
-
295
- // This is on-by-default in `wasmparser` since it's a stage 4+ proposal
296
- // but it's not implemented in Wasmtime yet so disable it.
297
- ret.features.set(WasmFeatures::TAIL_CALL, false);
298
-
299
- ret
300
- }
301
-
302
- /// Sets the target triple for the [`Config`].
303
- ///
304
- /// By default, the host target triple is used for the [`Config`].
305
- ///
306
- /// This method can be used to change the target triple.
307
- ///
308
- /// Cranelift flags will not be inferred for the given target and any
309
- /// existing target-specific Cranelift flags will be cleared.
310
- ///
311
- /// # Errors
312
- ///
313
- /// This method will error if the given target triple is not supported.
314
- #[cfg(any(feature = "cranelift", feature = "winch"))]
315
- pub fn target(&mut self, target: &str) -> Result<&mut Self> {
316
- self.compiler_config.target =
317
- Some(target_lexicon::Triple::from_str(target).map_err(|e| anyhow::anyhow!(e))?);
318
-
319
- Ok(self)
320
- }
321
-
322
- /// Enables the incremental compilation cache in Cranelift, using the provided `CacheStore`
323
- /// backend for storage.
324
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
325
- pub fn enable_incremental_compilation(
326
- &mut self,
327
- cache_store: Arc<dyn CacheStore>,
328
- ) -> Result<&mut Self> {
329
- self.compiler_config.cache_store = Some(cache_store);
330
- Ok(self)
331
- }
332
-
333
- /// Whether or not to enable support for asynchronous functions in Wasmtime.
334
- ///
335
- /// When enabled, the config can optionally define host functions with `async`.
336
- /// Instances created and functions called with this `Config` *must* be called
337
- /// through their asynchronous APIs, however. For example using
338
- /// [`Func::call`](crate::Func::call) will panic when used with this config.
339
- ///
340
- /// # Asynchronous Wasm
341
- ///
342
- /// WebAssembly does not currently have a way to specify at the bytecode
343
- /// level what is and isn't async. Host-defined functions, however, may be
344
- /// defined as `async`. WebAssembly imports always appear synchronous, which
345
- /// gives rise to a bit of an impedance mismatch here. To solve this
346
- /// Wasmtime supports "asynchronous configs" which enables calling these
347
- /// asynchronous functions in a way that looks synchronous to the executing
348
- /// WebAssembly code.
349
- ///
350
- /// An asynchronous config must always invoke wasm code asynchronously,
351
- /// meaning we'll always represent its computation as a
352
- /// [`Future`](std::future::Future). The `poll` method of the futures
353
- /// returned by Wasmtime will perform the actual work of calling the
354
- /// WebAssembly. Wasmtime won't manage its own thread pools or similar,
355
- /// that's left up to the embedder.
356
- ///
357
- /// To implement futures in a way that WebAssembly sees asynchronous host
358
- /// functions as synchronous, all async Wasmtime futures will execute on a
359
- /// separately allocated native stack from the thread otherwise executing
360
- /// Wasmtime. This separate native stack can then be switched to and from.
361
- /// Using this whenever an `async` host function returns a future that
362
- /// resolves to `Pending` we switch away from the temporary stack back to
363
- /// the main stack and propagate the `Pending` status.
364
- ///
365
- /// In general it's encouraged that the integration with `async` and
366
- /// wasmtime is designed early on in your embedding of Wasmtime to ensure
367
- /// that it's planned that WebAssembly executes in the right context of your
368
- /// application.
369
- ///
370
- /// # Execution in `poll`
371
- ///
372
- /// The [`Future::poll`](std::future::Future::poll) method is the main
373
- /// driving force behind Rust's futures. That method's own documentation
374
- /// states "an implementation of `poll` should strive to return quickly, and
375
- /// should not block". This, however, can be at odds with executing
376
- /// WebAssembly code as part of the `poll` method itself. If your
377
- /// WebAssembly is untrusted then this could allow the `poll` method to take
378
- /// arbitrarily long in the worst case, likely blocking all other
379
- /// asynchronous tasks.
380
- ///
381
- /// To remedy this situation you have a a few possible ways to solve this:
382
- ///
383
- /// * The most efficient solution is to enable
384
- /// [`Config::epoch_interruption`] in conjunction with
385
- /// [`crate::Store::epoch_deadline_async_yield_and_update`]. Coupled with
386
- /// periodic calls to [`crate::Engine::increment_epoch`] this will cause
387
- /// executing WebAssembly to periodically yield back according to the
388
- /// epoch configuration settings. This enables `Future::poll` to take at
389
- /// most a certain amount of time according to epoch configuration
390
- /// settings and when increments happen. The benefit of this approach is
391
- /// that the instrumentation in compiled code is quite lightweight, but a
392
- /// downside can be that the scheduling is somewhat nondeterministic since
393
- /// increments are usually timer-based which are not always deterministic.
394
- ///
395
- /// Note that to prevent infinite execution of wasm it's recommended to
396
- /// place a timeout on the entire future representing executing wasm code
397
- /// and the periodic yields with epochs should ensure that when the
398
- /// timeout is reached it's appropriately recognized.
399
- ///
400
- /// * Alternatively you can enable the
401
- /// [`Config::consume_fuel`](crate::Config::consume_fuel) method as well
402
- /// as [`crate::Store::fuel_async_yield_interval`] When doing so this will
403
- /// configure Wasmtime futures to yield periodically while they're
404
- /// executing WebAssembly code. After consuming the specified amount of
405
- /// fuel wasm futures will return `Poll::Pending` from their `poll`
406
- /// method, and will get automatically re-polled later. This enables the
407
- /// `Future::poll` method to take roughly a fixed amount of time since
408
- /// fuel is guaranteed to get consumed while wasm is executing. Unlike
409
- /// epoch-based preemption this is deterministic since wasm always
410
- /// consumes a fixed amount of fuel per-operation. The downside of this
411
- /// approach, however, is that the compiled code instrumentation is
412
- /// significantly more expensive than epoch checks.
413
- ///
414
- /// Note that to prevent infinite execution of wasm it's recommended to
415
- /// place a timeout on the entire future representing executing wasm code
416
- /// and the periodic yields with epochs should ensure that when the
417
- /// timeout is reached it's appropriately recognized.
418
- ///
419
- /// In all cases special care needs to be taken when integrating
420
- /// asynchronous wasm into your application. You should carefully plan where
421
- /// WebAssembly will execute and what compute resources will be allotted to
422
- /// it. If Wasmtime doesn't support exactly what you'd like just yet, please
423
- /// feel free to open an issue!
424
- #[cfg(feature = "async")]
425
- pub fn async_support(&mut self, enable: bool) -> &mut Self {
426
- self.async_support = enable;
427
- self
428
- }
429
-
430
- /// Configures whether DWARF debug information will be emitted during
431
- /// compilation.
432
- ///
433
- /// Note that the `debug-builtins` compile-time Cargo feature must also be
434
- /// enabled for native debuggers such as GDB or LLDB to be able to debug
435
- /// guest WebAssembly programs.
436
- ///
437
- /// By default this option is `false`.
438
- pub fn debug_info(&mut self, enable: bool) -> &mut Self {
439
- self.tunables.generate_native_debuginfo = Some(enable);
440
- self
441
- }
442
-
443
- /// Configures whether [`WasmBacktrace`] will be present in the context of
444
- /// errors returned from Wasmtime.
445
- ///
446
- /// A backtrace may be collected whenever an error is returned from a host
447
- /// function call through to WebAssembly or when WebAssembly itself hits a
448
- /// trap condition, such as an out-of-bounds memory access. This flag
449
- /// indicates, in these conditions, whether the backtrace is collected or
450
- /// not.
451
- ///
452
- /// Currently wasm backtraces are implemented through frame pointer walking.
453
- /// This means that collecting a backtrace is expected to be a fast and
454
- /// relatively cheap operation. Additionally backtrace collection is
455
- /// suitable in concurrent environments since one thread capturing a
456
- /// backtrace won't block other threads.
457
- ///
458
- /// Collected backtraces are attached via [`anyhow::Error::context`] to
459
- /// errors returned from host functions. The [`WasmBacktrace`] type can be
460
- /// acquired via [`anyhow::Error::downcast_ref`] to inspect the backtrace.
461
- /// When this option is disabled then this context is never applied to
462
- /// errors coming out of wasm.
463
- ///
464
- /// This option is `true` by default.
465
- ///
466
- /// [`WasmBacktrace`]: crate::WasmBacktrace
467
- pub fn wasm_backtrace(&mut self, enable: bool) -> &mut Self {
468
- self.wasm_backtrace = enable;
469
- self
470
- }
471
-
472
- /// Configures whether backtraces in `Trap` will parse debug info in the wasm file to
473
- /// have filename/line number information.
474
- ///
475
- /// When enabled this will causes modules to retain debugging information
476
- /// found in wasm binaries. This debug information will be used when a trap
477
- /// happens to symbolicate each stack frame and attempt to print a
478
- /// filename/line number for each wasm frame in the stack trace.
479
- ///
480
- /// By default this option is `WasmBacktraceDetails::Environment`, meaning
481
- /// that wasm will read `WASMTIME_BACKTRACE_DETAILS` to indicate whether
482
- /// details should be parsed. Note that the `std` feature of this crate must
483
- /// be active to read environment variables, otherwise this is disabled by
484
- /// default.
485
- pub fn wasm_backtrace_details(&mut self, enable: WasmBacktraceDetails) -> &mut Self {
486
- self.wasm_backtrace_details_env_used = false;
487
- self.tunables.parse_wasm_debuginfo = match enable {
488
- WasmBacktraceDetails::Enable => Some(true),
489
- WasmBacktraceDetails::Disable => Some(false),
490
- WasmBacktraceDetails::Environment => {
491
- self.wasm_backtrace_details_env_used = true;
492
- #[cfg(feature = "std")]
493
- {
494
- std::env::var("WASMTIME_BACKTRACE_DETAILS")
495
- .map(|s| Some(s == "1"))
496
- .unwrap_or(Some(false))
497
- }
498
- #[cfg(not(feature = "std"))]
499
- {
500
- Some(false)
501
- }
502
- }
503
- };
504
- self
505
- }
506
-
507
- /// Configures whether to generate native unwind information
508
- /// (e.g. `.eh_frame` on Linux).
509
- ///
510
- /// This configuration option only exists to help third-party stack
511
- /// capturing mechanisms, such as the system's unwinder or the `backtrace`
512
- /// crate, determine how to unwind through Wasm frames. It does not affect
513
- /// whether Wasmtime can capture Wasm backtraces or not. The presence of
514
- /// [`WasmBacktrace`] is controlled by the [`Config::wasm_backtrace`]
515
- /// option.
516
- ///
517
- /// Native unwind information is included:
518
- /// - When targeting Windows, since the Windows ABI requires it.
519
- /// - By default.
520
- ///
521
- /// [`WasmBacktrace`]: crate::WasmBacktrace
522
- pub fn native_unwind_info(&mut self, enable: bool) -> &mut Self {
523
- self.native_unwind_info = Some(enable);
524
- self
525
- }
526
-
527
- /// Configures whether execution of WebAssembly will "consume fuel" to
528
- /// either halt or yield execution as desired.
529
- ///
530
- /// This can be used to deterministically prevent infinitely-executing
531
- /// WebAssembly code by instrumenting generated code to consume fuel as it
532
- /// executes. When fuel runs out a trap is raised, however [`Store`] can be
533
- /// configured to yield execution periodically via
534
- /// [`crate::Store::fuel_async_yield_interval`].
535
- ///
536
- /// Note that a [`Store`] starts with no fuel, so if you enable this option
537
- /// you'll have to be sure to pour some fuel into [`Store`] before
538
- /// executing some code.
539
- ///
540
- /// By default this option is `false`.
541
- ///
542
- /// [`Store`]: crate::Store
543
- pub fn consume_fuel(&mut self, enable: bool) -> &mut Self {
544
- self.tunables.consume_fuel = Some(enable);
545
- self
546
- }
547
-
548
- /// Enables epoch-based interruption.
549
- ///
550
- /// When executing code in async mode, we sometimes want to
551
- /// implement a form of cooperative timeslicing: long-running Wasm
552
- /// guest code should periodically yield to the executor
553
- /// loop. This yielding could be implemented by using "fuel" (see
554
- /// [`consume_fuel`](Config::consume_fuel)). However, fuel
555
- /// instrumentation is somewhat expensive: it modifies the
556
- /// compiled form of the Wasm code so that it maintains a precise
557
- /// instruction count, frequently checking this count against the
558
- /// remaining fuel. If one does not need this precise count or
559
- /// deterministic interruptions, and only needs a periodic
560
- /// interrupt of some form, then It would be better to have a more
561
- /// lightweight mechanism.
562
- ///
563
- /// Epoch-based interruption is that mechanism. There is a global
564
- /// "epoch", which is a counter that divides time into arbitrary
565
- /// periods (or epochs). This counter lives on the
566
- /// [`Engine`](crate::Engine) and can be incremented by calling
567
- /// [`Engine::increment_epoch`](crate::Engine::increment_epoch).
568
- /// Epoch-based instrumentation works by setting a "deadline
569
- /// epoch". The compiled code knows the deadline, and at certain
570
- /// points, checks the current epoch against that deadline. It
571
- /// will yield if the deadline has been reached.
572
- ///
573
- /// The idea is that checking an infrequently-changing counter is
574
- /// cheaper than counting and frequently storing a precise metric
575
- /// (instructions executed) locally. The interruptions are not
576
- /// deterministic, but if the embedder increments the epoch in a
577
- /// periodic way (say, every regular timer tick by a thread or
578
- /// signal handler), then we can ensure that all async code will
579
- /// yield to the executor within a bounded time.
580
- ///
581
- /// The deadline check cannot be avoided by malicious wasm code. It is safe
582
- /// to use epoch deadlines to limit the execution time of untrusted
583
- /// code.
584
- ///
585
- /// The [`Store`](crate::Store) tracks the deadline, and controls
586
- /// what happens when the deadline is reached during
587
- /// execution. Several behaviors are possible:
588
- ///
589
- /// - Trap if code is executing when the epoch deadline is
590
- /// met. See
591
- /// [`Store::epoch_deadline_trap`](crate::Store::epoch_deadline_trap).
592
- ///
593
- /// - Call an arbitrary function. This function may chose to trap or
594
- /// increment the epoch. See
595
- /// [`Store::epoch_deadline_callback`](crate::Store::epoch_deadline_callback).
596
- ///
597
- /// - Yield to the executor loop, then resume when the future is
598
- /// next polled. See
599
- /// [`Store::epoch_deadline_async_yield_and_update`](crate::Store::epoch_deadline_async_yield_and_update).
600
- ///
601
- /// Trapping is the default. The yielding behaviour may be used for
602
- /// the timeslicing behavior described above.
603
- ///
604
- /// This feature is available with or without async support.
605
- /// However, without async support, the timeslicing behaviour is
606
- /// not available. This means epoch-based interruption can only
607
- /// serve as a simple external-interruption mechanism.
608
- ///
609
- /// An initial deadline must be set before executing code by calling
610
- /// [`Store::set_epoch_deadline`](crate::Store::set_epoch_deadline). If this
611
- /// deadline is not configured then wasm will immediately trap.
612
- ///
613
- /// ## When to use fuel vs. epochs
614
- ///
615
- /// In general, epoch-based interruption results in faster
616
- /// execution. This difference is sometimes significant: in some
617
- /// measurements, up to 2-3x. This is because epoch-based
618
- /// interruption does less work: it only watches for a global
619
- /// rarely-changing counter to increment, rather than keeping a
620
- /// local frequently-changing counter and comparing it to a
621
- /// deadline.
622
- ///
623
- /// Fuel, in contrast, should be used when *deterministic*
624
- /// yielding or trapping is needed. For example, if it is required
625
- /// that the same function call with the same starting state will
626
- /// always either complete or trap with an out-of-fuel error,
627
- /// deterministically, then fuel with a fixed bound should be
628
- /// used.
629
- ///
630
- /// # See Also
631
- ///
632
- /// - [`Engine::increment_epoch`](crate::Engine::increment_epoch)
633
- /// - [`Store::set_epoch_deadline`](crate::Store::set_epoch_deadline)
634
- /// - [`Store::epoch_deadline_trap`](crate::Store::epoch_deadline_trap)
635
- /// - [`Store::epoch_deadline_callback`](crate::Store::epoch_deadline_callback)
636
- /// - [`Store::epoch_deadline_async_yield_and_update`](crate::Store::epoch_deadline_async_yield_and_update)
637
- pub fn epoch_interruption(&mut self, enable: bool) -> &mut Self {
638
- self.tunables.epoch_interruption = Some(enable);
639
- self
640
- }
641
-
642
- /// Configures the maximum amount of stack space available for
643
- /// executing WebAssembly code.
644
- ///
645
- /// WebAssembly has well-defined semantics on stack overflow. This is
646
- /// intended to be a knob which can help configure how much stack space
647
- /// wasm execution is allowed to consume. Note that the number here is not
648
- /// super-precise, but rather wasm will take at most "pretty close to this
649
- /// much" stack space.
650
- ///
651
- /// If a wasm call (or series of nested wasm calls) take more stack space
652
- /// than the `size` specified then a stack overflow trap will be raised.
653
- ///
654
- /// Caveat: this knob only limits the stack space consumed by wasm code.
655
- /// More importantly, it does not ensure that this much stack space is
656
- /// available on the calling thread stack. Exhausting the thread stack
657
- /// typically leads to an **abort** of the process.
658
- ///
659
- /// Here are some examples of how that could happen:
660
- ///
661
- /// - Let's assume this option is set to 2 MiB and then a thread that has
662
- /// a stack with 512 KiB left.
663
- ///
664
- /// If wasm code consumes more than 512 KiB then the process will be aborted.
665
- ///
666
- /// - Assuming the same conditions, but this time wasm code does not consume
667
- /// any stack but calls into a host function. The host function consumes
668
- /// more than 512 KiB of stack space. The process will be aborted.
669
- ///
670
- /// There's another gotcha related to recursive calling into wasm: the stack
671
- /// space consumed by a host function is counted towards this limit. The
672
- /// host functions are not prevented from consuming more than this limit.
673
- /// However, if the host function that used more than this limit and called
674
- /// back into wasm, then the execution will trap immediatelly because of
675
- /// stack overflow.
676
- ///
677
- /// When the `async` feature is enabled, this value cannot exceed the
678
- /// `async_stack_size` option. Be careful not to set this value too close
679
- /// to `async_stack_size` as doing so may limit how much stack space
680
- /// is available for host functions.
681
- ///
682
- /// By default this option is 512 KiB.
683
- ///
684
- /// # Errors
685
- ///
686
- /// The `Engine::new` method will fail if the `size` specified here is
687
- /// either 0 or larger than the [`Config::async_stack_size`] configuration.
688
- pub fn max_wasm_stack(&mut self, size: usize) -> &mut Self {
689
- self.max_wasm_stack = size;
690
- self
691
- }
692
-
693
- /// Configures the size of the stacks used for asynchronous execution.
694
- ///
695
- /// This setting configures the size of the stacks that are allocated for
696
- /// asynchronous execution. The value cannot be less than `max_wasm_stack`.
697
- ///
698
- /// The amount of stack space guaranteed for host functions is
699
- /// `async_stack_size - max_wasm_stack`, so take care not to set these two values
700
- /// close to one another; doing so may cause host functions to overflow the
701
- /// stack and abort the process.
702
- ///
703
- /// By default this option is 2 MiB.
704
- ///
705
- /// # Errors
706
- ///
707
- /// The `Engine::new` method will fail if the value for this option is
708
- /// smaller than the [`Config::max_wasm_stack`] option.
709
- #[cfg(feature = "async")]
710
- pub fn async_stack_size(&mut self, size: usize) -> &mut Self {
711
- self.async_stack_size = size;
712
- self
713
- }
714
-
715
- /// Configures whether the WebAssembly tail calls proposal will be enabled
716
- /// for compilation or not.
717
- ///
718
- /// The [WebAssembly tail calls proposal] introduces the `return_call` and
719
- /// `return_call_indirect` instructions. These instructions allow for Wasm
720
- /// programs to implement some recursive algorithms with *O(1)* stack space
721
- /// usage.
722
- ///
723
- /// This feature is disabled by default.
724
- ///
725
- /// [WebAssembly tail calls proposal]: https://github.com/WebAssembly/tail-call
726
- pub fn wasm_tail_call(&mut self, enable: bool) -> &mut Self {
727
- self.features.set(WasmFeatures::TAIL_CALL, enable);
728
- self.tunables.tail_callable = Some(enable);
729
- self
730
- }
731
-
732
- /// Configures whether the WebAssembly [threads] proposal will be enabled
733
- /// for compilation.
734
- ///
735
- /// This feature gates items such as shared memories and atomic
736
- /// instructions. Note that the threads feature depends on the bulk memory
737
- /// feature, which is enabled by default. Additionally note that while the
738
- /// wasm feature is called "threads" it does not actually include the
739
- /// ability to spawn threads. Spawning threads is part of the [wasi-threads]
740
- /// proposal which is a separately gated feature in Wasmtime.
741
- ///
742
- /// Embeddings of Wasmtime are able to build their own custom threading
743
- /// scheme on top of the core wasm threads proposal, however.
744
- ///
745
- /// This is `true` by default.
746
- ///
747
- /// [threads]: https://github.com/webassembly/threads
748
- /// [wasi-threads]: https://github.com/webassembly/wasi-threads
749
- #[cfg(feature = "threads")]
750
- pub fn wasm_threads(&mut self, enable: bool) -> &mut Self {
751
- self.features.set(WasmFeatures::THREADS, enable);
752
- self
753
- }
754
-
755
- /// Configures whether the [WebAssembly reference types proposal][proposal]
756
- /// will be enabled for compilation.
757
- ///
758
- /// This feature gates items such as the `externref` and `funcref` types as
759
- /// well as allowing a module to define multiple tables.
760
- ///
761
- /// Note that the reference types proposal depends on the bulk memory proposal.
762
- ///
763
- /// This feature is `true` by default.
764
- ///
765
- /// # Errors
766
- ///
767
- /// The validation of this feature are deferred until the engine is being built,
768
- /// and thus may cause `Engine::new` fail if the `bulk_memory` feature is disabled.
769
- ///
770
- /// [proposal]: https://github.com/webassembly/reference-types
771
- #[cfg(feature = "gc")]
772
- pub fn wasm_reference_types(&mut self, enable: bool) -> &mut Self {
773
- self.features.set(WasmFeatures::REFERENCE_TYPES, enable);
774
- self
775
- }
776
-
777
- /// Configures whether the [WebAssembly function references
778
- /// proposal][proposal] will be enabled for compilation.
779
- ///
780
- /// This feature gates non-nullable reference types, function reference
781
- /// types, `call_ref`, `ref.func`, and non-nullable reference related
782
- /// instructions.
783
- ///
784
- /// Note that the function references proposal depends on the reference
785
- /// types proposal.
786
- ///
787
- /// This feature is `false` by default.
788
- ///
789
- /// [proposal]: https://github.com/WebAssembly/function-references
790
- #[cfg(feature = "gc")]
791
- pub fn wasm_function_references(&mut self, enable: bool) -> &mut Self {
792
- self.features.set(WasmFeatures::FUNCTION_REFERENCES, enable);
793
- self
794
- }
795
-
796
- /// Configures whether the [WebAssembly Garbage Collection
797
- /// proposal][proposal] will be enabled for compilation.
798
- ///
799
- /// This feature gates `struct` and `array` type definitions and references,
800
- /// the `i31ref` type, and all related instructions.
801
- ///
802
- /// Note that the function references proposal depends on the typed function
803
- /// references proposal.
804
- ///
805
- /// This feature is `false` by default.
806
- ///
807
- /// **Warning: Wasmtime's implementation of the GC proposal is still in
808
- /// progress and generally not ready for primetime.**
809
- ///
810
- /// [proposal]: https://github.com/WebAssembly/gc
811
- #[cfg(feature = "gc")]
812
- pub fn wasm_gc(&mut self, enable: bool) -> &mut Self {
813
- self.features.set(WasmFeatures::GC, enable);
814
- self
815
- }
816
-
817
- /// Configures whether the WebAssembly SIMD proposal will be
818
- /// enabled for compilation.
819
- ///
820
- /// The [WebAssembly SIMD proposal][proposal]. This feature gates items such
821
- /// as the `v128` type and all of its operators being in a module. Note that
822
- /// this does not enable the [relaxed simd proposal].
823
- ///
824
- /// On x86_64 platforms note that enabling this feature requires SSE 4.2 and
825
- /// below to be available on the target platform. Compilation will fail if
826
- /// the compile target does not include SSE 4.2.
827
- ///
828
- /// This is `true` by default.
829
- ///
830
- /// [proposal]: https://github.com/webassembly/simd
831
- /// [relaxed simd proposal]: https://github.com/WebAssembly/relaxed-simd
832
- pub fn wasm_simd(&mut self, enable: bool) -> &mut Self {
833
- self.features.set(WasmFeatures::SIMD, enable);
834
- self
835
- }
836
-
837
- /// Configures whether the WebAssembly Relaxed SIMD proposal will be
838
- /// enabled for compilation.
839
- ///
840
- /// The relaxed SIMD proposal adds new instructions to WebAssembly which,
841
- /// for some specific inputs, are allowed to produce different results on
842
- /// different hosts. More-or-less this proposal enables exposing
843
- /// platform-specific semantics of SIMD instructions in a controlled
844
- /// fashion to a WebAssembly program. From an embedder's perspective this
845
- /// means that WebAssembly programs may execute differently depending on
846
- /// whether the host is x86_64 or AArch64, for example.
847
- ///
848
- /// By default Wasmtime lowers relaxed SIMD instructions to the fastest
849
- /// lowering for the platform it's running on. This means that, by default,
850
- /// some relaxed SIMD instructions may have different results for the same
851
- /// inputs across x86_64 and AArch64. This behavior can be disabled through
852
- /// the [`Config::relaxed_simd_deterministic`] option which will force
853
- /// deterministic behavior across all platforms, as classified by the
854
- /// specification, at the cost of performance.
855
- ///
856
- /// This is `true` by default.
857
- ///
858
- /// [proposal]: https://github.com/webassembly/relaxed-simd
859
- pub fn wasm_relaxed_simd(&mut self, enable: bool) -> &mut Self {
860
- self.features.set(WasmFeatures::RELAXED_SIMD, enable);
861
- self
862
- }
863
-
864
- /// This option can be used to control the behavior of the [relaxed SIMD
865
- /// proposal's][proposal] instructions.
866
- ///
867
- /// The relaxed SIMD proposal introduces instructions that are allowed to
868
- /// have different behavior on different architectures, primarily to afford
869
- /// an efficient implementation on all architectures. This means, however,
870
- /// that the same module may execute differently on one host than another,
871
- /// which typically is not otherwise the case. This option is provided to
872
- /// force Wasmtime to generate deterministic code for all relaxed simd
873
- /// instructions, at the cost of performance, for all architectures. When
874
- /// this option is enabled then the deterministic behavior of all
875
- /// instructions in the relaxed SIMD proposal is selected.
876
- ///
877
- /// This is `false` by default.
878
- ///
879
- /// [proposal]: https://github.com/webassembly/relaxed-simd
880
- pub fn relaxed_simd_deterministic(&mut self, enable: bool) -> &mut Self {
881
- self.tunables.relaxed_simd_deterministic = Some(enable);
882
- self
883
- }
884
-
885
- /// Configures whether the [WebAssembly bulk memory operations
886
- /// proposal][proposal] will be enabled for compilation.
887
- ///
888
- /// This feature gates items such as the `memory.copy` instruction, passive
889
- /// data/table segments, etc, being in a module.
890
- ///
891
- /// This is `true` by default.
892
- ///
893
- /// Feature `reference_types`, which is also `true` by default, requires
894
- /// this feature to be enabled. Thus disabling this feature must also disable
895
- /// `reference_types` as well using [`wasm_reference_types`](crate::Config::wasm_reference_types).
896
- ///
897
- /// # Errors
898
- ///
899
- /// Disabling this feature without disabling `reference_types` will cause
900
- /// `Engine::new` to fail.
901
- ///
902
- /// [proposal]: https://github.com/webassembly/bulk-memory-operations
903
- pub fn wasm_bulk_memory(&mut self, enable: bool) -> &mut Self {
904
- self.features.set(WasmFeatures::BULK_MEMORY, enable);
905
- self
906
- }
907
-
908
- /// Configures whether the WebAssembly multi-value [proposal] will
909
- /// be enabled for compilation.
910
- ///
911
- /// This feature gates functions and blocks returning multiple values in a
912
- /// module, for example.
913
- ///
914
- /// This is `true` by default.
915
- ///
916
- /// [proposal]: https://github.com/webassembly/multi-value
917
- pub fn wasm_multi_value(&mut self, enable: bool) -> &mut Self {
918
- self.features.set(WasmFeatures::MULTI_VALUE, enable);
919
- self
920
- }
921
-
922
- /// Configures whether the WebAssembly multi-memory [proposal] will
923
- /// be enabled for compilation.
924
- ///
925
- /// This feature gates modules having more than one linear memory
926
- /// declaration or import.
927
- ///
928
- /// This is `true` by default.
929
- ///
930
- /// [proposal]: https://github.com/webassembly/multi-memory
931
- pub fn wasm_multi_memory(&mut self, enable: bool) -> &mut Self {
932
- self.features.set(WasmFeatures::MULTI_MEMORY, enable);
933
- self
934
- }
935
-
936
- /// Configures whether the WebAssembly memory64 [proposal] will
937
- /// be enabled for compilation.
938
- ///
939
- /// Note that this the upstream specification is not finalized and Wasmtime
940
- /// may also have bugs for this feature since it hasn't been exercised
941
- /// much.
942
- ///
943
- /// This is `false` by default.
944
- ///
945
- /// [proposal]: https://github.com/webassembly/memory64
946
- pub fn wasm_memory64(&mut self, enable: bool) -> &mut Self {
947
- self.features.set(WasmFeatures::MEMORY64, enable);
948
- self
949
- }
950
-
951
- /// Configures whether the WebAssembly component-model [proposal] will
952
- /// be enabled for compilation.
953
- ///
954
- /// Note that this feature is a work-in-progress and is incomplete.
955
- ///
956
- /// This is `false` by default.
957
- ///
958
- /// [proposal]: https://github.com/webassembly/component-model
959
- #[cfg(feature = "component-model")]
960
- pub fn wasm_component_model(&mut self, enable: bool) -> &mut Self {
961
- self.features.set(WasmFeatures::COMPONENT_MODEL, enable);
962
- self
963
- }
964
-
965
- /// Configures whether we enable the "indirect call cache" optimization.
966
- ///
967
- /// This feature adds, for each `call_indirect` instruction in a
968
- /// Wasm module (i.e., a function-pointer call in guest code), a
969
- /// one-entry cache that speeds up the translation from a table
970
- /// index to the actual machine code. By default, the VM's
971
- /// implementation of this translation requires several
972
- /// indirections and checks (table bounds-check, function
973
- /// signature-check, table lazy-initialization logic). The intent
974
- /// of this feature is to speed up indirect calls substantially
975
- /// when they are repeated frequently in hot code.
976
- ///
977
- /// While it accelerates repeated calls, this feature has the
978
- /// potential to slow down instantiation slightly, because it adds
979
- /// additional state (the cache storage -- usually 16 bytes per
980
- /// `call_indirect` instruction for each instance) that has to be
981
- /// initialized. In practice, we have not seen
982
- /// measurable/statistically-significant impact from this, though.
983
- ///
984
- /// Until we have further experience with this feature, it will
985
- /// remain off: it is `false` by default.
986
- pub fn cache_call_indirects(&mut self, enable: bool) -> &mut Self {
987
- self.tunables.cache_call_indirects = Some(enable);
988
- self
989
- }
990
-
991
- /// Configures the "indirect call cache" maximum capacity.
992
- ///
993
- /// If the [`Config::cache_call_indirects`] configuration option
994
- /// is enabled, the engine allocates "cache slots" directly in its
995
- /// per-instance state struct for each `call_indirect` in the
996
- /// module's code. We place a limit on this count in order to
997
- /// avoid inflating the state too much with very large modules. If
998
- /// a module exceeds the limit, the first `max` indirect
999
- /// call-sites will still have a one-entry cache, but any indirect
1000
- /// call-sites beyond the limit (in linear order in the module's
1001
- /// code section) do not participate in the caching, as if the
1002
- /// option were turned off.
1003
- ///
1004
- /// There is also an internal hard cap to this limit:
1005
- /// configurations with `max` beyond `50_000` will effectively cap
1006
- /// the limit at `50_000`. This is so that instance state does not
1007
- /// become unreasonably large.
1008
- ///
1009
- /// This is `50_000` by default.
1010
- pub fn max_call_indirect_cache_slots(&mut self, max: usize) -> &mut Self {
1011
- const HARD_CAP: usize = 50_000; // See doc-comment above.
1012
- self.tunables.max_call_indirect_cache_slots = Some(core::cmp::min(max, HARD_CAP));
1013
- self
1014
- }
1015
-
1016
- /// Configures which compilation strategy will be used for wasm modules.
1017
- ///
1018
- /// This method can be used to configure which compiler is used for wasm
1019
- /// modules, and for more documentation consult the [`Strategy`] enumeration
1020
- /// and its documentation.
1021
- ///
1022
- /// The default value for this is `Strategy::Auto`.
1023
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1024
- pub fn strategy(&mut self, strategy: Strategy) -> &mut Self {
1025
- self.compiler_config.strategy = strategy;
1026
- self
1027
- }
1028
-
1029
- /// Creates a default profiler based on the profiling strategy chosen.
1030
- ///
1031
- /// Profiler creation calls the type's default initializer where the purpose is
1032
- /// really just to put in place the type used for profiling.
1033
- ///
1034
- /// Some [`ProfilingStrategy`] require specific platforms or particular feature
1035
- /// to be enabled, such as `ProfilingStrategy::JitDump` requires the `jitdump`
1036
- /// feature.
1037
- ///
1038
- /// # Errors
1039
- ///
1040
- /// The validation of this field is deferred until the engine is being built, and thus may
1041
- /// cause `Engine::new` fail if the required feature is disabled, or the platform is not
1042
- /// supported.
1043
- pub fn profiler(&mut self, profile: ProfilingStrategy) -> &mut Self {
1044
- self.profiling_strategy = profile;
1045
- self
1046
- }
1047
-
1048
- /// Configures whether the debug verifier of Cranelift is enabled or not.
1049
- ///
1050
- /// When Cranelift is used as a code generation backend this will configure
1051
- /// it to have the `enable_verifier` flag which will enable a number of debug
1052
- /// checks inside of Cranelift. This is largely only useful for the
1053
- /// developers of wasmtime itself.
1054
- ///
1055
- /// The default value for this is `false`
1056
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1057
- pub fn cranelift_debug_verifier(&mut self, enable: bool) -> &mut Self {
1058
- let val = if enable { "true" } else { "false" };
1059
- self.compiler_config
1060
- .settings
1061
- .insert("enable_verifier".to_string(), val.to_string());
1062
- self
1063
- }
1064
-
1065
- /// Configures the Cranelift code generator optimization level.
1066
- ///
1067
- /// When the Cranelift code generator is used you can configure the
1068
- /// optimization level used for generated code in a few various ways. For
1069
- /// more information see the documentation of [`OptLevel`].
1070
- ///
1071
- /// The default value for this is `OptLevel::None`.
1072
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1073
- pub fn cranelift_opt_level(&mut self, level: OptLevel) -> &mut Self {
1074
- let val = match level {
1075
- OptLevel::None => "none",
1076
- OptLevel::Speed => "speed",
1077
- OptLevel::SpeedAndSize => "speed_and_size",
1078
- };
1079
- self.compiler_config
1080
- .settings
1081
- .insert("opt_level".to_string(), val.to_string());
1082
- self
1083
- }
1084
-
1085
- /// Configures whether Cranelift should perform a NaN-canonicalization pass.
1086
- ///
1087
- /// When Cranelift is used as a code generation backend this will configure
1088
- /// it to replace NaNs with a single canonical value. This is useful for
1089
- /// users requiring entirely deterministic WebAssembly computation. This is
1090
- /// not required by the WebAssembly spec, so it is not enabled by default.
1091
- ///
1092
- /// Note that this option affects not only WebAssembly's `f32` and `f64`
1093
- /// types but additionally the `v128` type. This option will cause
1094
- /// operations using any of these types to have extra checks placed after
1095
- /// them to normalize NaN values as needed.
1096
- ///
1097
- /// The default value for this is `false`
1098
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1099
- pub fn cranelift_nan_canonicalization(&mut self, enable: bool) -> &mut Self {
1100
- let val = if enable { "true" } else { "false" };
1101
- self.compiler_config
1102
- .settings
1103
- .insert("enable_nan_canonicalization".to_string(), val.to_string());
1104
- self
1105
- }
1106
-
1107
- /// Controls whether proof-carrying code (PCC) is used to validate
1108
- /// lowering of Wasm sandbox checks.
1109
- ///
1110
- /// Proof-carrying code carries "facts" about program values from
1111
- /// the IR all the way to machine code, and checks those facts
1112
- /// against known machine-instruction semantics. This guards
1113
- /// against bugs in instruction lowering that might create holes
1114
- /// in the Wasm sandbox.
1115
- ///
1116
- /// PCC is designed to be fast: it does not require complex
1117
- /// solvers or logic engines to verify, but only a linear pass
1118
- /// over a trail of "breadcrumbs" or facts at each intermediate
1119
- /// value. Thus, it is appropriate to enable in production.
1120
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1121
- pub fn cranelift_pcc(&mut self, enable: bool) -> &mut Self {
1122
- let val = if enable { "true" } else { "false" };
1123
- self.compiler_config
1124
- .settings
1125
- .insert("enable_pcc".to_string(), val.to_string());
1126
- self
1127
- }
1128
-
1129
- /// Allows setting a Cranelift boolean flag or preset. This allows
1130
- /// fine-tuning of Cranelift settings.
1131
- ///
1132
- /// Since Cranelift flags may be unstable, this method should not be considered to be stable
1133
- /// either; other `Config` functions should be preferred for stability.
1134
- ///
1135
- /// # Safety
1136
- ///
1137
- /// This is marked as unsafe, because setting the wrong flag might break invariants,
1138
- /// resulting in execution hazards.
1139
- ///
1140
- /// # Errors
1141
- ///
1142
- /// The validation of the flags are deferred until the engine is being built, and thus may
1143
- /// cause `Engine::new` fail if the flag's name does not exist, or the value is not appropriate
1144
- /// for the flag type.
1145
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1146
- pub unsafe fn cranelift_flag_enable(&mut self, flag: &str) -> &mut Self {
1147
- self.compiler_config.flags.insert(flag.to_string());
1148
- self
1149
- }
1150
-
1151
- /// Allows settings another Cranelift flag defined by a flag name and value. This allows
1152
- /// fine-tuning of Cranelift settings.
1153
- ///
1154
- /// Since Cranelift flags may be unstable, this method should not be considered to be stable
1155
- /// either; other `Config` functions should be preferred for stability.
1156
- ///
1157
- /// # Safety
1158
- ///
1159
- /// This is marked as unsafe, because setting the wrong flag might break invariants,
1160
- /// resulting in execution hazards.
1161
- ///
1162
- /// # Errors
1163
- ///
1164
- /// The validation of the flags are deferred until the engine is being built, and thus may
1165
- /// cause `Engine::new` fail if the flag's name does not exist, or incompatible with other
1166
- /// settings.
1167
- ///
1168
- /// For example, feature `wasm_backtrace` will set `unwind_info` to `true`, but if it's
1169
- /// manually set to false then it will fail.
1170
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1171
- pub unsafe fn cranelift_flag_set(&mut self, name: &str, value: &str) -> &mut Self {
1172
- self.compiler_config
1173
- .settings
1174
- .insert(name.to_string(), value.to_string());
1175
- self
1176
- }
1177
-
1178
- /// Loads cache configuration specified at `path`.
1179
- ///
1180
- /// This method will read the file specified by `path` on the filesystem and
1181
- /// attempt to load cache configuration from it. This method can also fail
1182
- /// due to I/O errors, misconfiguration, syntax errors, etc. For expected
1183
- /// syntax in the configuration file see the [documentation online][docs].
1184
- ///
1185
- /// By default cache configuration is not enabled or loaded.
1186
- ///
1187
- /// This method is only available when the `cache` feature of this crate is
1188
- /// enabled.
1189
- ///
1190
- /// # Errors
1191
- ///
1192
- /// This method can fail due to any error that happens when loading the file
1193
- /// pointed to by `path` and attempting to load the cache configuration.
1194
- ///
1195
- /// [docs]: https://bytecodealliance.github.io/wasmtime/cli-cache.html
1196
- #[cfg(feature = "cache")]
1197
- pub fn cache_config_load(&mut self, path: impl AsRef<Path>) -> Result<&mut Self> {
1198
- self.cache_config = CacheConfig::from_file(Some(path.as_ref()))?;
1199
- Ok(self)
1200
- }
1201
-
1202
- /// Disable caching.
1203
- ///
1204
- /// Every call to [`Module::new(my_wasm)`][crate::Module::new] will
1205
- /// recompile `my_wasm`, even when it is unchanged.
1206
- ///
1207
- /// By default, new configs do not have caching enabled. This method is only
1208
- /// useful for disabling a previous cache configuration.
1209
- ///
1210
- /// This method is only available when the `cache` feature of this crate is
1211
- /// enabled.
1212
- #[cfg(feature = "cache")]
1213
- pub fn disable_cache(&mut self) -> &mut Self {
1214
- self.cache_config = CacheConfig::new_cache_disabled();
1215
- self
1216
- }
1217
-
1218
- /// Loads cache configuration from the system default path.
1219
- ///
1220
- /// This commit is the same as [`Config::cache_config_load`] except that it
1221
- /// does not take a path argument and instead loads the default
1222
- /// configuration present on the system. This is located, for example, on
1223
- /// Unix at `$HOME/.config/wasmtime/config.toml` and is typically created
1224
- /// with the `wasmtime config new` command.
1225
- ///
1226
- /// By default cache configuration is not enabled or loaded.
1227
- ///
1228
- /// This method is only available when the `cache` feature of this crate is
1229
- /// enabled.
1230
- ///
1231
- /// # Errors
1232
- ///
1233
- /// This method can fail due to any error that happens when loading the
1234
- /// default system configuration. Note that it is not an error if the
1235
- /// default config file does not exist, in which case the default settings
1236
- /// for an enabled cache are applied.
1237
- ///
1238
- /// [docs]: https://bytecodealliance.github.io/wasmtime/cli-cache.html
1239
- #[cfg(feature = "cache")]
1240
- pub fn cache_config_load_default(&mut self) -> Result<&mut Self> {
1241
- self.cache_config = CacheConfig::from_file(None)?;
1242
- Ok(self)
1243
- }
1244
-
1245
- /// Sets a custom memory creator.
1246
- ///
1247
- /// Custom memory creators are used when creating host `Memory` objects or when
1248
- /// creating instance linear memories for the on-demand instance allocation strategy.
1249
- #[cfg(feature = "runtime")]
1250
- pub fn with_host_memory(&mut self, mem_creator: Arc<dyn MemoryCreator>) -> &mut Self {
1251
- self.mem_creator = Some(Arc::new(MemoryCreatorProxy(mem_creator)));
1252
- self
1253
- }
1254
-
1255
- /// Sets a custom stack creator.
1256
- ///
1257
- /// Custom memory creators are used when creating creating async instance stacks for
1258
- /// the on-demand instance allocation strategy.
1259
- #[cfg(feature = "async")]
1260
- pub fn with_host_stack(&mut self, stack_creator: Arc<dyn StackCreator>) -> &mut Self {
1261
- self.stack_creator = Some(Arc::new(StackCreatorProxy(stack_creator)));
1262
- self
1263
- }
1264
-
1265
- /// Sets the instance allocation strategy to use.
1266
- ///
1267
- /// When using the pooling instance allocation strategy, all linear memories
1268
- /// will be created as "static" and the
1269
- /// [`Config::static_memory_maximum_size`] and
1270
- /// [`Config::static_memory_guard_size`] options will be used to configure
1271
- /// the virtual memory allocations of linear memories.
1272
- pub fn allocation_strategy(&mut self, strategy: InstanceAllocationStrategy) -> &mut Self {
1273
- self.allocation_strategy = strategy;
1274
- self
1275
- }
1276
-
1277
- /// Configures the maximum size, in bytes, where a linear memory is
1278
- /// considered static, above which it'll be considered dynamic.
1279
- ///
1280
- /// > Note: this value has important performance ramifications, be sure to
1281
- /// > understand what this value does before tweaking it and benchmarking.
1282
- ///
1283
- /// This function configures the threshold for wasm memories whether they're
1284
- /// implemented as a dynamically relocatable chunk of memory or a statically
1285
- /// located chunk of memory. The `max_size` parameter here is the size, in
1286
- /// bytes, where if the maximum size of a linear memory is below `max_size`
1287
- /// then it will be statically allocated with enough space to never have to
1288
- /// move. If the maximum size of a linear memory is larger than `max_size`
1289
- /// then wasm memory will be dynamically located and may move in memory
1290
- /// through growth operations.
1291
- ///
1292
- /// Specifying a `max_size` of 0 means that all memories will be dynamic and
1293
- /// may be relocated through `memory.grow`. Also note that if any wasm
1294
- /// memory's maximum size is below `max_size` then it will still reserve
1295
- /// `max_size` bytes in the virtual memory space.
1296
- ///
1297
- /// ## Static vs Dynamic Memory
1298
- ///
1299
- /// Linear memories represent contiguous arrays of bytes, but they can also
1300
- /// be grown through the API and wasm instructions. When memory is grown if
1301
- /// space hasn't been preallocated then growth may involve relocating the
1302
- /// base pointer in memory. Memories in Wasmtime are classified in two
1303
- /// different ways:
1304
- ///
1305
- /// * **static** - these memories preallocate all space necessary they'll
1306
- /// ever need, meaning that the base pointer of these memories is never
1307
- /// moved. Static memories may take more virtual memory space because of
1308
- /// pre-reserving space for memories.
1309
- ///
1310
- /// * **dynamic** - these memories are not preallocated and may move during
1311
- /// growth operations. Dynamic memories consume less virtual memory space
1312
- /// because they don't need to preallocate space for future growth.
1313
- ///
1314
- /// Static memories can be optimized better in JIT code because once the
1315
- /// base address is loaded in a function it's known that we never need to
1316
- /// reload it because it never changes, `memory.grow` is generally a pretty
1317
- /// fast operation because the wasm memory is never relocated, and under
1318
- /// some conditions bounds checks can be elided on memory accesses.
1319
- ///
1320
- /// Dynamic memories can't be quite as heavily optimized because the base
1321
- /// address may need to be reloaded more often, they may require relocating
1322
- /// lots of data on `memory.grow`, and dynamic memories require
1323
- /// unconditional bounds checks on all memory accesses.
1324
- ///
1325
- /// ## Should you use static or dynamic memory?
1326
- ///
1327
- /// In general you probably don't need to change the value of this property.
1328
- /// The defaults here are optimized for each target platform to consume a
1329
- /// reasonable amount of physical memory while also generating speedy
1330
- /// machine code.
1331
- ///
1332
- /// One of the main reasons you may want to configure this today is if your
1333
- /// environment can't reserve virtual memory space for each wasm linear
1334
- /// memory. On 64-bit platforms wasm memories require a 6GB reservation by
1335
- /// default, and system limits may prevent this in some scenarios. In this
1336
- /// case you may wish to force memories to be allocated dynamically meaning
1337
- /// that the virtual memory footprint of creating a wasm memory should be
1338
- /// exactly what's used by the wasm itself.
1339
- ///
1340
- /// For 32-bit memories a static memory must contain at least 4GB of
1341
- /// reserved address space plus a guard page to elide any bounds checks at
1342
- /// all. Smaller static memories will use similar bounds checks as dynamic
1343
- /// memories.
1344
- ///
1345
- /// ## Default
1346
- ///
1347
- /// The default value for this property depends on the host platform. For
1348
- /// 64-bit platforms there's lots of address space available, so the default
1349
- /// configured here is 4GB. WebAssembly linear memories currently max out at
1350
- /// 4GB which means that on 64-bit platforms Wasmtime by default always uses
1351
- /// a static memory. This, coupled with a sufficiently sized guard region,
1352
- /// should produce the fastest JIT code on 64-bit platforms, but does
1353
- /// require a large address space reservation for each wasm memory.
1354
- ///
1355
- /// For 32-bit platforms this value defaults to 1GB. This means that wasm
1356
- /// memories whose maximum size is less than 1GB will be allocated
1357
- /// statically, otherwise they'll be considered dynamic.
1358
- ///
1359
- /// ## Static Memory and Pooled Instance Allocation
1360
- ///
1361
- /// When using the pooling instance allocator memories are considered to
1362
- /// always be static memories, they are never dynamic. This setting
1363
- /// configures the size of linear memory to reserve for each memory in the
1364
- /// pooling allocator.
1365
- ///
1366
- /// Note that the pooling allocator can reduce the amount of memory needed
1367
- /// for pooling allocation by using memory protection; see
1368
- /// `PoolingAllocatorConfig::memory_protection_keys` for details.
1369
- pub fn static_memory_maximum_size(&mut self, max_size: u64) -> &mut Self {
1370
- let max_pages = max_size / u64::from(wasmtime_environ::WASM_PAGE_SIZE);
1371
- self.tunables.static_memory_bound = Some(max_pages);
1372
- self
1373
- }
1374
-
1375
- /// Indicates that the "static" style of memory should always be used.
1376
- ///
1377
- /// This configuration option enables selecting the "static" option for all
1378
- /// linear memories created within this `Config`. This means that all
1379
- /// memories will be allocated up-front and will never move. Additionally
1380
- /// this means that all memories are synthetically limited by the
1381
- /// [`Config::static_memory_maximum_size`] option, regardless of what the
1382
- /// actual maximum size is on the memory's original type.
1383
- ///
1384
- /// For the difference between static and dynamic memories, see the
1385
- /// [`Config::static_memory_maximum_size`].
1386
- pub fn static_memory_forced(&mut self, force: bool) -> &mut Self {
1387
- self.tunables.static_memory_bound_is_maximum = Some(force);
1388
- self
1389
- }
1390
-
1391
- /// Configures the size, in bytes, of the guard region used at the end of a
1392
- /// static memory's address space reservation.
1393
- ///
1394
- /// > Note: this value has important performance ramifications, be sure to
1395
- /// > understand what this value does before tweaking it and benchmarking.
1396
- ///
1397
- /// All WebAssembly loads/stores are bounds-checked and generate a trap if
1398
- /// they're out-of-bounds. Loads and stores are often very performance
1399
- /// critical, so we want the bounds check to be as fast as possible!
1400
- /// Accelerating these memory accesses is the motivation for a guard after a
1401
- /// memory allocation.
1402
- ///
1403
- /// Memories (both static and dynamic) can be configured with a guard at the
1404
- /// end of them which consists of unmapped virtual memory. This unmapped
1405
- /// memory will trigger a memory access violation (e.g. segfault) if
1406
- /// accessed. This allows JIT code to elide bounds checks if it can prove
1407
- /// that an access, if out of bounds, would hit the guard region. This means
1408
- /// that having such a guard of unmapped memory can remove the need for
1409
- /// bounds checks in JIT code.
1410
- ///
1411
- /// For the difference between static and dynamic memories, see the
1412
- /// [`Config::static_memory_maximum_size`].
1413
- ///
1414
- /// ## How big should the guard be?
1415
- ///
1416
- /// In general, like with configuring `static_memory_maximum_size`, you
1417
- /// probably don't want to change this value from the defaults. Otherwise,
1418
- /// though, the size of the guard region affects the number of bounds checks
1419
- /// needed for generated wasm code. More specifically, loads/stores with
1420
- /// immediate offsets will generate bounds checks based on how big the guard
1421
- /// page is.
1422
- ///
1423
- /// For 32-bit wasm memories a 4GB static memory is required to even start
1424
- /// removing bounds checks. A 4GB guard size will guarantee that the module
1425
- /// has zero bounds checks for memory accesses. A 2GB guard size will
1426
- /// eliminate all bounds checks with an immediate offset less than 2GB. A
1427
- /// guard size of zero means that all memory accesses will still have bounds
1428
- /// checks.
1429
- ///
1430
- /// ## Default
1431
- ///
1432
- /// The default value for this property is 2GB on 64-bit platforms. This
1433
- /// allows eliminating almost all bounds checks on loads/stores with an
1434
- /// immediate offset of less than 2GB. On 32-bit platforms this defaults to
1435
- /// 64KB.
1436
- ///
1437
- /// ## Errors
1438
- ///
1439
- /// The `Engine::new` method will return an error if this option is smaller
1440
- /// than the value configured for [`Config::dynamic_memory_guard_size`].
1441
- pub fn static_memory_guard_size(&mut self, guard_size: u64) -> &mut Self {
1442
- let guard_size = round_up_to_pages(guard_size);
1443
- self.tunables.static_memory_offset_guard_size = Some(guard_size);
1444
- self
1445
- }
1446
-
1447
- /// Configures the size, in bytes, of the guard region used at the end of a
1448
- /// dynamic memory's address space reservation.
1449
- ///
1450
- /// For the difference between static and dynamic memories, see the
1451
- /// [`Config::static_memory_maximum_size`]
1452
- ///
1453
- /// For more information about what a guard is, see the documentation on
1454
- /// [`Config::static_memory_guard_size`].
1455
- ///
1456
- /// Note that the size of the guard region for dynamic memories is not super
1457
- /// critical for performance. Making it reasonably-sized can improve
1458
- /// generated code slightly, but for maximum performance you'll want to lean
1459
- /// towards static memories rather than dynamic anyway.
1460
- ///
1461
- /// Also note that the dynamic memory guard size must be smaller than the
1462
- /// static memory guard size, so if a large dynamic memory guard is
1463
- /// specified then the static memory guard size will also be automatically
1464
- /// increased.
1465
- ///
1466
- /// ## Default
1467
- ///
1468
- /// This value defaults to 64KB.
1469
- ///
1470
- /// ## Errors
1471
- ///
1472
- /// The `Engine::new` method will return an error if this option is larger
1473
- /// than the value configured for [`Config::static_memory_guard_size`].
1474
- pub fn dynamic_memory_guard_size(&mut self, guard_size: u64) -> &mut Self {
1475
- let guard_size = round_up_to_pages(guard_size);
1476
- self.tunables.dynamic_memory_offset_guard_size = Some(guard_size);
1477
- self
1478
- }
1479
-
1480
- /// Configures the size, in bytes, of the extra virtual memory space
1481
- /// reserved after a "dynamic" memory for growing into.
1482
- ///
1483
- /// For the difference between static and dynamic memories, see the
1484
- /// [`Config::static_memory_maximum_size`]
1485
- ///
1486
- /// Dynamic memories can be relocated in the process's virtual address space
1487
- /// on growth and do not always reserve their entire space up-front. This
1488
- /// means that a growth of the memory may require movement in the address
1489
- /// space, which in the worst case can copy a large number of bytes from one
1490
- /// region to another.
1491
- ///
1492
- /// This setting configures how many bytes are reserved after the initial
1493
- /// reservation for a dynamic memory for growing into. A value of 0 here
1494
- /// means that no extra bytes are reserved and all calls to `memory.grow`
1495
- /// will need to relocate the wasm linear memory (copying all the bytes). A
1496
- /// value of 1 megabyte, however, means that `memory.grow` can allocate up
1497
- /// to a megabyte of extra memory before the memory needs to be moved in
1498
- /// linear memory.
1499
- ///
1500
- /// Note that this is a currently simple heuristic for optimizing the growth
1501
- /// of dynamic memories, primarily implemented for the memory64 proposal
1502
- /// where all memories are currently "dynamic". This is unlikely to be a
1503
- /// one-size-fits-all style approach and if you're an embedder running into
1504
- /// issues with dynamic memories and growth and are interested in having
1505
- /// other growth strategies available here please feel free to [open an
1506
- /// issue on the Wasmtime repository][issue]!
1507
- ///
1508
- /// [issue]: https://github.com/bytecodealliance/wasmtime/issues/ne
1509
- ///
1510
- /// ## Default
1511
- ///
1512
- /// For 64-bit platforms this defaults to 2GB, and for 32-bit platforms this
1513
- /// defaults to 1MB.
1514
- pub fn dynamic_memory_reserved_for_growth(&mut self, reserved: u64) -> &mut Self {
1515
- self.tunables.dynamic_memory_growth_reserve = Some(round_up_to_pages(reserved));
1516
- self
1517
- }
1518
-
1519
- /// Indicates whether a guard region is present before allocations of
1520
- /// linear memory.
1521
- ///
1522
- /// Guard regions before linear memories are never used during normal
1523
- /// operation of WebAssembly modules, even if they have out-of-bounds
1524
- /// loads. The only purpose for a preceding guard region in linear memory
1525
- /// is extra protection against possible bugs in code generators like
1526
- /// Cranelift. This setting does not affect performance in any way, but will
1527
- /// result in larger virtual memory reservations for linear memories (it
1528
- /// won't actually ever use more memory, just use more of the address
1529
- /// space).
1530
- ///
1531
- /// The size of the guard region before linear memory is the same as the
1532
- /// guard size that comes after linear memory, which is configured by
1533
- /// [`Config::static_memory_guard_size`] and
1534
- /// [`Config::dynamic_memory_guard_size`].
1535
- ///
1536
- /// ## Default
1537
- ///
1538
- /// This value defaults to `true`.
1539
- pub fn guard_before_linear_memory(&mut self, guard: bool) -> &mut Self {
1540
- self.tunables.guard_before_linear_memory = Some(guard);
1541
- self
1542
- }
1543
-
1544
- /// Configure the version information used in serialized and deserialzied [`crate::Module`]s.
1545
- /// This effects the behavior of [`crate::Module::serialize()`], as well as
1546
- /// [`crate::Module::deserialize()`] and related functions.
1547
- ///
1548
- /// The default strategy is to use the wasmtime crate's Cargo package version.
1549
- pub fn module_version(&mut self, strategy: ModuleVersionStrategy) -> Result<&mut Self> {
1550
- match strategy {
1551
- // This case requires special precondition for assertion in SerializedModule::to_bytes
1552
- ModuleVersionStrategy::Custom(ref v) => {
1553
- if v.as_bytes().len() > 255 {
1554
- bail!("custom module version cannot be more than 255 bytes: {}", v);
1555
- }
1556
- }
1557
- _ => {}
1558
- }
1559
- self.module_version = strategy;
1560
- Ok(self)
1561
- }
1562
-
1563
- /// Configure wether wasmtime should compile a module using multiple
1564
- /// threads.
1565
- ///
1566
- /// Disabling this will result in a single thread being used to compile
1567
- /// the wasm bytecode.
1568
- ///
1569
- /// By default parallel compilation is enabled.
1570
- #[cfg(feature = "parallel-compilation")]
1571
- pub fn parallel_compilation(&mut self, parallel: bool) -> &mut Self {
1572
- self.parallel_compilation = parallel;
1573
- self
1574
- }
1575
-
1576
- /// Configures whether compiled artifacts will contain information to map
1577
- /// native program addresses back to the original wasm module.
1578
- ///
1579
- /// This configuration option is `true` by default and, if enabled,
1580
- /// generates the appropriate tables in compiled modules to map from native
1581
- /// address back to wasm source addresses. This is used for displaying wasm
1582
- /// program counters in backtraces as well as generating filenames/line
1583
- /// numbers if so configured as well (and the original wasm module has DWARF
1584
- /// debugging information present).
1585
- pub fn generate_address_map(&mut self, generate: bool) -> &mut Self {
1586
- self.tunables.generate_address_map = Some(generate);
1587
- self
1588
- }
1589
-
1590
- /// Configures whether copy-on-write memory-mapped data is used to
1591
- /// initialize a linear memory.
1592
- ///
1593
- /// Initializing linear memory via a copy-on-write mapping can drastically
1594
- /// improve instantiation costs of a WebAssembly module because copying
1595
- /// memory is deferred. Additionally if a page of memory is only ever read
1596
- /// from WebAssembly and never written too then the same underlying page of
1597
- /// data will be reused between all instantiations of a module meaning that
1598
- /// if a module is instantiated many times this can lower the overall memory
1599
- /// required needed to run that module.
1600
- ///
1601
- /// The main disadvantage of copy-on-write initialization, however, is that
1602
- /// it may be possible for highly-parallel scenarios to be less scalable. If
1603
- /// a page is read initially by a WebAssembly module then that page will be
1604
- /// mapped to a read-only copy shared between all WebAssembly instances. If
1605
- /// the same page is then written, however, then a private copy is created
1606
- /// and swapped out from the read-only version. This also requires an [IPI],
1607
- /// however, which can be a significant bottleneck in high-parallelism
1608
- /// situations.
1609
- ///
1610
- /// This feature is only applicable when a WebAssembly module meets specific
1611
- /// criteria to be initialized in this fashion, such as:
1612
- ///
1613
- /// * Only memories defined in the module can be initialized this way.
1614
- /// * Data segments for memory must use statically known offsets.
1615
- /// * Data segments for memory must all be in-bounds.
1616
- ///
1617
- /// Modules which do not meet these criteria will fall back to
1618
- /// initialization of linear memory based on copying memory.
1619
- ///
1620
- /// This feature of Wasmtime is also platform-specific:
1621
- ///
1622
- /// * Linux - this feature is supported for all instances of [`Module`].
1623
- /// Modules backed by an existing mmap (such as those created by
1624
- /// [`Module::deserialize_file`]) will reuse that mmap to cow-initialize
1625
- /// memory. Other instance of [`Module`] may use the `memfd_create`
1626
- /// syscall to create an initialization image to `mmap`.
1627
- /// * Unix (not Linux) - this feature is only supported when loading modules
1628
- /// from a precompiled file via [`Module::deserialize_file`] where there
1629
- /// is a file descriptor to use to map data into the process. Note that
1630
- /// the module must have been compiled with this setting enabled as well.
1631
- /// * Windows - there is no support for this feature at this time. Memory
1632
- /// initialization will always copy bytes.
1633
- ///
1634
- /// By default this option is enabled.
1635
- ///
1636
- /// [`Module::deserialize_file`]: crate::Module::deserialize_file
1637
- /// [`Module`]: crate::Module
1638
- /// [IPI]: https://en.wikipedia.org/wiki/Inter-processor_interrupt
1639
- pub fn memory_init_cow(&mut self, enable: bool) -> &mut Self {
1640
- self.memory_init_cow = enable;
1641
- self
1642
- }
1643
-
1644
- /// A configuration option to force the usage of `memfd_create` on Linux to
1645
- /// be used as the backing source for a module's initial memory image.
1646
- ///
1647
- /// When [`Config::memory_init_cow`] is enabled, which is enabled by
1648
- /// default, module memory initialization images are taken from a module's
1649
- /// original mmap if possible. If a precompiled module was loaded from disk
1650
- /// this means that the disk's file is used as an mmap source for the
1651
- /// initial linear memory contents. This option can be used to force, on
1652
- /// Linux, that instead of using the original file on disk a new in-memory
1653
- /// file is created with `memfd_create` to hold the contents of the initial
1654
- /// image.
1655
- ///
1656
- /// This option can be used to avoid possibly loading the contents of memory
1657
- /// from disk through a page fault. Instead with `memfd_create` the contents
1658
- /// of memory are always in RAM, meaning that even page faults which
1659
- /// initially populate a wasm linear memory will only work with RAM instead
1660
- /// of ever hitting the disk that the original precompiled module is stored
1661
- /// on.
1662
- ///
1663
- /// This option is disabled by default.
1664
- pub fn force_memory_init_memfd(&mut self, enable: bool) -> &mut Self {
1665
- self.force_memory_init_memfd = enable;
1666
- self
1667
- }
1668
-
1669
- /// Configures whether or not a coredump should be generated and attached to
1670
- /// the anyhow::Error when a trap is raised.
1671
- ///
1672
- /// This option is disabled by default.
1673
- #[cfg(feature = "coredump")]
1674
- pub fn coredump_on_trap(&mut self, enable: bool) -> &mut Self {
1675
- self.coredump_on_trap = enable;
1676
- self
1677
- }
1678
-
1679
- /// Enables memory error checking for wasm programs.
1680
- ///
1681
- /// This option is disabled by default.
1682
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1683
- pub fn wmemcheck(&mut self, enable: bool) -> &mut Self {
1684
- self.wmemcheck = enable;
1685
- self.compiler_config.wmemcheck = enable;
1686
- self
1687
- }
1688
-
1689
- /// Configures the "guaranteed dense image size" for copy-on-write
1690
- /// initialized memories.
1691
- ///
1692
- /// When using the [`Config::memory_init_cow`] feature to initialize memory
1693
- /// efficiently (which is enabled by default), compiled modules contain an
1694
- /// image of the module's initial heap. If the module has a fairly sparse
1695
- /// initial heap, with just a few data segments at very different offsets,
1696
- /// this could result in a large region of zero bytes in the image. In
1697
- /// other words, it's not very memory-efficient.
1698
- ///
1699
- /// We normally use a heuristic to avoid this: if less than half
1700
- /// of the initialized range (first non-zero to last non-zero
1701
- /// byte) of any memory in the module has pages with nonzero
1702
- /// bytes, then we avoid creating a memory image for the entire module.
1703
- ///
1704
- /// However, if the embedder always needs the instantiation-time efficiency
1705
- /// of copy-on-write initialization, and is otherwise carefully controlling
1706
- /// parameters of the modules (for example, by limiting the maximum heap
1707
- /// size of the modules), then it may be desirable to ensure a memory image
1708
- /// is created even if this could go against the heuristic above. Thus, we
1709
- /// add another condition: there is a size of initialized data region up to
1710
- /// which we *always* allow a memory image. The embedder can set this to a
1711
- /// known maximum heap size if they desire to always get the benefits of
1712
- /// copy-on-write images.
1713
- ///
1714
- /// In the future we may implement a "best of both worlds"
1715
- /// solution where we have a dense image up to some limit, and
1716
- /// then support a sparse list of initializers beyond that; this
1717
- /// would get most of the benefit of copy-on-write and pay the incremental
1718
- /// cost of eager initialization only for those bits of memory
1719
- /// that are out-of-bounds. However, for now, an embedder desiring
1720
- /// fast instantiation should ensure that this setting is as large
1721
- /// as the maximum module initial memory content size.
1722
- ///
1723
- /// By default this value is 16 MiB.
1724
- pub fn memory_guaranteed_dense_image_size(&mut self, size_in_bytes: u64) -> &mut Self {
1725
- self.memory_guaranteed_dense_image_size = size_in_bytes;
1726
- self
1727
- }
1728
-
1729
- pub(crate) fn conditionally_enable_defaults(&mut self) {
1730
- // If tail calls were not explicitly enabled/disabled (i.e. tail_callable is None), enable
1731
- // them if we are targeting a backend that supports them. Currently the Cranelift
1732
- // compilation strategy is the only one that supports tail calls, but not targeting s390x.
1733
- if self.tunables.tail_callable.is_none() {
1734
- #[cfg(feature = "cranelift")]
1735
- let default_tail_calls = self.compiler_config.strategy == Strategy::Cranelift
1736
- && self.compiler_config.target.as_ref().map_or_else(
1737
- || target_lexicon::Triple::host().architecture,
1738
- |triple| triple.architecture,
1739
- ) != Architecture::S390x;
1740
- #[cfg(not(feature = "cranelift"))]
1741
- let default_tail_calls = false;
1742
-
1743
- self.wasm_tail_call(default_tail_calls);
1744
- }
1745
- }
1746
-
1747
- pub(crate) fn validate(&self) -> Result<Tunables> {
1748
- if self.features.contains(WasmFeatures::REFERENCE_TYPES)
1749
- && !self.features.contains(WasmFeatures::BULK_MEMORY)
1750
- {
1751
- bail!("feature 'reference_types' requires 'bulk_memory' to be enabled");
1752
- }
1753
- if self.features.contains(WasmFeatures::THREADS)
1754
- && !self.features.contains(WasmFeatures::BULK_MEMORY)
1755
- {
1756
- bail!("feature 'threads' requires 'bulk_memory' to be enabled");
1757
- }
1758
- if self.features.contains(WasmFeatures::FUNCTION_REFERENCES)
1759
- && !self.features.contains(WasmFeatures::REFERENCE_TYPES)
1760
- {
1761
- bail!("feature 'function_references' requires 'reference_types' to be enabled");
1762
- }
1763
- if self.features.contains(WasmFeatures::GC)
1764
- && !self.features.contains(WasmFeatures::FUNCTION_REFERENCES)
1765
- {
1766
- bail!("feature 'gc' requires 'function_references' to be enabled");
1767
- }
1768
- #[cfg(feature = "async")]
1769
- if self.async_support && self.max_wasm_stack > self.async_stack_size {
1770
- bail!("max_wasm_stack size cannot exceed the async_stack_size");
1771
- }
1772
- if self.max_wasm_stack == 0 {
1773
- bail!("max_wasm_stack size cannot be zero");
1774
- }
1775
- #[cfg(not(feature = "wmemcheck"))]
1776
- if self.wmemcheck {
1777
- bail!("wmemcheck (memory checker) was requested but is not enabled in this build");
1778
- }
1779
-
1780
- #[cfg(not(any(feature = "cranelift", feature = "winch")))]
1781
- let mut tunables = Tunables::default_host();
1782
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1783
- let mut tunables = match &self.compiler_config.target.as_ref() {
1784
- Some(target) => Tunables::default_for_target(target)?,
1785
- None => Tunables::default_host(),
1786
- };
1787
-
1788
- macro_rules! set_fields {
1789
- ($($field:ident)*) => (
1790
- let ConfigTunables {
1791
- $($field,)*
1792
- } = &self.tunables;
1793
-
1794
- $(
1795
- if let Some(e) = $field {
1796
- tunables.$field = *e;
1797
- }
1798
- )*
1799
- )
1800
- }
1801
-
1802
- set_fields! {
1803
- static_memory_bound
1804
- static_memory_offset_guard_size
1805
- dynamic_memory_offset_guard_size
1806
- dynamic_memory_growth_reserve
1807
- generate_native_debuginfo
1808
- parse_wasm_debuginfo
1809
- consume_fuel
1810
- epoch_interruption
1811
- static_memory_bound_is_maximum
1812
- guard_before_linear_memory
1813
- generate_address_map
1814
- debug_adapter_modules
1815
- relaxed_simd_deterministic
1816
- tail_callable
1817
- cache_call_indirects
1818
- max_call_indirect_cache_slots
1819
- }
1820
-
1821
- // If we're going to compile with winch, we must use the winch calling convention.
1822
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1823
- {
1824
- tunables.winch_callable = match self.compiler_config.strategy {
1825
- Strategy::Auto => !cfg!(feature = "cranelift") && cfg!(feature = "winch"),
1826
- Strategy::Cranelift => false,
1827
- Strategy::Winch => true,
1828
- };
1829
-
1830
- if tunables.winch_callable && tunables.tail_callable {
1831
- bail!("Winch does not support the WebAssembly tail call proposal");
1832
- }
1833
- }
1834
-
1835
- if tunables.static_memory_offset_guard_size < tunables.dynamic_memory_offset_guard_size {
1836
- bail!("static memory guard size cannot be smaller than dynamic memory guard size");
1837
- }
1838
-
1839
- Ok(tunables)
1840
- }
1841
-
1842
- #[cfg(feature = "runtime")]
1843
- pub(crate) fn build_allocator(
1844
- &self,
1845
- tunables: &Tunables,
1846
- ) -> Result<Box<dyn InstanceAllocator + Send + Sync>> {
1847
- #[cfg(feature = "async")]
1848
- let stack_size = self.async_stack_size;
1849
-
1850
- #[cfg(not(feature = "async"))]
1851
- let stack_size = 0;
1852
-
1853
- let _ = tunables;
1854
-
1855
- match &self.allocation_strategy {
1856
- InstanceAllocationStrategy::OnDemand => {
1857
- #[allow(unused_mut)]
1858
- let mut allocator = Box::new(OnDemandInstanceAllocator::new(
1859
- self.mem_creator.clone(),
1860
- stack_size,
1861
- ));
1862
- #[cfg(feature = "async")]
1863
- if let Some(stack_creator) = &self.stack_creator {
1864
- allocator.set_stack_creator(stack_creator.clone());
1865
- }
1866
- Ok(allocator)
1867
- }
1868
- #[cfg(feature = "pooling-allocator")]
1869
- InstanceAllocationStrategy::Pooling(config) => {
1870
- let mut config = config.config;
1871
- config.stack_size = stack_size;
1872
- Ok(Box::new(crate::runtime::vm::PoolingInstanceAllocator::new(
1873
- &config, tunables,
1874
- )?))
1875
- }
1876
- }
1877
- }
1878
-
1879
- #[cfg(feature = "runtime")]
1880
- pub(crate) fn build_gc_runtime(&self) -> Result<Arc<dyn GcRuntime>> {
1881
- Ok(Arc::new(crate::runtime::vm::default_gc_runtime()) as Arc<dyn GcRuntime>)
1882
- }
1883
-
1884
- #[cfg(feature = "runtime")]
1885
- pub(crate) fn build_profiler(&self) -> Result<Box<dyn ProfilingAgent>> {
1886
- Ok(match self.profiling_strategy {
1887
- ProfilingStrategy::PerfMap => profiling_agent::new_perfmap()?,
1888
- ProfilingStrategy::JitDump => profiling_agent::new_jitdump()?,
1889
- ProfilingStrategy::VTune => profiling_agent::new_vtune()?,
1890
- ProfilingStrategy::None => profiling_agent::new_null(),
1891
- })
1892
- }
1893
-
1894
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1895
- pub(crate) fn build_compiler(
1896
- mut self,
1897
- tunables: &Tunables,
1898
- ) -> Result<(Self, Box<dyn wasmtime_environ::Compiler>)> {
1899
- let target = self.compiler_config.target.clone();
1900
-
1901
- let mut compiler = match self.compiler_config.strategy {
1902
- #[cfg(feature = "cranelift")]
1903
- Strategy::Auto => wasmtime_cranelift::builder(target)?,
1904
- #[cfg(all(feature = "winch", not(feature = "cranelift")))]
1905
- Strategy::Auto => wasmtime_winch::builder(target)?,
1906
- #[cfg(feature = "cranelift")]
1907
- Strategy::Cranelift => wasmtime_cranelift::builder(target)?,
1908
- #[cfg(not(feature = "cranelift"))]
1909
- Strategy::Cranelift => bail!("cranelift support not compiled in"),
1910
- #[cfg(feature = "winch")]
1911
- Strategy::Winch => wasmtime_winch::builder(target)?,
1912
- #[cfg(not(feature = "winch"))]
1913
- Strategy::Winch => bail!("winch support not compiled in"),
1914
- };
1915
-
1916
- if let Some(path) = &self.compiler_config.clif_dir {
1917
- compiler.clif_dir(path)?;
1918
- }
1919
-
1920
- // If probestack is enabled for a target, Wasmtime will always use the
1921
- // inline strategy which doesn't require us to define a `__probestack`
1922
- // function or similar.
1923
- self.compiler_config
1924
- .settings
1925
- .insert("probestack_strategy".into(), "inline".into());
1926
-
1927
- let host = target_lexicon::Triple::host();
1928
- let target = self
1929
- .compiler_config
1930
- .target
1931
- .as_ref()
1932
- .unwrap_or(&host)
1933
- .clone();
1934
-
1935
- // On supported targets, we enable stack probing by default.
1936
- // This is required on Windows because of the way Windows
1937
- // commits its stacks, but it's also a good idea on other
1938
- // platforms to ensure guard pages are hit for large frame
1939
- // sizes.
1940
- if probestack_supported(target.architecture) {
1941
- self.compiler_config
1942
- .flags
1943
- .insert("enable_probestack".into());
1944
- }
1945
-
1946
- if self.features.contains(WasmFeatures::TAIL_CALL) {
1947
- ensure!(
1948
- target.architecture != Architecture::S390x,
1949
- "Tail calls are not supported on s390x yet: \
1950
- https://github.com/bytecodealliance/wasmtime/issues/6530"
1951
- );
1952
- }
1953
-
1954
- if let Some(unwind_requested) = self.native_unwind_info {
1955
- if !self
1956
- .compiler_config
1957
- .ensure_setting_unset_or_given("unwind_info", &unwind_requested.to_string())
1958
- {
1959
- bail!("incompatible settings requested for Cranelift and Wasmtime `unwind-info` settings");
1960
- }
1961
- }
1962
-
1963
- if target.operating_system == target_lexicon::OperatingSystem::Windows {
1964
- if !self
1965
- .compiler_config
1966
- .ensure_setting_unset_or_given("unwind_info", "true")
1967
- {
1968
- bail!("`native_unwind_info` cannot be disabled on Windows");
1969
- }
1970
- }
1971
-
1972
- // We require frame pointers for correct stack walking, which is safety
1973
- // critical in the presence of reference types, and otherwise it is just
1974
- // really bad developer experience to get wrong.
1975
- self.compiler_config
1976
- .settings
1977
- .insert("preserve_frame_pointers".into(), "true".into());
1978
-
1979
- // check for incompatible compiler options and set required values
1980
- if self.features.contains(WasmFeatures::REFERENCE_TYPES) {
1981
- if !self
1982
- .compiler_config
1983
- .ensure_setting_unset_or_given("enable_safepoints", "true")
1984
- {
1985
- bail!("compiler option 'enable_safepoints' must be enabled when 'reference types' is enabled");
1986
- }
1987
- }
1988
-
1989
- if self.features.contains(WasmFeatures::RELAXED_SIMD)
1990
- && !self.features.contains(WasmFeatures::SIMD)
1991
- {
1992
- bail!("cannot disable the simd proposal but enable the relaxed simd proposal");
1993
- }
1994
-
1995
- // Apply compiler settings and flags
1996
- for (k, v) in self.compiler_config.settings.iter() {
1997
- compiler.set(k, v)?;
1998
- }
1999
- for flag in self.compiler_config.flags.iter() {
2000
- compiler.enable(flag)?;
2001
- }
2002
-
2003
- #[cfg(feature = "incremental-cache")]
2004
- if let Some(cache_store) = &self.compiler_config.cache_store {
2005
- compiler.enable_incremental_compilation(cache_store.clone())?;
2006
- }
2007
-
2008
- compiler.set_tunables(tunables.clone())?;
2009
- compiler.wmemcheck(self.compiler_config.wmemcheck);
2010
-
2011
- Ok((self, compiler.build()?))
2012
- }
2013
-
2014
- /// Internal setting for whether adapter modules for components will have
2015
- /// extra WebAssembly instructions inserted performing more debug checks
2016
- /// then are necessary.
2017
- #[cfg(feature = "component-model")]
2018
- pub fn debug_adapter_modules(&mut self, debug: bool) -> &mut Self {
2019
- self.tunables.debug_adapter_modules = Some(debug);
2020
- self
2021
- }
2022
-
2023
- /// Enables clif output when compiling a WebAssembly module.
2024
- #[cfg(any(feature = "cranelift", feature = "winch"))]
2025
- pub fn emit_clif(&mut self, path: &Path) -> &mut Self {
2026
- self.compiler_config.clif_dir = Some(path.to_path_buf());
2027
- self
2028
- }
2029
-
2030
- /// Configures whether, when on macOS, Mach ports are used for exception
2031
- /// handling instead of traditional Unix-based signal handling.
2032
- ///
2033
- /// WebAssembly traps in Wasmtime are implemented with native faults, for
2034
- /// example a `SIGSEGV` will occur when a WebAssembly guest accesses
2035
- /// out-of-bounds memory. Handling this can be configured to either use Unix
2036
- /// signals or Mach ports on macOS. By default Mach ports are used.
2037
- ///
2038
- /// Mach ports enable Wasmtime to work by default with foreign
2039
- /// error-handling systems such as breakpad which also use Mach ports to
2040
- /// handle signals. In this situation Wasmtime will continue to handle guest
2041
- /// faults gracefully while any non-guest faults will get forwarded to
2042
- /// process-level handlers such as breakpad. Some more background on this
2043
- /// can be found in #2456.
2044
- ///
2045
- /// A downside of using mach ports, however, is that they don't interact
2046
- /// well with `fork()`. Forking a Wasmtime process on macOS will produce a
2047
- /// child process that cannot successfully run WebAssembly. In this
2048
- /// situation traditional Unix signal handling should be used as that's
2049
- /// inherited and works across forks.
2050
- ///
2051
- /// If your embedding wants to use a custom error handler which leverages
2052
- /// Mach ports and you additionally wish to `fork()` the process and use
2053
- /// Wasmtime in the child process that's not currently possible. Please
2054
- /// reach out to us if you're in this bucket!
2055
- ///
2056
- /// This option defaults to `true`, using Mach ports by default.
2057
- pub fn macos_use_mach_ports(&mut self, mach_ports: bool) -> &mut Self {
2058
- self.macos_use_mach_ports = mach_ports;
2059
- self
2060
- }
2061
-
2062
- /// Configures an embedder-provided function, `detect`, which is used to
2063
- /// determine if an ISA-specific feature is available on the current host.
2064
- ///
2065
- /// This function is used to verify that any features enabled for a compiler
2066
- /// backend, such as AVX support on x86\_64, are also available on the host.
2067
- /// It is undefined behavior to execute an AVX instruction on a host that
2068
- /// doesn't support AVX instructions, for example.
2069
- ///
2070
- /// When the `std` feature is active on this crate then this function is
2071
- /// configured to a default implementation that uses the standard library's
2072
- /// feature detection. When the `std` feature is disabled then there is no
2073
- /// default available and this method must be called to configure a feature
2074
- /// probing function.
2075
- ///
2076
- /// The `detect` function provided is given a string name of an ISA feature.
2077
- /// The function should then return:
2078
- ///
2079
- /// * `Some(true)` - indicates that the feature was found on the host and it
2080
- /// is supported.
2081
- /// * `Some(false)` - the feature name was recognized but it was not
2082
- /// detected on the host, for example the CPU is too old.
2083
- /// * `None` - the feature name was not recognized and it's not known
2084
- /// whether it's on the host or not.
2085
- ///
2086
- /// Feature names passed to `detect` match the same feature name used in the
2087
- /// Rust standard library. For example `"sse4.2"` is used on x86\_64.
2088
- ///
2089
- /// # Unsafety
2090
- ///
2091
- /// This function is `unsafe` because it is undefined behavior to execute
2092
- /// instructions that a host does not support. This means that the result of
2093
- /// `detect` must be correct for memory safe execution at runtime.
2094
- pub unsafe fn detect_host_feature(&mut self, detect: fn(&str) -> Option<bool>) -> &mut Self {
2095
- self.detect_host_feature = Some(detect);
2096
- self
2097
- }
2098
- }
2099
-
2100
- /// If building without the runtime feature we can't determine the page size of
2101
- /// the platform where the execution will happen so just keep the original
2102
- /// values.
2103
- #[cfg(not(feature = "runtime"))]
2104
- fn round_up_to_pages(val: u64) -> u64 {
2105
- val
2106
- }
2107
-
2108
- #[cfg(feature = "runtime")]
2109
- fn round_up_to_pages(val: u64) -> u64 {
2110
- let page_size = crate::runtime::vm::page_size() as u64;
2111
- debug_assert!(page_size.is_power_of_two());
2112
- val.checked_add(page_size - 1)
2113
- .map(|val| val & !(page_size - 1))
2114
- .unwrap_or(u64::MAX / page_size + 1)
2115
- }
2116
-
2117
- impl Default for Config {
2118
- fn default() -> Config {
2119
- Config::new()
2120
- }
2121
- }
2122
-
2123
- impl fmt::Debug for Config {
2124
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
2125
- let mut f = f.debug_struct("Config");
2126
- f.field("debug_info", &self.tunables.generate_native_debuginfo)
2127
- .field(
2128
- "wasm_threads",
2129
- &self.features.contains(WasmFeatures::THREADS),
2130
- )
2131
- .field(
2132
- "wasm_reference_types",
2133
- &self.features.contains(WasmFeatures::REFERENCE_TYPES),
2134
- )
2135
- .field(
2136
- "wasm_function_references",
2137
- &self.features.contains(WasmFeatures::FUNCTION_REFERENCES),
2138
- )
2139
- .field("wasm_gc", &self.features.contains(WasmFeatures::GC))
2140
- .field(
2141
- "wasm_bulk_memory",
2142
- &self.features.contains(WasmFeatures::BULK_MEMORY),
2143
- )
2144
- .field("wasm_simd", &self.features.contains(WasmFeatures::SIMD))
2145
- .field(
2146
- "wasm_relaxed_simd",
2147
- &self.features.contains(WasmFeatures::RELAXED_SIMD),
2148
- )
2149
- .field(
2150
- "wasm_multi_value",
2151
- &self.features.contains(WasmFeatures::MULTI_VALUE),
2152
- )
2153
- .field("parallel_compilation", &self.parallel_compilation);
2154
- #[cfg(any(feature = "cranelift", feature = "winch"))]
2155
- {
2156
- f.field("compiler_config", &self.compiler_config);
2157
- }
2158
-
2159
- if let Some(enable) = self.tunables.parse_wasm_debuginfo {
2160
- f.field("parse_wasm_debuginfo", &enable);
2161
- }
2162
- if let Some(size) = self.tunables.static_memory_bound {
2163
- f.field(
2164
- "static_memory_maximum_size",
2165
- &(u64::from(size) * u64::from(wasmtime_environ::WASM_PAGE_SIZE)),
2166
- );
2167
- }
2168
- if let Some(size) = self.tunables.static_memory_offset_guard_size {
2169
- f.field("static_memory_guard_size", &size);
2170
- }
2171
- if let Some(size) = self.tunables.dynamic_memory_offset_guard_size {
2172
- f.field("dynamic_memory_guard_size", &size);
2173
- }
2174
- if let Some(enable) = self.tunables.guard_before_linear_memory {
2175
- f.field("guard_before_linear_memory", &enable);
2176
- }
2177
- f.finish()
2178
- }
2179
- }
2180
-
2181
- /// Possible Compilation strategies for a wasm module.
2182
- ///
2183
- /// This is used as an argument to the [`Config::strategy`] method.
2184
- #[non_exhaustive]
2185
- #[derive(PartialEq, Eq, Clone, Debug, Copy)]
2186
- pub enum Strategy {
2187
- /// An indicator that the compilation strategy should be automatically
2188
- /// selected.
2189
- ///
2190
- /// This is generally what you want for most projects and indicates that the
2191
- /// `wasmtime` crate itself should make the decision about what the best
2192
- /// code generator for a wasm module is.
2193
- ///
2194
- /// Currently this always defaults to Cranelift, but the default value may
2195
- /// change over time.
2196
- Auto,
2197
-
2198
- /// Currently the default backend, Cranelift aims to be a reasonably fast
2199
- /// code generator which generates high quality machine code.
2200
- Cranelift,
2201
-
2202
- /// A baseline compiler for WebAssembly, currently under active development and not ready for
2203
- /// production applications.
2204
- Winch,
2205
- }
2206
-
2207
- /// Possible optimization levels for the Cranelift codegen backend.
2208
- #[non_exhaustive]
2209
- #[derive(Copy, Clone, Debug, Serialize, Deserialize, Eq, PartialEq)]
2210
- pub enum OptLevel {
2211
- /// No optimizations performed, minimizes compilation time by disabling most
2212
- /// optimizations.
2213
- None,
2214
- /// Generates the fastest possible code, but may take longer.
2215
- Speed,
2216
- /// Similar to `speed`, but also performs transformations aimed at reducing
2217
- /// code size.
2218
- SpeedAndSize,
2219
- }
2220
-
2221
- /// Select which profiling technique to support.
2222
- #[derive(Debug, Clone, Copy, PartialEq)]
2223
- pub enum ProfilingStrategy {
2224
- /// No profiler support.
2225
- None,
2226
-
2227
- /// Collect function name information as the "perf map" file format, used with `perf` on Linux.
2228
- PerfMap,
2229
-
2230
- /// Collect profiling info for "jitdump" file format, used with `perf` on
2231
- /// Linux.
2232
- JitDump,
2233
-
2234
- /// Collect profiling info using the "ittapi", used with `VTune` on Linux.
2235
- VTune,
2236
- }
2237
-
2238
- /// Select how wasm backtrace detailed information is handled.
2239
- #[derive(Debug, Clone, Copy)]
2240
- pub enum WasmBacktraceDetails {
2241
- /// Support is unconditionally enabled and wasmtime will parse and read
2242
- /// debug information.
2243
- Enable,
2244
-
2245
- /// Support is disabled, and wasmtime will not parse debug information for
2246
- /// backtrace details.
2247
- Disable,
2248
-
2249
- /// Support for backtrace details is conditional on the
2250
- /// `WASMTIME_BACKTRACE_DETAILS` environment variable.
2251
- Environment,
2252
- }
2253
-
2254
- /// Configuration options used with [`InstanceAllocationStrategy::Pooling`] to
2255
- /// change the behavior of the pooling instance allocator.
2256
- ///
2257
- /// This structure has a builder-style API in the same manner as [`Config`] and
2258
- /// is configured with [`Config::allocation_strategy`].
2259
- ///
2260
- /// Note that usage of the pooling allocator does not affect compiled
2261
- /// WebAssembly code. Compiled `*.cwasm` files, for example, are usable both
2262
- /// with and without the pooling allocator.
2263
- ///
2264
- /// ## Advantages of Pooled Allocation
2265
- ///
2266
- /// The main benefit of the pooling allocator is to make WebAssembly
2267
- /// instantiation both faster and more scalable in terms of parallelism.
2268
- /// Allocation is faster because virtual memory is already configured and ready
2269
- /// to go within the pool, there's no need to [`mmap`] (for example on Unix) a
2270
- /// new region and configure it with guard pages. By avoiding [`mmap`] this
2271
- /// avoids whole-process virtual memory locks which can improve scalability and
2272
- /// performance through avoiding this.
2273
- ///
2274
- /// Additionally with pooled allocation it's possible to create "affine slots"
2275
- /// to a particular WebAssembly module or component over time. For example if
2276
- /// the same module is multiple times over time the pooling allocator will, by
2277
- /// default, attempt to reuse the same slot. This mean that the slot has been
2278
- /// pre-configured and can retain virtual memory mappings for a copy-on-write
2279
- /// image, for example (see [`Config::memory_init_cow`] for more information.
2280
- /// This means that in a steady state instance deallocation is a single
2281
- /// [`madvise`] to reset linear memory to its original contents followed by a
2282
- /// single (optional) [`mprotect`] during the next instantiation to shrink
2283
- /// memory back to its original size. Compared to non-pooled allocation this
2284
- /// avoids the need to [`mmap`] a new region of memory, [`munmap`] it, and
2285
- /// [`mprotect`] regions too.
2286
- ///
2287
- /// Another benefit of pooled allocation is that it's possible to configure
2288
- /// things such that no virtual memory management is required at all in a steady
2289
- /// state. For example a pooling allocator can be configured with
2290
- /// [`Config::memory_init_cow`] disabledd, dynamic bounds checks enabled
2291
- /// through
2292
- /// [`Config::static_memory_maximum_size(0)`](Config::static_memory_maximum_size),
2293
- /// and sufficient space through
2294
- /// [`PoolingAllocationConfig::table_keep_resident`] /
2295
- /// [`PoolingAllocationConfig::linear_memory_keep_resident`]. With all these
2296
- /// options in place no virtual memory tricks are used at all and everything is
2297
- /// manually managed by Wasmtime (for example resetting memory is a
2298
- /// `memset(0)`). This is not as fast in a single-threaded scenario but can
2299
- /// provide benefits in high-parallelism situations as no virtual memory locks
2300
- /// or IPIs need happen.
2301
- ///
2302
- /// ## Disadvantages of Pooled Allocation
2303
- ///
2304
- /// Despite the above advantages to instantiation performance the pooling
2305
- /// allocator is not enabled by default in Wasmtime. One reason is that the
2306
- /// performance advantages are not necessarily portable, for example while the
2307
- /// pooling allocator works on Windows it has not been tuned for performance on
2308
- /// Windows in the same way it has on Linux.
2309
- ///
2310
- /// Additionally the main cost of the pooling allocator is that it requires a
2311
- /// very large reservation of virtual memory (on the order of most of the
2312
- /// addressable virtual address space). WebAssembly 32-bit linear memories in
2313
- /// Wasmtime are, by default 4G address space reservations with a 2G guard
2314
- /// region both before and after the linear memory. Memories in the pooling
2315
- /// allocator are contiguous which means that we only need a guard after linear
2316
- /// memory because the previous linear memory's slot post-guard is our own
2317
- /// pre-guard. This means that, by default, the pooling allocator uses 6G of
2318
- /// virtual memory per WebAssembly linear memory slot. 6G of virtual memory is
2319
- /// 32.5 bits of a 64-bit address. Many 64-bit systems can only actually use
2320
- /// 48-bit addresses by default (although this can be extended on architectures
2321
- /// nowadays too), and of those 48 bits one of them is reserved to indicate
2322
- /// kernel-vs-userspace. This leaves 47-32.5=14.5 bits left, meaning you can
2323
- /// only have at most 64k slots of linear memories on many systems by default.
2324
- /// This is a relatively small number and shows how the pooling allocator can
2325
- /// quickly exhaust all of virtual memory.
2326
- ///
2327
- /// Another disadvantage of the pooling allocator is that it may keep memory
2328
- /// alive when nothing is using it. A previously used slot for an instance might
2329
- /// have paged-in memory that will not get paged out until the
2330
- /// [`Engine`](crate::Engine) owning the pooling allocator is dropped. While
2331
- /// suitable for some applications this behavior may not be suitable for all
2332
- /// applications.
2333
- ///
2334
- /// Finally the last disadvantage of the pooling allocator is that the
2335
- /// configuration values for the maximum number of instances, memories, tables,
2336
- /// etc, must all be fixed up-front. There's not always a clear answer as to
2337
- /// what these values should be so not all applications may be able to work
2338
- /// with this constraint.
2339
- ///
2340
- /// [`madvise`]: https://man7.org/linux/man-pages/man2/madvise.2.html
2341
- /// [`mprotect`]: https://man7.org/linux/man-pages/man2/mprotect.2.html
2342
- /// [`mmap`]: https://man7.org/linux/man-pages/man2/mmap.2.html
2343
- /// [`munmap`]: https://man7.org/linux/man-pages/man2/munmap.2.html
2344
- #[cfg(feature = "pooling-allocator")]
2345
- #[derive(Debug, Clone, Default)]
2346
- pub struct PoolingAllocationConfig {
2347
- config: crate::runtime::vm::PoolingInstanceAllocatorConfig,
2348
- }
2349
-
2350
- #[cfg(feature = "pooling-allocator")]
2351
- impl PoolingAllocationConfig {
2352
- /// Configures the maximum number of "unused warm slots" to retain in the
2353
- /// pooling allocator.
2354
- ///
2355
- /// The pooling allocator operates over slots to allocate from, and each
2356
- /// slot is considered "cold" if it's never been used before or "warm" if
2357
- /// it's been used by some module in the past. Slots in the pooling
2358
- /// allocator additionally track an "affinity" flag to a particular core
2359
- /// wasm module. When a module is instantiated into a slot then the slot is
2360
- /// considered affine to that module, even after the instance has been
2361
- /// deallocated.
2362
- ///
2363
- /// When a new instance is created then a slot must be chosen, and the
2364
- /// current algorithm for selecting a slot is:
2365
- ///
2366
- /// * If there are slots that are affine to the module being instantiated,
2367
- /// then the most recently used slot is selected to be allocated from.
2368
- /// This is done to improve reuse of resources such as memory mappings and
2369
- /// additionally try to benefit from temporal locality for things like
2370
- /// caches.
2371
- ///
2372
- /// * Otherwise if there are more than N affine slots to other modules, then
2373
- /// one of those affine slots is chosen to be allocated. The slot chosen
2374
- /// is picked on a least-recently-used basis.
2375
- ///
2376
- /// * Finally, if there are less than N affine slots to other modules, then
2377
- /// the non-affine slots are allocated from.
2378
- ///
2379
- /// This setting, `max_unused_warm_slots`, is the value for N in the above
2380
- /// algorithm. The purpose of this setting is to have a knob over the RSS
2381
- /// impact of "unused slots" for a long-running wasm server.
2382
- ///
2383
- /// If this setting is set to 0, for example, then affine slots are
2384
- /// aggressively reused on a least-recently-used basis. A "cold" slot is
2385
- /// only used if there are no affine slots available to allocate from. This
2386
- /// means that the set of slots used over the lifetime of a program is the
2387
- /// same as the maximum concurrent number of wasm instances.
2388
- ///
2389
- /// If this setting is set to infinity, however, then cold slots are
2390
- /// prioritized to be allocated from. This means that the set of slots used
2391
- /// over the lifetime of a program will approach
2392
- /// [`PoolingAllocationConfig::total_memories`], or the maximum number of
2393
- /// slots in the pooling allocator.
2394
- ///
2395
- /// Wasmtime does not aggressively decommit all resources associated with a
2396
- /// slot when the slot is not in use. For example the
2397
- /// [`PoolingAllocationConfig::linear_memory_keep_resident`] option can be
2398
- /// used to keep memory associated with a slot, even when it's not in use.
2399
- /// This means that the total set of used slots in the pooling instance
2400
- /// allocator can impact the overall RSS usage of a program.
2401
- ///
2402
- /// The default value for this option is `100`.
2403
- pub fn max_unused_warm_slots(&mut self, max: u32) -> &mut Self {
2404
- self.config.max_unused_warm_slots = max;
2405
- self
2406
- }
2407
-
2408
- /// Configures whether or not stacks used for async futures are reset to
2409
- /// zero after usage.
2410
- ///
2411
- /// When the [`async_support`](Config::async_support) method is enabled for
2412
- /// Wasmtime and the [`call_async`] variant
2413
- /// of calling WebAssembly is used then Wasmtime will create a separate
2414
- /// runtime execution stack for each future produced by [`call_async`].
2415
- /// During the deallocation process Wasmtime won't by default reset the
2416
- /// contents of the stack back to zero.
2417
- ///
2418
- /// When this option is enabled it can be seen as a defense-in-depth
2419
- /// mechanism to reset a stack back to zero. This is not required for
2420
- /// correctness and can be a costly operation in highly concurrent
2421
- /// environments due to modifications of the virtual address space requiring
2422
- /// process-wide synchronization.
2423
- ///
2424
- /// This option defaults to `false`.
2425
- ///
2426
- /// [`call_async`]: crate::TypedFunc::call_async
2427
- #[cfg(feature = "async")]
2428
- pub fn async_stack_zeroing(&mut self, enable: bool) -> &mut Self {
2429
- self.config.async_stack_zeroing = enable;
2430
- self
2431
- }
2432
-
2433
- /// How much memory, in bytes, to keep resident for async stacks allocated
2434
- /// with the pooling allocator.
2435
- ///
2436
- /// When [`PoolingAllocationConfig::async_stack_zeroing`] is enabled then
2437
- /// Wasmtime will reset the contents of async stacks back to zero upon
2438
- /// deallocation. This option can be used to perform the zeroing operation
2439
- /// with `memset` up to a certain threshold of bytes instead of using system
2440
- /// calls to reset the stack to zero.
2441
- ///
2442
- /// Note that when using this option the memory with async stacks will
2443
- /// never be decommitted.
2444
- #[cfg(feature = "async")]
2445
- pub fn async_stack_keep_resident(&mut self, size: usize) -> &mut Self {
2446
- let size = round_up_to_pages(size as u64) as usize;
2447
- self.config.async_stack_keep_resident = size;
2448
- self
2449
- }
2450
-
2451
- /// How much memory, in bytes, to keep resident for each linear memory
2452
- /// after deallocation.
2453
- ///
2454
- /// This option is only applicable on Linux and has no effect on other
2455
- /// platforms.
2456
- ///
2457
- /// By default Wasmtime will use `madvise` to reset the entire contents of
2458
- /// linear memory back to zero when a linear memory is deallocated. This
2459
- /// option can be used to use `memset` instead to set memory back to zero
2460
- /// which can, in some configurations, reduce the number of page faults
2461
- /// taken when a slot is reused.
2462
- pub fn linear_memory_keep_resident(&mut self, size: usize) -> &mut Self {
2463
- let size = round_up_to_pages(size as u64) as usize;
2464
- self.config.linear_memory_keep_resident = size;
2465
- self
2466
- }
2467
-
2468
- /// How much memory, in bytes, to keep resident for each table after
2469
- /// deallocation.
2470
- ///
2471
- /// This option is only applicable on Linux and has no effect on other
2472
- /// platforms.
2473
- ///
2474
- /// This option is the same as
2475
- /// [`PoolingAllocationConfig::linear_memory_keep_resident`] except that it
2476
- /// is applicable to tables instead.
2477
- pub fn table_keep_resident(&mut self, size: usize) -> &mut Self {
2478
- let size = round_up_to_pages(size as u64) as usize;
2479
- self.config.table_keep_resident = size;
2480
- self
2481
- }
2482
-
2483
- /// The maximum number of concurrent component instances supported (default
2484
- /// is `1000`).
2485
- ///
2486
- /// This provides an upper-bound on the total size of component
2487
- /// metadata-related allocations, along with
2488
- /// [`PoolingAllocationConfig::max_component_instance_size`]. The upper bound is
2489
- ///
2490
- /// ```text
2491
- /// total_component_instances * max_component_instance_size
2492
- /// ```
2493
- ///
2494
- /// where `max_component_instance_size` is rounded up to the size and alignment
2495
- /// of the internal representation of the metadata.
2496
- pub fn total_component_instances(&mut self, count: u32) -> &mut Self {
2497
- self.config.limits.total_component_instances = count;
2498
- self
2499
- }
2500
-
2501
- /// The maximum size, in bytes, allocated for a component instance's
2502
- /// `VMComponentContext` metadata.
2503
- ///
2504
- /// The [`wasmtime::component::Instance`][crate::component::Instance] type
2505
- /// has a static size but its internal `VMComponentContext` is dynamically
2506
- /// sized depending on the component being instantiated. This size limit
2507
- /// loosely correlates to the size of the component, taking into account
2508
- /// factors such as:
2509
- ///
2510
- /// * number of lifted and lowered functions,
2511
- /// * number of memories
2512
- /// * number of inner instances
2513
- /// * number of resources
2514
- ///
2515
- /// If the allocated size per instance is too small then instantiation of a
2516
- /// module will fail at runtime with an error indicating how many bytes were
2517
- /// needed.
2518
- ///
2519
- /// The default value for this is 1MiB.
2520
- ///
2521
- /// This provides an upper-bound on the total size of component
2522
- /// metadata-related allocations, along with
2523
- /// [`PoolingAllocationConfig::total_component_instances`]. The upper bound is
2524
- ///
2525
- /// ```text
2526
- /// total_component_instances * max_component_instance_size
2527
- /// ```
2528
- ///
2529
- /// where `max_component_instance_size` is rounded up to the size and alignment
2530
- /// of the internal representation of the metadata.
2531
- pub fn max_component_instance_size(&mut self, size: usize) -> &mut Self {
2532
- self.config.limits.component_instance_size = size;
2533
- self
2534
- }
2535
-
2536
- /// The maximum number of core instances a single component may contain
2537
- /// (default is `20`).
2538
- ///
2539
- /// This method (along with
2540
- /// [`PoolingAllocationConfig::max_memories_per_component`],
2541
- /// [`PoolingAllocationConfig::max_tables_per_component`], and
2542
- /// [`PoolingAllocationConfig::max_component_instance_size`]) allows you to cap
2543
- /// the amount of resources a single component allocation consumes.
2544
- ///
2545
- /// If a component will instantiate more core instances than `count`, then
2546
- /// the component will fail to instantiate.
2547
- pub fn max_core_instances_per_component(&mut self, count: u32) -> &mut Self {
2548
- self.config.limits.max_core_instances_per_component = count;
2549
- self
2550
- }
2551
-
2552
- /// The maximum number of Wasm linear memories that a single component may
2553
- /// transitively contain (default is `20`).
2554
- ///
2555
- /// This method (along with
2556
- /// [`PoolingAllocationConfig::max_core_instances_per_component`],
2557
- /// [`PoolingAllocationConfig::max_tables_per_component`], and
2558
- /// [`PoolingAllocationConfig::max_component_instance_size`]) allows you to cap
2559
- /// the amount of resources a single component allocation consumes.
2560
- ///
2561
- /// If a component transitively contains more linear memories than `count`,
2562
- /// then the component will fail to instantiate.
2563
- pub fn max_memories_per_component(&mut self, count: u32) -> &mut Self {
2564
- self.config.limits.max_memories_per_component = count;
2565
- self
2566
- }
2567
-
2568
- /// The maximum number of tables that a single component may transitively
2569
- /// contain (default is `20`).
2570
- ///
2571
- /// This method (along with
2572
- /// [`PoolingAllocationConfig::max_core_instances_per_component`],
2573
- /// [`PoolingAllocationConfig::max_memories_per_component`],
2574
- /// [`PoolingAllocationConfig::max_component_instance_size`]) allows you to cap
2575
- /// the amount of resources a single component allocation consumes.
2576
- ///
2577
- /// If a component will transitively contains more tables than `count`, then
2578
- /// the component will fail to instantiate.
2579
- pub fn max_tables_per_component(&mut self, count: u32) -> &mut Self {
2580
- self.config.limits.max_tables_per_component = count;
2581
- self
2582
- }
2583
-
2584
- /// The maximum number of concurrent Wasm linear memories supported (default
2585
- /// is `1000`).
2586
- ///
2587
- /// This value has a direct impact on the amount of memory allocated by the pooling
2588
- /// instance allocator.
2589
- ///
2590
- /// The pooling instance allocator allocates a memory pool, where each entry
2591
- /// in the pool contains the reserved address space for each linear memory
2592
- /// supported by an instance.
2593
- ///
2594
- /// The memory pool will reserve a large quantity of host process address
2595
- /// space to elide the bounds checks required for correct WebAssembly memory
2596
- /// semantics. Even with 64-bit address spaces, the address space is limited
2597
- /// when dealing with a large number of linear memories.
2598
- ///
2599
- /// For example, on Linux x86_64, the userland address space limit is 128
2600
- /// TiB. That might seem like a lot, but each linear memory will *reserve* 6
2601
- /// GiB of space by default.
2602
- pub fn total_memories(&mut self, count: u32) -> &mut Self {
2603
- self.config.limits.total_memories = count;
2604
- self
2605
- }
2606
-
2607
- /// The maximum number of concurrent tables supported (default is `1000`).
2608
- ///
2609
- /// This value has a direct impact on the amount of memory allocated by the
2610
- /// pooling instance allocator.
2611
- ///
2612
- /// The pooling instance allocator allocates a table pool, where each entry
2613
- /// in the pool contains the space needed for each WebAssembly table
2614
- /// supported by an instance (see `table_elements` to control the size of
2615
- /// each table).
2616
- pub fn total_tables(&mut self, count: u32) -> &mut Self {
2617
- self.config.limits.total_tables = count;
2618
- self
2619
- }
2620
-
2621
- /// The maximum number of execution stacks allowed for asynchronous
2622
- /// execution, when enabled (default is `1000`).
2623
- ///
2624
- /// This value has a direct impact on the amount of memory allocated by the
2625
- /// pooling instance allocator.
2626
- #[cfg(feature = "async")]
2627
- pub fn total_stacks(&mut self, count: u32) -> &mut Self {
2628
- self.config.limits.total_stacks = count;
2629
- self
2630
- }
2631
-
2632
- /// The maximum number of concurrent core instances supported (default is
2633
- /// `1000`).
2634
- ///
2635
- /// This provides an upper-bound on the total size of core instance
2636
- /// metadata-related allocations, along with
2637
- /// [`PoolingAllocationConfig::max_core_instance_size`]. The upper bound is
2638
- ///
2639
- /// ```text
2640
- /// total_core_instances * max_core_instance_size
2641
- /// ```
2642
- ///
2643
- /// where `max_core_instance_size` is rounded up to the size and alignment of
2644
- /// the internal representation of the metadata.
2645
- pub fn total_core_instances(&mut self, count: u32) -> &mut Self {
2646
- self.config.limits.total_core_instances = count;
2647
- self
2648
- }
2649
-
2650
- /// The maximum size, in bytes, allocated for a core instance's `VMContext`
2651
- /// metadata.
2652
- ///
2653
- /// The [`Instance`][crate::Instance] type has a static size but its
2654
- /// `VMContext` metadata is dynamically sized depending on the module being
2655
- /// instantiated. This size limit loosely correlates to the size of the Wasm
2656
- /// module, taking into account factors such as:
2657
- ///
2658
- /// * number of functions
2659
- /// * number of globals
2660
- /// * number of memories
2661
- /// * number of tables
2662
- /// * number of function types
2663
- ///
2664
- /// If the allocated size per instance is too small then instantiation of a
2665
- /// module will fail at runtime with an error indicating how many bytes were
2666
- /// needed.
2667
- ///
2668
- /// The default value for this is 1MiB.
2669
- ///
2670
- /// This provides an upper-bound on the total size of core instance
2671
- /// metadata-related allocations, along with
2672
- /// [`PoolingAllocationConfig::total_core_instances`]. The upper bound is
2673
- ///
2674
- /// ```text
2675
- /// total_core_instances * max_core_instance_size
2676
- /// ```
2677
- ///
2678
- /// where `max_core_instance_size` is rounded up to the size and alignment of
2679
- /// the internal representation of the metadata.
2680
- pub fn max_core_instance_size(&mut self, size: usize) -> &mut Self {
2681
- self.config.limits.core_instance_size = size;
2682
- self
2683
- }
2684
-
2685
- /// The maximum number of defined tables for a core module (default is `1`).
2686
- ///
2687
- /// This value controls the capacity of the `VMTableDefinition` table in
2688
- /// each instance's `VMContext` structure.
2689
- ///
2690
- /// The allocated size of the table will be `tables *
2691
- /// sizeof(VMTableDefinition)` for each instance regardless of how many
2692
- /// tables are defined by an instance's module.
2693
- pub fn max_tables_per_module(&mut self, tables: u32) -> &mut Self {
2694
- self.config.limits.max_tables_per_module = tables;
2695
- self
2696
- }
2697
-
2698
- /// The maximum table elements for any table defined in a module (default is
2699
- /// `20000`).
2700
- ///
2701
- /// If a table's minimum element limit is greater than this value, the
2702
- /// module will fail to instantiate.
2703
- ///
2704
- /// If a table's maximum element limit is unbounded or greater than this
2705
- /// value, the maximum will be `table_elements` for the purpose of any
2706
- /// `table.grow` instruction.
2707
- ///
2708
- /// This value is used to reserve the maximum space for each supported
2709
- /// table; table elements are pointer-sized in the Wasmtime runtime.
2710
- /// Therefore, the space reserved for each instance is `tables *
2711
- /// table_elements * sizeof::<*const ()>`.
2712
- pub fn table_elements(&mut self, elements: u32) -> &mut Self {
2713
- self.config.limits.table_elements = elements;
2714
- self
2715
- }
2716
-
2717
- /// The maximum number of defined linear memories for a module (default is
2718
- /// `1`).
2719
- ///
2720
- /// This value controls the capacity of the `VMMemoryDefinition` table in
2721
- /// each core instance's `VMContext` structure.
2722
- ///
2723
- /// The allocated size of the table will be `memories *
2724
- /// sizeof(VMMemoryDefinition)` for each core instance regardless of how
2725
- /// many memories are defined by the core instance's module.
2726
- pub fn max_memories_per_module(&mut self, memories: u32) -> &mut Self {
2727
- self.config.limits.max_memories_per_module = memories;
2728
- self
2729
- }
2730
-
2731
- /// The maximum number of Wasm pages for any linear memory defined in a
2732
- /// module (default is `160`).
2733
- ///
2734
- /// The default of `160` means at most 10 MiB of host memory may be
2735
- /// committed for each instance.
2736
- ///
2737
- /// If a memory's minimum page limit is greater than this value, the module
2738
- /// will fail to instantiate.
2739
- ///
2740
- /// If a memory's maximum page limit is unbounded or greater than this
2741
- /// value, the maximum will be `memory_pages` for the purpose of any
2742
- /// `memory.grow` instruction.
2743
- ///
2744
- /// This value is used to control the maximum accessible space for each
2745
- /// linear memory of a core instance.
2746
- ///
2747
- /// The reservation size of each linear memory is controlled by the
2748
- /// `static_memory_maximum_size` setting and this value cannot exceed the
2749
- /// configured static memory maximum size.
2750
- pub fn memory_pages(&mut self, pages: u64) -> &mut Self {
2751
- self.config.limits.memory_pages = pages;
2752
- self
2753
- }
2754
-
2755
- /// Configures whether memory protection keys (MPK) should be used for more
2756
- /// efficient layout of pool-allocated memories.
2757
- ///
2758
- /// When using the pooling allocator (see [`Config::allocation_strategy`],
2759
- /// [`InstanceAllocationStrategy::Pooling`]), memory protection keys can
2760
- /// reduce the total amount of allocated virtual memory by eliminating guard
2761
- /// regions between WebAssembly memories in the pool. It does so by
2762
- /// "coloring" memory regions with different memory keys and setting which
2763
- /// regions are accessible each time executions switches from host to guest
2764
- /// (or vice versa).
2765
- ///
2766
- /// MPK is only available on Linux (called `pku` there) and recent x86
2767
- /// systems; we check for MPK support at runtime by examining the `CPUID`
2768
- /// register. This configuration setting can be in three states:
2769
- ///
2770
- /// - `auto`: if MPK support is available the guard regions are removed; if
2771
- /// not, the guard regions remain
2772
- /// - `enable`: use MPK to eliminate guard regions; fail if MPK is not
2773
- /// supported
2774
- /// - `disable`: never use MPK
2775
- ///
2776
- /// By default this value is `disabled`, but may become `auto` in future
2777
- /// releases.
2778
- ///
2779
- /// __WARNING__: this configuration options is still experimental--use at
2780
- /// your own risk! MPK uses kernel and CPU features to protect memory
2781
- /// regions; you may observe segmentation faults if anything is
2782
- /// misconfigured.
2783
- pub fn memory_protection_keys(&mut self, enable: MpkEnabled) -> &mut Self {
2784
- self.config.memory_protection_keys = enable;
2785
- self
2786
- }
2787
-
2788
- /// Sets an upper limit on how many memory protection keys (MPK) Wasmtime
2789
- /// will use.
2790
- ///
2791
- /// This setting is only applicable when
2792
- /// [`PoolingAllocationConfig::memory_protection_keys`] is set to `enable`
2793
- /// or `auto`. Configuring this above the HW and OS limits (typically 15)
2794
- /// has no effect.
2795
- ///
2796
- /// If multiple Wasmtime engines are used in the same process, note that all
2797
- /// engines will share the same set of allocated keys; this setting will
2798
- /// limit how many keys are allocated initially and thus available to all
2799
- /// other engines.
2800
- pub fn max_memory_protection_keys(&mut self, max: usize) -> &mut Self {
2801
- self.config.max_memory_protection_keys = max;
2802
- self
2803
- }
2804
-
2805
- /// Check if memory protection keys (MPK) are available on the current host.
2806
- ///
2807
- /// This is a convenience method for determining MPK availability using the
2808
- /// same method that [`MpkEnabled::Auto`] does. See
2809
- /// [`PoolingAllocationConfig::memory_protection_keys`] for more
2810
- /// information.
2811
- pub fn are_memory_protection_keys_available() -> bool {
2812
- mpk::is_supported()
2813
- }
2814
-
2815
- /// The maximum number of concurrent GC heaps supported (default is `1000`).
2816
- ///
2817
- /// This value has a direct impact on the amount of memory allocated by the
2818
- /// pooling instance allocator.
2819
- ///
2820
- /// The pooling instance allocator allocates a GC heap pool, where each
2821
- /// entry in the pool contains the space needed for each GC heap used by a
2822
- /// store.
2823
- #[cfg(feature = "gc")]
2824
- pub fn total_gc_heaps(&mut self, count: u32) -> &mut Self {
2825
- self.config.limits.total_gc_heaps = count;
2826
- self
2827
- }
2828
- }
2829
-
2830
- pub(crate) fn probestack_supported(arch: Architecture) -> bool {
2831
- matches!(
2832
- arch,
2833
- Architecture::X86_64 | Architecture::Aarch64(_) | Architecture::Riscv64(_)
2834
- )
2835
- }
2836
-
2837
- #[cfg(feature = "std")]
2838
- fn detect_host_feature(feature: &str) -> Option<bool> {
2839
- #[cfg(target_arch = "aarch64")]
2840
- {
2841
- return match feature {
2842
- "lse" => Some(std::arch::is_aarch64_feature_detected!("lse")),
2843
- "paca" => Some(std::arch::is_aarch64_feature_detected!("paca")),
2844
-
2845
- _ => None,
2846
- };
2847
- }
2848
-
2849
- // There is no is_s390x_feature_detected macro yet, so for now
2850
- // we use getauxval from the libc crate directly.
2851
- #[cfg(all(target_arch = "s390x", target_os = "linux"))]
2852
- {
2853
- let v = unsafe { libc::getauxval(libc::AT_HWCAP) };
2854
- const HWCAP_S390X_VXRS_EXT2: libc::c_ulong = 32768;
2855
-
2856
- return match feature {
2857
- // There is no separate HWCAP bit for mie2, so assume
2858
- // that any machine with vxrs_ext2 also has mie2.
2859
- "vxrs_ext2" | "mie2" => Some((v & HWCAP_S390X_VXRS_EXT2) != 0),
2860
-
2861
- _ => None,
2862
- };
2863
- }
2864
-
2865
- #[cfg(target_arch = "riscv64")]
2866
- {
2867
- return match feature {
2868
- // due to `is_riscv64_feature_detected` is not stable.
2869
- // we cannot use it. For now lie and say all features are always
2870
- // found to keep tests working.
2871
- _ => Some(true),
2872
- };
2873
- }
2874
-
2875
- #[cfg(target_arch = "x86_64")]
2876
- {
2877
- return match feature {
2878
- "sse3" => Some(std::is_x86_feature_detected!("sse3")),
2879
- "ssse3" => Some(std::is_x86_feature_detected!("ssse3")),
2880
- "sse4.1" => Some(std::is_x86_feature_detected!("sse4.1")),
2881
- "sse4.2" => Some(std::is_x86_feature_detected!("sse4.2")),
2882
- "popcnt" => Some(std::is_x86_feature_detected!("popcnt")),
2883
- "avx" => Some(std::is_x86_feature_detected!("avx")),
2884
- "avx2" => Some(std::is_x86_feature_detected!("avx2")),
2885
- "fma" => Some(std::is_x86_feature_detected!("fma")),
2886
- "bmi1" => Some(std::is_x86_feature_detected!("bmi1")),
2887
- "bmi2" => Some(std::is_x86_feature_detected!("bmi2")),
2888
- "avx512bitalg" => Some(std::is_x86_feature_detected!("avx512bitalg")),
2889
- "avx512dq" => Some(std::is_x86_feature_detected!("avx512dq")),
2890
- "avx512f" => Some(std::is_x86_feature_detected!("avx512f")),
2891
- "avx512vl" => Some(std::is_x86_feature_detected!("avx512vl")),
2892
- "avx512vbmi" => Some(std::is_x86_feature_detected!("avx512vbmi")),
2893
- "lzcnt" => Some(std::is_x86_feature_detected!("lzcnt")),
2894
-
2895
- _ => None,
2896
- };
2897
- }
2898
-
2899
- #[allow(unreachable_code)]
2900
- {
2901
- let _ = feature;
2902
- return None;
2903
- }
2904
- }