wasmtime 20.0.2 → 21.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2089) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +129 -124
  3. data/ext/Cargo.toml +8 -6
  4. data/ext/cargo-vendor/cobs-0.2.3/.cargo-checksum.json +1 -0
  5. data/ext/cargo-vendor/cobs-0.2.3/Cargo.toml +39 -0
  6. data/ext/cargo-vendor/cobs-0.2.3/LICENSE-APACHE +202 -0
  7. data/ext/cargo-vendor/cobs-0.2.3/LICENSE-MIT +19 -0
  8. data/ext/cargo-vendor/cobs-0.2.3/README.md +23 -0
  9. data/ext/cargo-vendor/cobs-0.2.3/src/dec.rs +360 -0
  10. data/ext/cargo-vendor/cobs-0.2.3/src/enc.rs +216 -0
  11. data/ext/cargo-vendor/cobs-0.2.3/src/lib.rs +14 -0
  12. data/ext/cargo-vendor/cobs-0.2.3/tests/test.rs +265 -0
  13. data/ext/cargo-vendor/cranelift-bforest-0.108.1/.cargo-checksum.json +1 -0
  14. data/ext/cargo-vendor/cranelift-bforest-0.108.1/Cargo.toml +40 -0
  15. data/ext/cargo-vendor/cranelift-codegen-0.108.1/.cargo-checksum.json +1 -0
  16. data/ext/cargo-vendor/cranelift-codegen-0.108.1/Cargo.toml +189 -0
  17. data/ext/cargo-vendor/cranelift-codegen-0.108.1/build.rs +266 -0
  18. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/alias_analysis.rs +403 -0
  19. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/context.rs +395 -0
  20. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ctxhash.rs +167 -0
  21. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/egraph/elaborate.rs +835 -0
  22. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/egraph.rs +839 -0
  23. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/incremental_cache.rs +256 -0
  24. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ir/instructions.rs +1020 -0
  25. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/abi.rs +1580 -0
  26. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/args.rs +721 -0
  27. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/emit.rs +3846 -0
  28. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/emit_tests.rs +7902 -0
  29. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/imms.rs +1213 -0
  30. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/mod.rs +3094 -0
  31. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst/regs.rs +288 -0
  32. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/inst.isle +4225 -0
  33. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/lower/isle.rs +810 -0
  34. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/aarch64/pcc.rs +568 -0
  35. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/mod.rs +449 -0
  36. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/abi.rs +1051 -0
  37. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/args.rs +1938 -0
  38. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/emit.rs +2681 -0
  39. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/emit_tests.rs +2197 -0
  40. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/mod.rs +1975 -0
  41. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/regs.rs +168 -0
  42. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst/vector.rs +1144 -0
  43. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/inst.isle +2969 -0
  44. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/lower/isle.rs +625 -0
  45. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/riscv64/lower.isle +2883 -0
  46. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/abi.rs +1037 -0
  47. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/args.rs +314 -0
  48. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/emit.rs +3646 -0
  49. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/imms.rs +202 -0
  50. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/mod.rs +3421 -0
  51. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/s390x/inst/regs.rs +180 -0
  52. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/abi.rs +1410 -0
  53. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/args.rs +2256 -0
  54. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/emit.rs +4311 -0
  55. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/emit_tests.rs +5171 -0
  56. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/mod.rs +2838 -0
  57. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst/regs.rs +276 -0
  58. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/inst.isle +5294 -0
  59. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/lower/isle.rs +1064 -0
  60. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/lower.isle +4808 -0
  61. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/lower.rs +337 -0
  62. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/isa/x64/pcc.rs +1014 -0
  63. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/lib.rs +106 -0
  64. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/abi.rs +2506 -0
  65. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/blockorder.rs +465 -0
  66. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/isle.rs +903 -0
  67. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/lower.rs +1432 -0
  68. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/mod.rs +555 -0
  69. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/reg.rs +522 -0
  70. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/valueregs.rs +138 -0
  71. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/machinst/vcode.rs +1741 -0
  72. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/nan_canonicalization.rs +130 -0
  73. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/opts/arithmetic.isle +240 -0
  74. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/opts/icmp.isle +215 -0
  75. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/ranges.rs +131 -0
  76. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/remove_constant_phis.rs +419 -0
  77. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/scoped_hash_map.rs +310 -0
  78. data/ext/cargo-vendor/cranelift-codegen-0.108.1/src/settings.rs +590 -0
  79. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/.cargo-checksum.json +1 -0
  80. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/Cargo.toml +35 -0
  81. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_inst.rs +1278 -0
  82. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_isle.rs +519 -0
  83. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_settings.rs +508 -0
  84. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/gen_types.rs +75 -0
  85. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/isa/riscv64.rs +168 -0
  86. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/isa/x86.rs +414 -0
  87. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/isle.rs +126 -0
  88. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/lib.rs +98 -0
  89. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/shared/settings.rs +348 -0
  90. data/ext/cargo-vendor/cranelift-codegen-meta-0.108.1/src/srcgen.rs +464 -0
  91. data/ext/cargo-vendor/cranelift-codegen-shared-0.108.1/.cargo-checksum.json +1 -0
  92. data/ext/cargo-vendor/cranelift-codegen-shared-0.108.1/Cargo.toml +22 -0
  93. data/ext/cargo-vendor/cranelift-control-0.108.1/.cargo-checksum.json +1 -0
  94. data/ext/cargo-vendor/cranelift-control-0.108.1/Cargo.toml +30 -0
  95. data/ext/cargo-vendor/cranelift-entity-0.108.1/.cargo-checksum.json +1 -0
  96. data/ext/cargo-vendor/cranelift-entity-0.108.1/Cargo.toml +52 -0
  97. data/ext/cargo-vendor/cranelift-entity-0.108.1/src/lib.rs +381 -0
  98. data/ext/cargo-vendor/cranelift-frontend-0.108.1/.cargo-checksum.json +1 -0
  99. data/ext/cargo-vendor/cranelift-frontend-0.108.1/Cargo.toml +67 -0
  100. data/ext/cargo-vendor/cranelift-frontend-0.108.1/src/switch.rs +696 -0
  101. data/ext/cargo-vendor/cranelift-isle-0.108.1/.cargo-checksum.json +1 -0
  102. data/ext/cargo-vendor/cranelift-isle-0.108.1/Cargo.toml +46 -0
  103. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/codegen.rs +886 -0
  104. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/disjointsets.rs +169 -0
  105. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/lib.rs +33 -0
  106. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/sema.rs +2492 -0
  107. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/serialize.rs +846 -0
  108. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/stablemapset.rs +79 -0
  109. data/ext/cargo-vendor/cranelift-isle-0.108.1/src/trie_again.rs +684 -0
  110. data/ext/cargo-vendor/cranelift-native-0.108.1/.cargo-checksum.json +1 -0
  111. data/ext/cargo-vendor/cranelift-native-0.108.1/Cargo.toml +43 -0
  112. data/ext/cargo-vendor/cranelift-wasm-0.108.1/.cargo-checksum.json +1 -0
  113. data/ext/cargo-vendor/cranelift-wasm-0.108.1/Cargo.toml +109 -0
  114. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/code_translator.rs +3687 -0
  115. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/environ/dummy.rs +906 -0
  116. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/environ/spec.rs +945 -0
  117. data/ext/cargo-vendor/cranelift-wasm-0.108.1/src/sections_translator.rs +389 -0
  118. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.22/.cargo-checksum.json +1 -0
  119. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.22/Cargo.toml +48 -0
  120. data/ext/cargo-vendor/embedded-io-0.4.0/.cargo-checksum.json +1 -0
  121. data/ext/cargo-vendor/embedded-io-0.4.0/CHANGELOG.md +28 -0
  122. data/ext/cargo-vendor/embedded-io-0.4.0/Cargo.toml +73 -0
  123. data/ext/cargo-vendor/embedded-io-0.4.0/LICENSE-APACHE +201 -0
  124. data/ext/cargo-vendor/embedded-io-0.4.0/LICENSE-MIT +25 -0
  125. data/ext/cargo-vendor/embedded-io-0.4.0/README.md +33 -0
  126. data/ext/cargo-vendor/embedded-io-0.4.0/ci.sh +21 -0
  127. data/ext/cargo-vendor/embedded-io-0.4.0/rust-toolchain.toml +3 -0
  128. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/futures_io.rs +65 -0
  129. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/mod.rs +40 -0
  130. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/std_io.rs +107 -0
  131. data/ext/cargo-vendor/embedded-io-0.4.0/src/adapters/tokio.rs +108 -0
  132. data/ext/cargo-vendor/embedded-io-0.4.0/src/asynch.rs +230 -0
  133. data/ext/cargo-vendor/embedded-io-0.4.0/src/blocking.rs +309 -0
  134. data/ext/cargo-vendor/embedded-io-0.4.0/src/fmt.rs +228 -0
  135. data/ext/cargo-vendor/embedded-io-0.4.0/src/lib.rs +125 -0
  136. data/ext/cargo-vendor/libm-0.2.8/.cargo-checksum.json +1 -0
  137. data/ext/cargo-vendor/libm-0.2.8/CHANGELOG.md +123 -0
  138. data/ext/cargo-vendor/libm-0.2.8/CONTRIBUTING.md +95 -0
  139. data/ext/cargo-vendor/libm-0.2.8/Cargo.toml +45 -0
  140. data/ext/cargo-vendor/libm-0.2.8/LICENSE-APACHE +201 -0
  141. data/ext/cargo-vendor/libm-0.2.8/LICENSE-MIT +25 -0
  142. data/ext/cargo-vendor/libm-0.2.8/README.md +51 -0
  143. data/ext/cargo-vendor/libm-0.2.8/build.rs +463 -0
  144. data/ext/cargo-vendor/libm-0.2.8/src/lib.rs +59 -0
  145. data/ext/cargo-vendor/libm-0.2.8/src/libm_helper.rs +171 -0
  146. data/ext/cargo-vendor/libm-0.2.8/src/math/acos.rs +112 -0
  147. data/ext/cargo-vendor/libm-0.2.8/src/math/acosf.rs +79 -0
  148. data/ext/cargo-vendor/libm-0.2.8/src/math/acosh.rs +27 -0
  149. data/ext/cargo-vendor/libm-0.2.8/src/math/acoshf.rs +26 -0
  150. data/ext/cargo-vendor/libm-0.2.8/src/math/asin.rs +119 -0
  151. data/ext/cargo-vendor/libm-0.2.8/src/math/asinf.rs +72 -0
  152. data/ext/cargo-vendor/libm-0.2.8/src/math/asinh.rs +40 -0
  153. data/ext/cargo-vendor/libm-0.2.8/src/math/asinhf.rs +39 -0
  154. data/ext/cargo-vendor/libm-0.2.8/src/math/atan.rs +184 -0
  155. data/ext/cargo-vendor/libm-0.2.8/src/math/atan2.rs +126 -0
  156. data/ext/cargo-vendor/libm-0.2.8/src/math/atan2f.rs +91 -0
  157. data/ext/cargo-vendor/libm-0.2.8/src/math/atanf.rs +112 -0
  158. data/ext/cargo-vendor/libm-0.2.8/src/math/atanh.rs +37 -0
  159. data/ext/cargo-vendor/libm-0.2.8/src/math/atanhf.rs +37 -0
  160. data/ext/cargo-vendor/libm-0.2.8/src/math/cbrt.rs +113 -0
  161. data/ext/cargo-vendor/libm-0.2.8/src/math/cbrtf.rs +75 -0
  162. data/ext/cargo-vendor/libm-0.2.8/src/math/ceil.rs +82 -0
  163. data/ext/cargo-vendor/libm-0.2.8/src/math/ceilf.rs +65 -0
  164. data/ext/cargo-vendor/libm-0.2.8/src/math/copysign.rs +12 -0
  165. data/ext/cargo-vendor/libm-0.2.8/src/math/copysignf.rs +12 -0
  166. data/ext/cargo-vendor/libm-0.2.8/src/math/cos.rs +73 -0
  167. data/ext/cargo-vendor/libm-0.2.8/src/math/cosf.rs +83 -0
  168. data/ext/cargo-vendor/libm-0.2.8/src/math/cosh.rs +38 -0
  169. data/ext/cargo-vendor/libm-0.2.8/src/math/coshf.rs +38 -0
  170. data/ext/cargo-vendor/libm-0.2.8/src/math/erf.rs +318 -0
  171. data/ext/cargo-vendor/libm-0.2.8/src/math/erff.rs +230 -0
  172. data/ext/cargo-vendor/libm-0.2.8/src/math/exp.rs +154 -0
  173. data/ext/cargo-vendor/libm-0.2.8/src/math/exp10.rs +22 -0
  174. data/ext/cargo-vendor/libm-0.2.8/src/math/exp10f.rs +22 -0
  175. data/ext/cargo-vendor/libm-0.2.8/src/math/exp2.rs +394 -0
  176. data/ext/cargo-vendor/libm-0.2.8/src/math/exp2f.rs +135 -0
  177. data/ext/cargo-vendor/libm-0.2.8/src/math/expf.rs +101 -0
  178. data/ext/cargo-vendor/libm-0.2.8/src/math/expm1.rs +144 -0
  179. data/ext/cargo-vendor/libm-0.2.8/src/math/expm1f.rs +134 -0
  180. data/ext/cargo-vendor/libm-0.2.8/src/math/expo2.rs +14 -0
  181. data/ext/cargo-vendor/libm-0.2.8/src/math/fabs.rs +41 -0
  182. data/ext/cargo-vendor/libm-0.2.8/src/math/fabsf.rs +41 -0
  183. data/ext/cargo-vendor/libm-0.2.8/src/math/fdim.rs +22 -0
  184. data/ext/cargo-vendor/libm-0.2.8/src/math/fdimf.rs +22 -0
  185. data/ext/cargo-vendor/libm-0.2.8/src/math/fenv.rs +27 -0
  186. data/ext/cargo-vendor/libm-0.2.8/src/math/floor.rs +81 -0
  187. data/ext/cargo-vendor/libm-0.2.8/src/math/floorf.rs +66 -0
  188. data/ext/cargo-vendor/libm-0.2.8/src/math/fma.rs +232 -0
  189. data/ext/cargo-vendor/libm-0.2.8/src/math/fmaf.rs +117 -0
  190. data/ext/cargo-vendor/libm-0.2.8/src/math/fmax.rs +12 -0
  191. data/ext/cargo-vendor/libm-0.2.8/src/math/fmaxf.rs +12 -0
  192. data/ext/cargo-vendor/libm-0.2.8/src/math/fmin.rs +12 -0
  193. data/ext/cargo-vendor/libm-0.2.8/src/math/fminf.rs +12 -0
  194. data/ext/cargo-vendor/libm-0.2.8/src/math/fmod.rs +80 -0
  195. data/ext/cargo-vendor/libm-0.2.8/src/math/fmodf.rs +89 -0
  196. data/ext/cargo-vendor/libm-0.2.8/src/math/frexp.rs +20 -0
  197. data/ext/cargo-vendor/libm-0.2.8/src/math/frexpf.rs +21 -0
  198. data/ext/cargo-vendor/libm-0.2.8/src/math/hypot.rs +74 -0
  199. data/ext/cargo-vendor/libm-0.2.8/src/math/hypotf.rs +43 -0
  200. data/ext/cargo-vendor/libm-0.2.8/src/math/ilogb.rs +32 -0
  201. data/ext/cargo-vendor/libm-0.2.8/src/math/ilogbf.rs +32 -0
  202. data/ext/cargo-vendor/libm-0.2.8/src/math/j0.rs +422 -0
  203. data/ext/cargo-vendor/libm-0.2.8/src/math/j0f.rs +359 -0
  204. data/ext/cargo-vendor/libm-0.2.8/src/math/j1.rs +414 -0
  205. data/ext/cargo-vendor/libm-0.2.8/src/math/j1f.rs +380 -0
  206. data/ext/cargo-vendor/libm-0.2.8/src/math/jn.rs +343 -0
  207. data/ext/cargo-vendor/libm-0.2.8/src/math/jnf.rs +259 -0
  208. data/ext/cargo-vendor/libm-0.2.8/src/math/k_cos.rs +62 -0
  209. data/ext/cargo-vendor/libm-0.2.8/src/math/k_cosf.rs +29 -0
  210. data/ext/cargo-vendor/libm-0.2.8/src/math/k_expo2.rs +14 -0
  211. data/ext/cargo-vendor/libm-0.2.8/src/math/k_expo2f.rs +14 -0
  212. data/ext/cargo-vendor/libm-0.2.8/src/math/k_sin.rs +57 -0
  213. data/ext/cargo-vendor/libm-0.2.8/src/math/k_sinf.rs +30 -0
  214. data/ext/cargo-vendor/libm-0.2.8/src/math/k_tan.rs +105 -0
  215. data/ext/cargo-vendor/libm-0.2.8/src/math/k_tanf.rs +46 -0
  216. data/ext/cargo-vendor/libm-0.2.8/src/math/ldexp.rs +4 -0
  217. data/ext/cargo-vendor/libm-0.2.8/src/math/ldexpf.rs +4 -0
  218. data/ext/cargo-vendor/libm-0.2.8/src/math/lgamma.rs +6 -0
  219. data/ext/cargo-vendor/libm-0.2.8/src/math/lgamma_r.rs +320 -0
  220. data/ext/cargo-vendor/libm-0.2.8/src/math/lgammaf.rs +6 -0
  221. data/ext/cargo-vendor/libm-0.2.8/src/math/lgammaf_r.rs +255 -0
  222. data/ext/cargo-vendor/libm-0.2.8/src/math/log.rs +117 -0
  223. data/ext/cargo-vendor/libm-0.2.8/src/math/log10.rs +117 -0
  224. data/ext/cargo-vendor/libm-0.2.8/src/math/log10f.rs +91 -0
  225. data/ext/cargo-vendor/libm-0.2.8/src/math/log1p.rs +143 -0
  226. data/ext/cargo-vendor/libm-0.2.8/src/math/log1pf.rs +98 -0
  227. data/ext/cargo-vendor/libm-0.2.8/src/math/log2.rs +106 -0
  228. data/ext/cargo-vendor/libm-0.2.8/src/math/log2f.rs +87 -0
  229. data/ext/cargo-vendor/libm-0.2.8/src/math/logf.rs +65 -0
  230. data/ext/cargo-vendor/libm-0.2.8/src/math/mod.rs +370 -0
  231. data/ext/cargo-vendor/libm-0.2.8/src/math/modf.rs +34 -0
  232. data/ext/cargo-vendor/libm-0.2.8/src/math/modff.rs +33 -0
  233. data/ext/cargo-vendor/libm-0.2.8/src/math/nextafter.rs +37 -0
  234. data/ext/cargo-vendor/libm-0.2.8/src/math/nextafterf.rs +37 -0
  235. data/ext/cargo-vendor/libm-0.2.8/src/math/pow.rs +637 -0
  236. data/ext/cargo-vendor/libm-0.2.8/src/math/powf.rs +342 -0
  237. data/ext/cargo-vendor/libm-0.2.8/src/math/rem_pio2.rs +233 -0
  238. data/ext/cargo-vendor/libm-0.2.8/src/math/rem_pio2_large.rs +470 -0
  239. data/ext/cargo-vendor/libm-0.2.8/src/math/rem_pio2f.rs +67 -0
  240. data/ext/cargo-vendor/libm-0.2.8/src/math/remainder.rs +5 -0
  241. data/ext/cargo-vendor/libm-0.2.8/src/math/remainderf.rs +5 -0
  242. data/ext/cargo-vendor/libm-0.2.8/src/math/remquo.rs +110 -0
  243. data/ext/cargo-vendor/libm-0.2.8/src/math/remquof.rs +97 -0
  244. data/ext/cargo-vendor/libm-0.2.8/src/math/rint.rs +58 -0
  245. data/ext/cargo-vendor/libm-0.2.8/src/math/rintf.rs +58 -0
  246. data/ext/cargo-vendor/libm-0.2.8/src/math/round.rs +28 -0
  247. data/ext/cargo-vendor/libm-0.2.8/src/math/roundf.rs +30 -0
  248. data/ext/cargo-vendor/libm-0.2.8/src/math/scalbn.rs +33 -0
  249. data/ext/cargo-vendor/libm-0.2.8/src/math/scalbnf.rs +29 -0
  250. data/ext/cargo-vendor/libm-0.2.8/src/math/sin.rs +88 -0
  251. data/ext/cargo-vendor/libm-0.2.8/src/math/sincos.rs +134 -0
  252. data/ext/cargo-vendor/libm-0.2.8/src/math/sincosf.rs +185 -0
  253. data/ext/cargo-vendor/libm-0.2.8/src/math/sinf.rs +93 -0
  254. data/ext/cargo-vendor/libm-0.2.8/src/math/sinh.rs +49 -0
  255. data/ext/cargo-vendor/libm-0.2.8/src/math/sinhf.rs +30 -0
  256. data/ext/cargo-vendor/libm-0.2.8/src/math/sqrt.rs +280 -0
  257. data/ext/cargo-vendor/libm-0.2.8/src/math/sqrtf.rs +170 -0
  258. data/ext/cargo-vendor/libm-0.2.8/src/math/tan.rs +70 -0
  259. data/ext/cargo-vendor/libm-0.2.8/src/math/tanf.rs +78 -0
  260. data/ext/cargo-vendor/libm-0.2.8/src/math/tanh.rs +53 -0
  261. data/ext/cargo-vendor/libm-0.2.8/src/math/tanhf.rs +39 -0
  262. data/ext/cargo-vendor/libm-0.2.8/src/math/tgamma.rs +208 -0
  263. data/ext/cargo-vendor/libm-0.2.8/src/math/tgammaf.rs +6 -0
  264. data/ext/cargo-vendor/libm-0.2.8/src/math/trunc.rs +40 -0
  265. data/ext/cargo-vendor/libm-0.2.8/src/math/truncf.rs +42 -0
  266. data/ext/cargo-vendor/postcard-1.0.8/.cargo-checksum.json +1 -0
  267. data/ext/cargo-vendor/postcard-1.0.8/CHANGELOG.md +141 -0
  268. data/ext/cargo-vendor/postcard-1.0.8/Cargo.toml +100 -0
  269. data/ext/cargo-vendor/postcard-1.0.8/LICENSE-APACHE +201 -0
  270. data/ext/cargo-vendor/postcard-1.0.8/LICENSE-MIT +25 -0
  271. data/ext/cargo-vendor/postcard-1.0.8/README.md +146 -0
  272. data/ext/cargo-vendor/postcard-1.0.8/spec/LICENSE-CC-BY-SA +427 -0
  273. data/ext/cargo-vendor/postcard-1.0.8/spec/book.toml +6 -0
  274. data/ext/cargo-vendor/postcard-1.0.8/spec/src/SUMMARY.md +6 -0
  275. data/ext/cargo-vendor/postcard-1.0.8/spec/src/glossary.md +17 -0
  276. data/ext/cargo-vendor/postcard-1.0.8/spec/src/intro.md +12 -0
  277. data/ext/cargo-vendor/postcard-1.0.8/spec/src/serde-data-model.md +190 -0
  278. data/ext/cargo-vendor/postcard-1.0.8/spec/src/wire-format.md +327 -0
  279. data/ext/cargo-vendor/postcard-1.0.8/src/accumulator.rs +367 -0
  280. data/ext/cargo-vendor/postcard-1.0.8/src/de/deserializer.rs +599 -0
  281. data/ext/cargo-vendor/postcard-1.0.8/src/de/flavors.rs +468 -0
  282. data/ext/cargo-vendor/postcard-1.0.8/src/de/mod.rs +568 -0
  283. data/ext/cargo-vendor/postcard-1.0.8/src/error.rs +95 -0
  284. data/ext/cargo-vendor/postcard-1.0.8/src/fixint.rs +189 -0
  285. data/ext/cargo-vendor/postcard-1.0.8/src/lib.rs +143 -0
  286. data/ext/cargo-vendor/postcard-1.0.8/src/max_size.rs +233 -0
  287. data/ext/cargo-vendor/postcard-1.0.8/src/schema.rs +282 -0
  288. data/ext/cargo-vendor/postcard-1.0.8/src/ser/flavors.rs +722 -0
  289. data/ext/cargo-vendor/postcard-1.0.8/src/ser/mod.rs +866 -0
  290. data/ext/cargo-vendor/postcard-1.0.8/src/ser/serializer.rs +564 -0
  291. data/ext/cargo-vendor/postcard-1.0.8/src/varint.rs +103 -0
  292. data/ext/cargo-vendor/postcard-1.0.8/tests/accumulator.rs +57 -0
  293. data/ext/cargo-vendor/postcard-1.0.8/tests/crc.rs +60 -0
  294. data/ext/cargo-vendor/postcard-1.0.8/tests/loopback.rs +248 -0
  295. data/ext/cargo-vendor/postcard-1.0.8/tests/max_size.rs +101 -0
  296. data/ext/cargo-vendor/postcard-1.0.8/tests/schema.rs +107 -0
  297. data/ext/cargo-vendor/rb-sys-0.9.100/.cargo-checksum.json +1 -0
  298. data/ext/cargo-vendor/rb-sys-0.9.100/Cargo.toml +58 -0
  299. data/ext/cargo-vendor/rb-sys-0.9.100/build/main.rs +267 -0
  300. data/ext/cargo-vendor/rb-sys-0.9.100/build/stable_api_config.rs +139 -0
  301. data/ext/cargo-vendor/rb-sys-0.9.100/src/bindings.rs +21 -0
  302. data/ext/cargo-vendor/rb-sys-0.9.100/src/tracking_allocator.rs +266 -0
  303. data/ext/cargo-vendor/rb-sys-build-0.9.100/.cargo-checksum.json +1 -0
  304. data/ext/cargo-vendor/rb-sys-build-0.9.100/Cargo.toml +62 -0
  305. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/bindings/stable_api.rs +203 -0
  306. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/bindings.rs +254 -0
  307. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/cc.rs +374 -0
  308. data/ext/cargo-vendor/rb-sys-build-0.9.100/src/utils.rs +52 -0
  309. data/ext/cargo-vendor/wasi-common-21.0.1/.cargo-checksum.json +1 -0
  310. data/ext/cargo-vendor/wasi-common-21.0.1/Cargo.toml +223 -0
  311. data/ext/cargo-vendor/wasi-common-21.0.1/tests/all/async_.rs +293 -0
  312. data/ext/cargo-vendor/wasi-common-21.0.1/tests/all/main.rs +21 -0
  313. data/ext/cargo-vendor/wasi-common-21.0.1/tests/all/sync.rs +279 -0
  314. data/ext/cargo-vendor/wasm-encoder-0.207.0/.cargo-checksum.json +1 -0
  315. data/ext/cargo-vendor/wasm-encoder-0.207.0/Cargo.toml +45 -0
  316. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/code.rs +3502 -0
  317. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/data.rs +186 -0
  318. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/elements.rs +221 -0
  319. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/globals.rs +112 -0
  320. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/imports.rs +157 -0
  321. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/memories.rs +128 -0
  322. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/tables.rs +134 -0
  323. data/ext/cargo-vendor/wasm-encoder-0.207.0/src/core/types.rs +678 -0
  324. data/ext/cargo-vendor/wasmparser-0.207.0/.cargo-checksum.json +1 -0
  325. data/ext/cargo-vendor/wasmparser-0.207.0/Cargo.lock +659 -0
  326. data/ext/cargo-vendor/wasmparser-0.207.0/Cargo.toml +95 -0
  327. data/ext/cargo-vendor/wasmparser-0.207.0/src/binary_reader.rs +1867 -0
  328. data/ext/cargo-vendor/wasmparser-0.207.0/src/lib.rs +805 -0
  329. data/ext/cargo-vendor/wasmparser-0.207.0/src/limits.rs +78 -0
  330. data/ext/cargo-vendor/wasmparser-0.207.0/src/map.rs +137 -0
  331. data/ext/cargo-vendor/wasmparser-0.207.0/src/parser.rs +1636 -0
  332. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/canonicals.rs +121 -0
  333. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/instances.rs +164 -0
  334. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/names.rs +102 -0
  335. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/start.rs +31 -0
  336. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/component/types.rs +551 -0
  337. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/code.rs +146 -0
  338. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/coredumps.rs +244 -0
  339. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/custom.rs +64 -0
  340. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/data.rs +96 -0
  341. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/dylink0.rs +110 -0
  342. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/elements.rs +152 -0
  343. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/globals.rs +51 -0
  344. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/linking.rs +450 -0
  345. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/memories.rs +57 -0
  346. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/names.rs +159 -0
  347. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/operators.rs +430 -0
  348. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/reloc.rs +301 -0
  349. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/tables.rs +93 -0
  350. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/types/matches.rs +277 -0
  351. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core/types.rs +1773 -0
  352. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers/core.rs +43 -0
  353. data/ext/cargo-vendor/wasmparser-0.207.0/src/readers.rs +316 -0
  354. data/ext/cargo-vendor/wasmparser-0.207.0/src/resources.rs +235 -0
  355. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/component.rs +3242 -0
  356. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/core/canonical.rs +233 -0
  357. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/core.rs +1450 -0
  358. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/func.rs +331 -0
  359. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/names.rs +947 -0
  360. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/operators.rs +4117 -0
  361. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator/types.rs +4492 -0
  362. data/ext/cargo-vendor/wasmparser-0.207.0/src/validator.rs +1786 -0
  363. data/ext/cargo-vendor/wasmprinter-0.207.0/.cargo-checksum.json +1 -0
  364. data/ext/cargo-vendor/wasmprinter-0.207.0/Cargo.toml +50 -0
  365. data/ext/cargo-vendor/wasmprinter-0.207.0/src/lib.rs +3226 -0
  366. data/ext/cargo-vendor/wasmprinter-0.207.0/src/operator.rs +1164 -0
  367. data/ext/cargo-vendor/wasmprinter-0.207.0/tests/all.rs +293 -0
  368. data/ext/cargo-vendor/wasmtime-21.0.1/.cargo-checksum.json +1 -0
  369. data/ext/cargo-vendor/wasmtime-21.0.1/Cargo.toml +386 -0
  370. data/ext/cargo-vendor/wasmtime-21.0.1/build.rs +37 -0
  371. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile/code_builder.rs +275 -0
  372. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile/runtime.rs +176 -0
  373. data/ext/cargo-vendor/wasmtime-21.0.1/src/compile.rs +910 -0
  374. data/ext/cargo-vendor/wasmtime-21.0.1/src/config.rs +2904 -0
  375. data/ext/cargo-vendor/wasmtime-21.0.1/src/engine/serialization.rs +887 -0
  376. data/ext/cargo-vendor/wasmtime-21.0.1/src/engine.rs +728 -0
  377. data/ext/cargo-vendor/wasmtime-21.0.1/src/lib.rs +328 -0
  378. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/jitdump.rs +67 -0
  379. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/perfmap.rs +48 -0
  380. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent/vtune.rs +81 -0
  381. data/ext/cargo-vendor/wasmtime-21.0.1/src/profiling_agent.rs +106 -0
  382. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/code.rs +102 -0
  383. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/code_memory.rs +337 -0
  384. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/component.rs +661 -0
  385. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func/host.rs +440 -0
  386. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func/options.rs +555 -0
  387. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func/typed.rs +2498 -0
  388. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/func.rs +746 -0
  389. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/instance.rs +814 -0
  390. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/linker.rs +783 -0
  391. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/matching.rs +217 -0
  392. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/mod.rs +783 -0
  393. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/resource_table.rs +355 -0
  394. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/resources.rs +1133 -0
  395. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/storage.rs +43 -0
  396. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/store.rs +29 -0
  397. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/types.rs +892 -0
  398. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/component/values.rs +980 -0
  399. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/coredump.rs +342 -0
  400. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/debug.rs +166 -0
  401. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals/global.rs +310 -0
  402. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals/table.rs +477 -0
  403. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/externals.rs +236 -0
  404. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/func/typed.rs +899 -0
  405. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/func.rs +2627 -0
  406. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/disabled/anyref.rs +46 -0
  407. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/disabled/externref.rs +50 -0
  408. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/disabled/rooting.rs +224 -0
  409. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/anyref.rs +473 -0
  410. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/externref.rs +650 -0
  411. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/i31.rs +346 -0
  412. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc/enabled/rooting.rs +1588 -0
  413. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/gc.rs +89 -0
  414. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/instance.rs +992 -0
  415. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/instantiate.rs +346 -0
  416. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/limits.rs +399 -0
  417. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/linker.rs +1506 -0
  418. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/memory.rs +998 -0
  419. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/module/registry.rs +353 -0
  420. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/module.rs +1295 -0
  421. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/profiling.rs +221 -0
  422. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/resources.rs +33 -0
  423. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/signatures.rs +216 -0
  424. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/stack.rs +73 -0
  425. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store/context.rs +243 -0
  426. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store/data.rs +301 -0
  427. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store/func_refs.rs +90 -0
  428. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/store.rs +2820 -0
  429. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/func.rs +139 -0
  430. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/global.rs +68 -0
  431. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/memory.rs +287 -0
  432. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline/table.rs +29 -0
  433. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trampoline.rs +78 -0
  434. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/trap.rs +642 -0
  435. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/type_registry.rs +807 -0
  436. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/types/matching.rs +421 -0
  437. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/types.rs +2239 -0
  438. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/unix.rs +40 -0
  439. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/v128.rs +131 -0
  440. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/values.rs +966 -0
  441. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/arch/aarch64.rs +76 -0
  442. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/arch/x86_64.rs +41 -0
  443. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/async_yield.rs +35 -0
  444. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component/libcalls.rs +571 -0
  445. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component/resources.rs +352 -0
  446. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/component.rs +860 -0
  447. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/const_expr.rs +102 -0
  448. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/cow.rs +893 -0
  449. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/debug_builtins.rs +59 -0
  450. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/export.rs +108 -0
  451. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/disabled.rs +24 -0
  452. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled/drc.rs +968 -0
  453. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled/externref.rs +116 -0
  454. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled/free_list.rs +771 -0
  455. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/enabled.rs +18 -0
  456. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/gc_ref.rs +491 -0
  457. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/gc_runtime.rs +506 -0
  458. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/host_data.rs +82 -0
  459. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc/i31.rs +87 -0
  460. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/gc.rs +245 -0
  461. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/imports.rs +29 -0
  462. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/on_demand.rs +218 -0
  463. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/gc_heap_pool.rs +93 -0
  464. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/generic_stack_pool.rs +66 -0
  465. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/index_allocator.rs +705 -0
  466. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/memory_pool.rs +1000 -0
  467. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/table_pool.rs +233 -0
  468. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling/unix_stack_pool.rs +245 -0
  469. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator/pooling.rs +656 -0
  470. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance/allocator.rs +798 -0
  471. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/instance.rs +1519 -0
  472. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/libcalls.rs +834 -0
  473. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/memory.rs +744 -0
  474. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mmap.rs +220 -0
  475. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mmap_vec.rs +162 -0
  476. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/module_id.rs +43 -0
  477. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/enabled.rs +214 -0
  478. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/mod.rs +54 -0
  479. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/pkru.rs +104 -0
  480. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/mpk/sys.rs +114 -0
  481. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/send_sync_ptr.rs +106 -0
  482. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/store_box.rs +37 -0
  483. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/capi.rs +200 -0
  484. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/mmap.rs +112 -0
  485. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/mod.rs +34 -0
  486. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/traphandlers.rs +55 -0
  487. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/custom/vm.rs +109 -0
  488. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/miri/mmap.rs +95 -0
  489. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/miri/mod.rs +24 -0
  490. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/miri/traphandlers.rs +47 -0
  491. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/mod.rs +25 -0
  492. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/machports.rs +416 -0
  493. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/mmap.rs +162 -0
  494. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/mod.rs +35 -0
  495. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/signals.rs +401 -0
  496. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/unwind.rs +150 -0
  497. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/unix/vm.rs +215 -0
  498. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/windows/mmap.rs +221 -0
  499. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/windows/mod.rs +20 -0
  500. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/sys/windows/traphandlers.rs +104 -0
  501. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/table.rs +847 -0
  502. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/threads/parking_spot.rs +623 -0
  503. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/threads/shared_memory.rs +233 -0
  504. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/threads/shared_memory_disabled.rs +101 -0
  505. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers/backtrace.rs +267 -0
  506. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers/coredump_disabled.rs +16 -0
  507. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers/coredump_enabled.rs +42 -0
  508. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/traphandlers.rs +768 -0
  509. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/vmcontext/vm_host_func_context.rs +138 -0
  510. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm/vmcontext.rs +1337 -0
  511. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/vm.rs +287 -0
  512. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime/windows.rs +35 -0
  513. data/ext/cargo-vendor/wasmtime-21.0.1/src/runtime.rs +110 -0
  514. data/ext/cargo-vendor/wasmtime-21.0.1/src/sync_nostd.rs +255 -0
  515. data/ext/cargo-vendor/wasmtime-21.0.1/src/sync_std.rs +52 -0
  516. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/.cargo-checksum.json +1 -0
  517. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/Cargo.toml +22 -0
  518. data/ext/cargo-vendor/wasmtime-asm-macros-21.0.1/src/lib.rs +83 -0
  519. data/ext/cargo-vendor/wasmtime-cache-21.0.1/.cargo-checksum.json +1 -0
  520. data/ext/cargo-vendor/wasmtime-cache-21.0.1/Cargo.toml +88 -0
  521. data/ext/cargo-vendor/wasmtime-cache-21.0.1/src/lib.rs +235 -0
  522. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/.cargo-checksum.json +1 -0
  523. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/Cargo.toml +79 -0
  524. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/src/bindgen.rs +436 -0
  525. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/src/component.rs +1295 -0
  526. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/tests/codegen.rs +576 -0
  527. data/ext/cargo-vendor/wasmtime-component-macro-21.0.1/tests/codegen_no_std.rs +16 -0
  528. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/.cargo-checksum.json +1 -0
  529. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/Cargo.toml +25 -0
  530. data/ext/cargo-vendor/wasmtime-component-util-21.0.1/src/lib.rs +182 -0
  531. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/.cargo-checksum.json +1 -0
  532. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/Cargo.toml +114 -0
  533. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/compiler/component.rs +968 -0
  534. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/compiler.rs +1383 -0
  535. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/gc.rs +252 -0
  536. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/attr.rs +320 -0
  537. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/expression.rs +1248 -0
  538. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/line_program.rs +287 -0
  539. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/mod.rs +256 -0
  540. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/unit.rs +529 -0
  541. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/transform/utils.rs +186 -0
  542. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug/write_debuginfo.rs +196 -0
  543. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/debug.rs +18 -0
  544. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/func_environ.rs +2888 -0
  545. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/gc/enabled.rs +648 -0
  546. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/gc.rs +198 -0
  547. data/ext/cargo-vendor/wasmtime-cranelift-21.0.1/src/lib.rs +511 -0
  548. data/ext/cargo-vendor/wasmtime-environ-21.0.1/.cargo-checksum.json +1 -0
  549. data/ext/cargo-vendor/wasmtime-environ-21.0.1/Cargo.lock +772 -0
  550. data/ext/cargo-vendor/wasmtime-environ-21.0.1/Cargo.toml +154 -0
  551. data/ext/cargo-vendor/wasmtime-environ-21.0.1/examples/factc.rs +198 -0
  552. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/address_map.rs +73 -0
  553. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/mod.rs +419 -0
  554. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_artifacts.rs +315 -0
  555. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_environ.rs +1337 -0
  556. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/module_types.rs +362 -0
  557. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/compile/trap_encoding.rs +70 -0
  558. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/compiler.rs +20 -0
  559. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/dfg.rs +691 -0
  560. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/info.rs +672 -0
  561. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/translate/adapt.rs +455 -0
  562. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/translate.rs +978 -0
  563. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types.rs +1029 -0
  564. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types_builder/resources.rs +233 -0
  565. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component/types_builder.rs +997 -0
  566. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/component.rs +107 -0
  567. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/demangling.rs +28 -0
  568. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/core_types.rs +25 -0
  569. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/signature.rs +119 -0
  570. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/trampoline.rs +3234 -0
  571. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/transcode.rs +90 -0
  572. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact/traps.rs +116 -0
  573. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/fact.rs +714 -0
  574. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/lib.rs +161 -0
  575. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module.rs +697 -0
  576. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module_artifacts.rs +146 -0
  577. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/module_types.rs +91 -0
  578. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/scopevec.rs +80 -0
  579. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/stack_map.rs +37 -0
  580. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/trap_encoding.rs +189 -0
  581. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/tunables.rs +168 -0
  582. data/ext/cargo-vendor/wasmtime-environ-21.0.1/src/vmoffsets.rs +1015 -0
  583. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/.cargo-checksum.json +1 -0
  584. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/Cargo.toml +64 -0
  585. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/build.rs +38 -0
  586. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/lib.rs +328 -0
  587. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/unix.rs +490 -0
  588. data/ext/cargo-vendor/wasmtime-fiber-21.0.1/src/windows.rs +166 -0
  589. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/.cargo-checksum.json +1 -0
  590. data/ext/cargo-vendor/wasmtime-jit-debug-21.0.1/Cargo.toml +67 -0
  591. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/.cargo-checksum.json +1 -0
  592. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/Cargo.toml +51 -0
  593. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/lib.rs +109 -0
  594. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/libc.rs +163 -0
  595. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/miri.rs +10 -0
  596. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-21.0.1/src/win.rs +49 -0
  597. data/ext/cargo-vendor/wasmtime-slab-21.0.1/.cargo-checksum.json +1 -0
  598. data/ext/cargo-vendor/wasmtime-slab-21.0.1/Cargo.toml +21 -0
  599. data/ext/cargo-vendor/wasmtime-slab-21.0.1/src/lib.rs +498 -0
  600. data/ext/cargo-vendor/wasmtime-types-21.0.1/.cargo-checksum.json +1 -0
  601. data/ext/cargo-vendor/wasmtime-types-21.0.1/Cargo.toml +55 -0
  602. data/ext/cargo-vendor/wasmtime-types-21.0.1/src/error.rs +81 -0
  603. data/ext/cargo-vendor/wasmtime-types-21.0.1/src/lib.rs +1572 -0
  604. data/ext/cargo-vendor/wasmtime-versioned-export-macros-21.0.1/.cargo-checksum.json +1 -0
  605. data/ext/cargo-vendor/wasmtime-versioned-export-macros-21.0.1/Cargo.toml +32 -0
  606. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/.cargo-checksum.json +1 -0
  607. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/Cargo.toml +200 -0
  608. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/bindings.rs +280 -0
  609. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/ctx.rs +667 -0
  610. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/filesystem.rs +446 -0
  611. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/lib.rs +426 -0
  612. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/preview0.rs +877 -0
  613. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/src/preview1.rs +2660 -0
  614. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/api.rs +198 -0
  615. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/async_.rs +397 -0
  616. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/main.rs +91 -0
  617. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/preview1.rs +251 -0
  618. data/ext/cargo-vendor/wasmtime-wasi-21.0.1/tests/all/sync.rs +331 -0
  619. data/ext/cargo-vendor/wasmtime-winch-21.0.1/.cargo-checksum.json +1 -0
  620. data/ext/cargo-vendor/wasmtime-winch-21.0.1/Cargo.toml +81 -0
  621. data/ext/cargo-vendor/wasmtime-winch-21.0.1/src/compiler.rs +261 -0
  622. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/.cargo-checksum.json +1 -0
  623. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/Cargo.toml +46 -0
  624. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/src/lib.rs +2541 -0
  625. data/ext/cargo-vendor/wasmtime-wit-bindgen-21.0.1/src/rust.rs +421 -0
  626. data/ext/cargo-vendor/wiggle-21.0.1/.cargo-checksum.json +1 -0
  627. data/ext/cargo-vendor/wiggle-21.0.1/Cargo.toml +123 -0
  628. data/ext/cargo-vendor/wiggle-generate-21.0.1/.cargo-checksum.json +1 -0
  629. data/ext/cargo-vendor/wiggle-generate-21.0.1/Cargo.toml +66 -0
  630. data/ext/cargo-vendor/wiggle-macro-21.0.1/.cargo-checksum.json +1 -0
  631. data/ext/cargo-vendor/wiggle-macro-21.0.1/Cargo.toml +55 -0
  632. data/ext/cargo-vendor/winch-codegen-0.19.1/.cargo-checksum.json +1 -0
  633. data/ext/cargo-vendor/winch-codegen-0.19.1/Cargo.toml +76 -0
  634. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/context.rs +534 -0
  635. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/env.rs +440 -0
  636. data/ext/cargo-vendor/winch-codegen-0.19.1/src/codegen/mod.rs +882 -0
  637. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/abi.rs +291 -0
  638. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/address.rs +143 -0
  639. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/asm.rs +380 -0
  640. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/masm.rs +566 -0
  641. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/mod.rs +158 -0
  642. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/aarch64/regs.rs +161 -0
  643. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/reg.rs +73 -0
  644. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/x64/asm.rs +1423 -0
  645. data/ext/cargo-vendor/winch-codegen-0.19.1/src/isa/x64/masm.rs +1120 -0
  646. data/ext/cargo-vendor/winch-codegen-0.19.1/src/masm.rs +941 -0
  647. data/ext/cargo-vendor/winch-codegen-0.19.1/src/regalloc.rs +65 -0
  648. data/ext/cargo-vendor/winch-codegen-0.19.1/src/regset.rs +194 -0
  649. data/ext/cargo-vendor/winch-codegen-0.19.1/src/visitor.rs +2144 -0
  650. data/ext/cargo-vendor/wit-parser-0.207.0/.cargo-checksum.json +1 -0
  651. data/ext/cargo-vendor/wit-parser-0.207.0/Cargo.toml +109 -0
  652. data/ext/cargo-vendor/wit-parser-0.207.0/src/ast/resolve.rs +1442 -0
  653. data/ext/cargo-vendor/wit-parser-0.207.0/src/decoding.rs +1764 -0
  654. data/ext/cargo-vendor/wit-parser-0.207.0/src/lib.rs +777 -0
  655. data/ext/cargo-vendor/wit-parser-0.207.0/src/live.rs +126 -0
  656. data/ext/cargo-vendor/wit-parser-0.207.0/src/resolve.rs +2337 -0
  657. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/resources-multiple-returns-borrow.wit.result +5 -0
  658. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/resources-return-borrow.wit.result +5 -0
  659. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow1.wit +7 -0
  660. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow1.wit.result +5 -0
  661. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow2.wit +8 -0
  662. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow2.wit.result +5 -0
  663. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow3.wit +7 -0
  664. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow3.wit.result +5 -0
  665. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow4.wit +7 -0
  666. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow4.wit.result +5 -0
  667. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow5.wit +7 -0
  668. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow5.wit.result +5 -0
  669. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow6.wit +7 -0
  670. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow6.wit.result +5 -0
  671. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow7.wit +11 -0
  672. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow7.wit.result +5 -0
  673. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow8/deps/baz.wit +9 -0
  674. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow8/foo.wit +7 -0
  675. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/parse-fail/return-borrow8.wit.result +8 -0
  676. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-top-level-resources.wit +24 -0
  677. data/ext/cargo-vendor/wit-parser-0.207.0/tests/ui/world-top-level-resources.wit.json +231 -0
  678. data/ext/src/lib.rs +1 -0
  679. data/ext/src/ruby_api/config.rs +1 -12
  680. data/ext/src/ruby_api/engine.rs +3 -6
  681. data/ext/src/ruby_api/store.rs +68 -5
  682. data/lib/wasmtime/version.rb +1 -1
  683. metadata +1601 -1408
  684. data/ext/cargo-vendor/bincode-1.3.3/.cargo-checksum.json +0 -1
  685. data/ext/cargo-vendor/bincode-1.3.3/Cargo.toml +0 -37
  686. data/ext/cargo-vendor/bincode-1.3.3/LICENSE.md +0 -21
  687. data/ext/cargo-vendor/bincode-1.3.3/readme.md +0 -112
  688. data/ext/cargo-vendor/bincode-1.3.3/src/byteorder.rs +0 -385
  689. data/ext/cargo-vendor/bincode-1.3.3/src/config/endian.rs +0 -27
  690. data/ext/cargo-vendor/bincode-1.3.3/src/config/int.rs +0 -682
  691. data/ext/cargo-vendor/bincode-1.3.3/src/config/legacy.rs +0 -253
  692. data/ext/cargo-vendor/bincode-1.3.3/src/config/limit.rs +0 -49
  693. data/ext/cargo-vendor/bincode-1.3.3/src/config/mod.rs +0 -408
  694. data/ext/cargo-vendor/bincode-1.3.3/src/config/trailing.rs +0 -37
  695. data/ext/cargo-vendor/bincode-1.3.3/src/de/mod.rs +0 -515
  696. data/ext/cargo-vendor/bincode-1.3.3/src/de/read.rs +0 -202
  697. data/ext/cargo-vendor/bincode-1.3.3/src/error.rs +0 -115
  698. data/ext/cargo-vendor/bincode-1.3.3/src/internal.rs +0 -124
  699. data/ext/cargo-vendor/bincode-1.3.3/src/lib.rs +0 -201
  700. data/ext/cargo-vendor/bincode-1.3.3/src/ser/mod.rs +0 -772
  701. data/ext/cargo-vendor/bincode-1.3.3/tests/test.rs +0 -899
  702. data/ext/cargo-vendor/cranelift-bforest-0.107.2/.cargo-checksum.json +0 -1
  703. data/ext/cargo-vendor/cranelift-bforest-0.107.2/Cargo.toml +0 -40
  704. data/ext/cargo-vendor/cranelift-codegen-0.107.2/.cargo-checksum.json +0 -1
  705. data/ext/cargo-vendor/cranelift-codegen-0.107.2/Cargo.toml +0 -178
  706. data/ext/cargo-vendor/cranelift-codegen-0.107.2/build.rs +0 -396
  707. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/alias_analysis.rs +0 -403
  708. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/context.rs +0 -386
  709. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ctxhash.rs +0 -167
  710. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/egraph/elaborate.rs +0 -835
  711. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/egraph.rs +0 -838
  712. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/fx.rs +0 -105
  713. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/incremental_cache.rs +0 -256
  714. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/instructions.rs +0 -1019
  715. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/abi.rs +0 -1707
  716. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/args.rs +0 -779
  717. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/emit.rs +0 -3932
  718. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/emit_tests.rs +0 -7919
  719. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/imms.rs +0 -1218
  720. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/mod.rs +0 -3083
  721. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/regs.rs +0 -292
  722. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst.isle +0 -4218
  723. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/lower/isle.rs +0 -884
  724. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/pcc.rs +0 -565
  725. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/mod.rs +0 -432
  726. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/abi.rs +0 -1109
  727. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/args.rs +0 -1968
  728. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/emit.rs +0 -3466
  729. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/emit_tests.rs +0 -2146
  730. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/mod.rs +0 -2041
  731. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/regs.rs +0 -175
  732. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/vector.rs +0 -1162
  733. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst.isle +0 -2944
  734. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/lower/isle.rs +0 -625
  735. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/lower.isle +0 -2872
  736. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/abi.rs +0 -1047
  737. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/args.rs +0 -347
  738. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/emit.rs +0 -3646
  739. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/imms.rs +0 -202
  740. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/mod.rs +0 -3423
  741. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/regs.rs +0 -187
  742. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/abi.rs +0 -1369
  743. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/args.rs +0 -2289
  744. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/emit.rs +0 -4383
  745. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/emit_tests.rs +0 -5131
  746. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/mod.rs +0 -2798
  747. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/regs.rs +0 -276
  748. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst.isle +0 -5304
  749. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower/isle.rs +0 -1066
  750. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower.isle +0 -4809
  751. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower.rs +0 -339
  752. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/pcc.rs +0 -1003
  753. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/lib.rs +0 -106
  754. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/abi.rs +0 -2594
  755. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/blockorder.rs +0 -465
  756. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/isle.rs +0 -914
  757. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/lower.rs +0 -1452
  758. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/mod.rs +0 -555
  759. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/reg.rs +0 -562
  760. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/valueregs.rs +0 -132
  761. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/vcode.rs +0 -1807
  762. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/nan_canonicalization.rs +0 -110
  763. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/opts/arithmetic.isle +0 -179
  764. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/opts/icmp.isle +0 -197
  765. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/remove_constant_phis.rs +0 -420
  766. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/scoped_hash_map.rs +0 -310
  767. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/settings.rs +0 -591
  768. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/.cargo-checksum.json +0 -1
  769. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/Cargo.toml +0 -35
  770. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/gen_inst.rs +0 -1784
  771. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/gen_settings.rs +0 -508
  772. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/gen_types.rs +0 -75
  773. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/isa/riscv64.rs +0 -160
  774. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/isa/x86.rs +0 -402
  775. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/lib.rs +0 -59
  776. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/shared/settings.rs +0 -355
  777. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/srcgen.rs +0 -470
  778. data/ext/cargo-vendor/cranelift-codegen-shared-0.107.2/.cargo-checksum.json +0 -1
  779. data/ext/cargo-vendor/cranelift-codegen-shared-0.107.2/Cargo.toml +0 -22
  780. data/ext/cargo-vendor/cranelift-control-0.107.2/.cargo-checksum.json +0 -1
  781. data/ext/cargo-vendor/cranelift-control-0.107.2/Cargo.toml +0 -30
  782. data/ext/cargo-vendor/cranelift-entity-0.107.2/.cargo-checksum.json +0 -1
  783. data/ext/cargo-vendor/cranelift-entity-0.107.2/Cargo.toml +0 -50
  784. data/ext/cargo-vendor/cranelift-entity-0.107.2/src/lib.rs +0 -317
  785. data/ext/cargo-vendor/cranelift-frontend-0.107.2/.cargo-checksum.json +0 -1
  786. data/ext/cargo-vendor/cranelift-frontend-0.107.2/Cargo.toml +0 -69
  787. data/ext/cargo-vendor/cranelift-frontend-0.107.2/src/switch.rs +0 -654
  788. data/ext/cargo-vendor/cranelift-isle-0.107.2/.cargo-checksum.json +0 -1
  789. data/ext/cargo-vendor/cranelift-isle-0.107.2/Cargo.toml +0 -46
  790. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/codegen.rs +0 -886
  791. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/lib.rs +0 -271
  792. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/sema.rs +0 -2492
  793. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/serialize.rs +0 -846
  794. data/ext/cargo-vendor/cranelift-isle-0.107.2/src/trie_again.rs +0 -683
  795. data/ext/cargo-vendor/cranelift-native-0.107.2/.cargo-checksum.json +0 -1
  796. data/ext/cargo-vendor/cranelift-native-0.107.2/Cargo.toml +0 -45
  797. data/ext/cargo-vendor/cranelift-wasm-0.107.2/.cargo-checksum.json +0 -1
  798. data/ext/cargo-vendor/cranelift-wasm-0.107.2/Cargo.toml +0 -107
  799. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/code_translator.rs +0 -3683
  800. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/environ/dummy.rs +0 -912
  801. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/environ/spec.rs +0 -945
  802. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/sections_translator.rs +0 -409
  803. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.21/.cargo-checksum.json +0 -1
  804. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.21/Cargo.toml +0 -48
  805. data/ext/cargo-vendor/rb-sys-0.9.97/.cargo-checksum.json +0 -1
  806. data/ext/cargo-vendor/rb-sys-0.9.97/Cargo.toml +0 -54
  807. data/ext/cargo-vendor/rb-sys-0.9.97/build/main.rs +0 -238
  808. data/ext/cargo-vendor/rb-sys-0.9.97/build/stable_api_config.rs +0 -133
  809. data/ext/cargo-vendor/rb-sys-0.9.97/src/bindings.rs +0 -20
  810. data/ext/cargo-vendor/rb-sys-0.9.97/src/tracking_allocator.rs +0 -265
  811. data/ext/cargo-vendor/rb-sys-build-0.9.97/.cargo-checksum.json +0 -1
  812. data/ext/cargo-vendor/rb-sys-build-0.9.97/Cargo.toml +0 -62
  813. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/bindings/stable_api.rs +0 -202
  814. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/bindings.rs +0 -250
  815. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/cc.rs +0 -365
  816. data/ext/cargo-vendor/rb-sys-build-0.9.97/src/utils.rs +0 -52
  817. data/ext/cargo-vendor/wasi-common-20.0.2/.cargo-checksum.json +0 -1
  818. data/ext/cargo-vendor/wasi-common-20.0.2/Cargo.toml +0 -220
  819. data/ext/cargo-vendor/wasi-common-20.0.2/tests/all/async_.rs +0 -293
  820. data/ext/cargo-vendor/wasi-common-20.0.2/tests/all/main.rs +0 -21
  821. data/ext/cargo-vendor/wasi-common-20.0.2/tests/all/sync.rs +0 -279
  822. data/ext/cargo-vendor/wasm-encoder-0.202.0/.cargo-checksum.json +0 -1
  823. data/ext/cargo-vendor/wasm-encoder-0.202.0/Cargo.toml +0 -43
  824. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/code.rs +0 -3444
  825. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/data.rs +0 -185
  826. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/elements.rs +0 -220
  827. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/globals.rs +0 -101
  828. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/imports.rs +0 -156
  829. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/memories.rs +0 -111
  830. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/tables.rs +0 -116
  831. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/core/types.rs +0 -673
  832. data/ext/cargo-vendor/wasmparser-0.202.0/.cargo-checksum.json +0 -1
  833. data/ext/cargo-vendor/wasmparser-0.202.0/Cargo.lock +0 -744
  834. data/ext/cargo-vendor/wasmparser-0.202.0/Cargo.toml +0 -66
  835. data/ext/cargo-vendor/wasmparser-0.202.0/src/binary_reader.rs +0 -1849
  836. data/ext/cargo-vendor/wasmparser-0.202.0/src/lib.rs +0 -766
  837. data/ext/cargo-vendor/wasmparser-0.202.0/src/limits.rs +0 -64
  838. data/ext/cargo-vendor/wasmparser-0.202.0/src/parser.rs +0 -1611
  839. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/canonicals.rs +0 -120
  840. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/instances.rs +0 -163
  841. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/names.rs +0 -102
  842. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/start.rs +0 -30
  843. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/types.rs +0 -549
  844. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/code.rs +0 -146
  845. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/coredumps.rs +0 -243
  846. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/custom.rs +0 -63
  847. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/data.rs +0 -96
  848. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/dylink0.rs +0 -109
  849. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/elements.rs +0 -152
  850. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/globals.rs +0 -49
  851. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/linking.rs +0 -449
  852. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/memories.rs +0 -56
  853. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/names.rs +0 -156
  854. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/operators.rs +0 -411
  855. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/tables.rs +0 -87
  856. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/types/matches.rs +0 -277
  857. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core/types.rs +0 -1680
  858. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/core.rs +0 -41
  859. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers.rs +0 -316
  860. data/ext/cargo-vendor/wasmparser-0.202.0/src/resources.rs +0 -235
  861. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/component.rs +0 -3238
  862. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/core/canonical.rs +0 -233
  863. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/core.rs +0 -1400
  864. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/func.rs +0 -338
  865. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/names.rs +0 -929
  866. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/operators.rs +0 -4076
  867. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/types.rs +0 -4449
  868. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator.rs +0 -1619
  869. data/ext/cargo-vendor/wasmprinter-0.202.0/.cargo-checksum.json +0 -1
  870. data/ext/cargo-vendor/wasmprinter-0.202.0/Cargo.toml +0 -45
  871. data/ext/cargo-vendor/wasmprinter-0.202.0/src/lib.rs +0 -3202
  872. data/ext/cargo-vendor/wasmprinter-0.202.0/src/operator.rs +0 -1131
  873. data/ext/cargo-vendor/wasmprinter-0.202.0/tests/all.rs +0 -279
  874. data/ext/cargo-vendor/wasmtime-20.0.2/.cargo-checksum.json +0 -1
  875. data/ext/cargo-vendor/wasmtime-20.0.2/Cargo.toml +0 -268
  876. data/ext/cargo-vendor/wasmtime-20.0.2/src/compile/code_builder.rs +0 -201
  877. data/ext/cargo-vendor/wasmtime-20.0.2/src/compile/runtime.rs +0 -175
  878. data/ext/cargo-vendor/wasmtime-20.0.2/src/compile.rs +0 -897
  879. data/ext/cargo-vendor/wasmtime-20.0.2/src/config.rs +0 -2695
  880. data/ext/cargo-vendor/wasmtime-20.0.2/src/engine/serialization.rs +0 -849
  881. data/ext/cargo-vendor/wasmtime-20.0.2/src/engine.rs +0 -741
  882. data/ext/cargo-vendor/wasmtime-20.0.2/src/lib.rs +0 -303
  883. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent/jitdump.rs +0 -66
  884. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent/perfmap.rs +0 -47
  885. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent/vtune.rs +0 -80
  886. data/ext/cargo-vendor/wasmtime-20.0.2/src/profiling_agent.rs +0 -105
  887. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/code.rs +0 -102
  888. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/code_memory.rs +0 -335
  889. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/component.rs +0 -661
  890. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func/host.rs +0 -439
  891. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func/options.rs +0 -554
  892. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func/typed.rs +0 -2484
  893. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/func.rs +0 -747
  894. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/instance.rs +0 -804
  895. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/linker.rs +0 -786
  896. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/matching.rs +0 -217
  897. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/mod.rs +0 -756
  898. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/resource_table.rs +0 -350
  899. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/resources.rs +0 -1133
  900. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/storage.rs +0 -43
  901. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/store.rs +0 -28
  902. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/types.rs +0 -892
  903. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/component/values.rs +0 -978
  904. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/coredump.rs +0 -336
  905. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/debug.rs +0 -165
  906. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/externals/global.rs +0 -300
  907. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/externals/table.rs +0 -480
  908. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/externals.rs +0 -236
  909. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/func/typed.rs +0 -898
  910. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/func.rs +0 -2633
  911. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/disabled/anyref.rs +0 -46
  912. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/disabled/externref.rs +0 -50
  913. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/disabled/rooting.rs +0 -222
  914. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/anyref.rs +0 -472
  915. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/externref.rs +0 -644
  916. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/i31.rs +0 -345
  917. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc/enabled/rooting.rs +0 -1543
  918. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/gc.rs +0 -87
  919. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/instance.rs +0 -992
  920. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/instantiate.rs +0 -345
  921. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/limits.rs +0 -398
  922. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/linker.rs +0 -1521
  923. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/memory.rs +0 -999
  924. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/module/registry.rs +0 -354
  925. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/module.rs +0 -1295
  926. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/profiling.rs +0 -224
  927. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/resources.rs +0 -33
  928. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/signatures.rs +0 -216
  929. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/stack.rs +0 -73
  930. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store/context.rs +0 -243
  931. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store/data.rs +0 -289
  932. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store/func_refs.rs +0 -85
  933. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/store.rs +0 -2796
  934. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/func.rs +0 -138
  935. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/global.rs +0 -68
  936. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/memory.rs +0 -286
  937. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline/table.rs +0 -34
  938. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trampoline.rs +0 -77
  939. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/trap.rs +0 -641
  940. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/type_registry.rs +0 -632
  941. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/types/matching.rs +0 -367
  942. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/types.rs +0 -1378
  943. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/unix.rs +0 -39
  944. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/v128.rs +0 -131
  945. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/values.rs +0 -945
  946. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime/windows.rs +0 -34
  947. data/ext/cargo-vendor/wasmtime-20.0.2/src/runtime.rs +0 -112
  948. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.2/.cargo-checksum.json +0 -1
  949. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.2/Cargo.toml +0 -22
  950. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.2/src/lib.rs +0 -81
  951. data/ext/cargo-vendor/wasmtime-cache-20.0.2/.cargo-checksum.json +0 -1
  952. data/ext/cargo-vendor/wasmtime-cache-20.0.2/Cargo.toml +0 -81
  953. data/ext/cargo-vendor/wasmtime-cache-20.0.2/src/lib.rs +0 -235
  954. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/.cargo-checksum.json +0 -1
  955. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/Cargo.toml +0 -67
  956. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/src/bindgen.rs +0 -390
  957. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/src/component.rs +0 -1295
  958. data/ext/cargo-vendor/wasmtime-component-macro-20.0.2/tests/codegen.rs +0 -342
  959. data/ext/cargo-vendor/wasmtime-component-util-20.0.2/.cargo-checksum.json +0 -1
  960. data/ext/cargo-vendor/wasmtime-component-util-20.0.2/Cargo.toml +0 -25
  961. data/ext/cargo-vendor/wasmtime-component-util-20.0.2/src/lib.rs +0 -180
  962. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/.cargo-checksum.json +0 -1
  963. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/Cargo.toml +0 -114
  964. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/compiler/component.rs +0 -962
  965. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/compiler.rs +0 -1369
  966. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/gc.rs +0 -239
  967. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/attr.rs +0 -345
  968. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/expression.rs +0 -1252
  969. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/line_program.rs +0 -282
  970. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/mod.rs +0 -126
  971. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/unit.rs +0 -522
  972. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/transform/utils.rs +0 -187
  973. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug/write_debuginfo.rs +0 -187
  974. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/debug.rs +0 -18
  975. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/func_environ.rs +0 -2672
  976. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/gc/enabled.rs +0 -649
  977. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/gc.rs +0 -198
  978. data/ext/cargo-vendor/wasmtime-cranelift-20.0.2/src/lib.rs +0 -505
  979. data/ext/cargo-vendor/wasmtime-environ-20.0.2/.cargo-checksum.json +0 -1
  980. data/ext/cargo-vendor/wasmtime-environ-20.0.2/Cargo.lock +0 -782
  981. data/ext/cargo-vendor/wasmtime-environ-20.0.2/Cargo.toml +0 -144
  982. data/ext/cargo-vendor/wasmtime-environ-20.0.2/examples/factc.rs +0 -205
  983. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/address_map.rs +0 -72
  984. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/mod.rs +0 -389
  985. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/module_artifacts.rs +0 -300
  986. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/compile/trap_encoding.rs +0 -69
  987. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/compiler.rs +0 -19
  988. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/dfg.rs +0 -690
  989. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/info.rs +0 -672
  990. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/translate/adapt.rs +0 -459
  991. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/translate.rs +0 -965
  992. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/types/resources.rs +0 -234
  993. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component/types.rs +0 -1972
  994. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/component.rs +0 -103
  995. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/demangling.rs +0 -28
  996. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/core_types.rs +0 -24
  997. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/signature.rs +0 -135
  998. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/trampoline.rs +0 -3233
  999. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/transcode.rs +0 -89
  1000. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact/traps.rs +0 -115
  1001. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/fact.rs +0 -711
  1002. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/lib.rs +0 -70
  1003. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module.rs +0 -780
  1004. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module_artifacts.rs +0 -145
  1005. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module_environ.rs +0 -1288
  1006. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/module_types.rs +0 -122
  1007. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/scopevec.rs +0 -78
  1008. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/stack_map.rs +0 -36
  1009. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/trap_encoding.rs +0 -188
  1010. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/tunables.rs +0 -158
  1011. data/ext/cargo-vendor/wasmtime-environ-20.0.2/src/vmoffsets.rs +0 -952
  1012. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/.cargo-checksum.json +0 -1
  1013. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/Cargo.toml +0 -63
  1014. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/build.rs +0 -26
  1015. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/src/lib.rs +0 -328
  1016. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/src/unix.rs +0 -265
  1017. data/ext/cargo-vendor/wasmtime-fiber-20.0.2/src/windows.rs +0 -166
  1018. data/ext/cargo-vendor/wasmtime-jit-debug-20.0.2/.cargo-checksum.json +0 -1
  1019. data/ext/cargo-vendor/wasmtime-jit-debug-20.0.2/Cargo.toml +0 -67
  1020. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/.cargo-checksum.json +0 -1
  1021. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/Cargo.toml +0 -47
  1022. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/lib.rs +0 -108
  1023. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/libc.rs +0 -149
  1024. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/miri.rs +0 -10
  1025. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.2/src/win.rs +0 -45
  1026. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/.cargo-checksum.json +0 -1
  1027. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/Cargo.toml +0 -147
  1028. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/build.rs +0 -24
  1029. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/arch/aarch64.rs +0 -76
  1030. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/arch/x86_64.rs +0 -41
  1031. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/async_yield.rs +0 -35
  1032. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/component/libcalls.rs +0 -571
  1033. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/component/resources.rs +0 -351
  1034. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/component.rs +0 -860
  1035. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/cow.rs +0 -888
  1036. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/debug_builtins.rs +0 -59
  1037. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/export.rs +0 -108
  1038. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/disabled.rs +0 -23
  1039. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled/drc.rs +0 -963
  1040. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled/externref.rs +0 -115
  1041. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled/free_list.rs +0 -767
  1042. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/enabled.rs +0 -18
  1043. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/gc_ref.rs +0 -486
  1044. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/gc_runtime.rs +0 -503
  1045. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/host_data.rs +0 -81
  1046. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc/i31.rs +0 -86
  1047. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/gc.rs +0 -244
  1048. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/imports.rs +0 -27
  1049. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/on_demand.rs +0 -217
  1050. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/gc_heap_pool.rs +0 -92
  1051. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/index_allocator.rs +0 -704
  1052. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/memory_pool.rs +0 -996
  1053. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/stack_pool.rs +0 -242
  1054. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling/table_pool.rs +0 -231
  1055. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator/pooling.rs +0 -699
  1056. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance/allocator.rs +0 -780
  1057. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/instance.rs +0 -1566
  1058. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/lib.rs +0 -289
  1059. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/libcalls.rs +0 -777
  1060. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/memory.rs +0 -751
  1061. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mmap.rs +0 -214
  1062. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mmap_vec.rs +0 -201
  1063. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/module_id.rs +0 -43
  1064. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/enabled.rs +0 -213
  1065. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/mod.rs +0 -54
  1066. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/pkru.rs +0 -104
  1067. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/mpk/sys.rs +0 -113
  1068. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/send_sync_ptr.rs +0 -106
  1069. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/store_box.rs +0 -35
  1070. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/capi.rs +0 -189
  1071. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/mmap.rs +0 -111
  1072. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/mod.rs +0 -24
  1073. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/traphandlers.rs +0 -55
  1074. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/custom/vm.rs +0 -108
  1075. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/miri/mmap.rs +0 -94
  1076. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/miri/mod.rs +0 -10
  1077. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/miri/traphandlers.rs +0 -47
  1078. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/mod.rs +0 -33
  1079. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/machports.rs +0 -416
  1080. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/mmap.rs +0 -151
  1081. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/mod.rs +0 -21
  1082. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/signals.rs +0 -401
  1083. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/unwind.rs +0 -149
  1084. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/unix/vm.rs +0 -208
  1085. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/windows/mmap.rs +0 -216
  1086. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/windows/mod.rs +0 -6
  1087. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/sys/windows/traphandlers.rs +0 -104
  1088. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/table.rs +0 -851
  1089. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/threads/parking_spot.rs +0 -621
  1090. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/threads/shared_memory.rs +0 -230
  1091. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/threads/shared_memory_disabled.rs +0 -100
  1092. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers/backtrace.rs +0 -265
  1093. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers/coredump_disabled.rs +0 -16
  1094. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers/coredump_enabled.rs +0 -40
  1095. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/traphandlers.rs +0 -785
  1096. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/vmcontext/vm_host_func_context.rs +0 -137
  1097. data/ext/cargo-vendor/wasmtime-runtime-20.0.2/src/vmcontext.rs +0 -1293
  1098. data/ext/cargo-vendor/wasmtime-slab-20.0.2/.cargo-checksum.json +0 -1
  1099. data/ext/cargo-vendor/wasmtime-slab-20.0.2/Cargo.toml +0 -21
  1100. data/ext/cargo-vendor/wasmtime-slab-20.0.2/src/lib.rs +0 -493
  1101. data/ext/cargo-vendor/wasmtime-types-20.0.2/.cargo-checksum.json +0 -1
  1102. data/ext/cargo-vendor/wasmtime-types-20.0.2/Cargo.toml +0 -36
  1103. data/ext/cargo-vendor/wasmtime-types-20.0.2/src/error.rs +0 -59
  1104. data/ext/cargo-vendor/wasmtime-types-20.0.2/src/lib.rs +0 -832
  1105. data/ext/cargo-vendor/wasmtime-versioned-export-macros-20.0.2/.cargo-checksum.json +0 -1
  1106. data/ext/cargo-vendor/wasmtime-versioned-export-macros-20.0.2/Cargo.toml +0 -32
  1107. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/.cargo-checksum.json +0 -1
  1108. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/Cargo.toml +0 -194
  1109. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/bindings.rs +0 -283
  1110. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/ctx.rs +0 -659
  1111. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/filesystem.rs +0 -433
  1112. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/lib.rs +0 -404
  1113. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/preview0.rs +0 -879
  1114. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/src/preview1.rs +0 -2601
  1115. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/api.rs +0 -194
  1116. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/async_.rs +0 -397
  1117. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/main.rs +0 -91
  1118. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/preview1.rs +0 -251
  1119. data/ext/cargo-vendor/wasmtime-wasi-20.0.2/tests/all/sync.rs +0 -333
  1120. data/ext/cargo-vendor/wasmtime-winch-20.0.2/.cargo-checksum.json +0 -1
  1121. data/ext/cargo-vendor/wasmtime-winch-20.0.2/Cargo.toml +0 -81
  1122. data/ext/cargo-vendor/wasmtime-winch-20.0.2/src/compiler.rs +0 -257
  1123. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/.cargo-checksum.json +0 -1
  1124. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/Cargo.toml +0 -41
  1125. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/src/lib.rs +0 -2213
  1126. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.2/src/rust.rs +0 -421
  1127. data/ext/cargo-vendor/wiggle-20.0.2/.cargo-checksum.json +0 -1
  1128. data/ext/cargo-vendor/wiggle-20.0.2/Cargo.toml +0 -122
  1129. data/ext/cargo-vendor/wiggle-generate-20.0.2/.cargo-checksum.json +0 -1
  1130. data/ext/cargo-vendor/wiggle-generate-20.0.2/Cargo.toml +0 -65
  1131. data/ext/cargo-vendor/wiggle-generate-20.0.2/LICENSE +0 -220
  1132. data/ext/cargo-vendor/wiggle-macro-20.0.2/.cargo-checksum.json +0 -1
  1133. data/ext/cargo-vendor/wiggle-macro-20.0.2/Cargo.toml +0 -55
  1134. data/ext/cargo-vendor/wiggle-macro-20.0.2/LICENSE +0 -220
  1135. data/ext/cargo-vendor/winch-codegen-0.18.2/.cargo-checksum.json +0 -1
  1136. data/ext/cargo-vendor/winch-codegen-0.18.2/Cargo.toml +0 -81
  1137. data/ext/cargo-vendor/winch-codegen-0.18.2/src/codegen/context.rs +0 -534
  1138. data/ext/cargo-vendor/winch-codegen-0.18.2/src/codegen/env.rs +0 -435
  1139. data/ext/cargo-vendor/winch-codegen-0.18.2/src/codegen/mod.rs +0 -756
  1140. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/abi.rs +0 -291
  1141. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/address.rs +0 -144
  1142. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/asm.rs +0 -252
  1143. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/masm.rs +0 -573
  1144. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/mod.rs +0 -154
  1145. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/aarch64/regs.rs +0 -149
  1146. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/reg.rs +0 -86
  1147. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/x64/asm.rs +0 -1423
  1148. data/ext/cargo-vendor/winch-codegen-0.18.2/src/isa/x64/masm.rs +0 -1256
  1149. data/ext/cargo-vendor/winch-codegen-0.18.2/src/masm.rs +0 -947
  1150. data/ext/cargo-vendor/winch-codegen-0.18.2/src/regalloc.rs +0 -65
  1151. data/ext/cargo-vendor/winch-codegen-0.18.2/src/regset.rs +0 -194
  1152. data/ext/cargo-vendor/winch-codegen-0.18.2/src/visitor.rs +0 -2149
  1153. data/ext/cargo-vendor/wit-parser-0.202.0/.cargo-checksum.json +0 -1
  1154. data/ext/cargo-vendor/wit-parser-0.202.0/Cargo.toml +0 -101
  1155. data/ext/cargo-vendor/wit-parser-0.202.0/src/ast/resolve.rs +0 -1443
  1156. data/ext/cargo-vendor/wit-parser-0.202.0/src/decoding.rs +0 -1764
  1157. data/ext/cargo-vendor/wit-parser-0.202.0/src/lib.rs +0 -765
  1158. data/ext/cargo-vendor/wit-parser-0.202.0/src/live.rs +0 -111
  1159. data/ext/cargo-vendor/wit-parser-0.202.0/src/resolve.rs +0 -2240
  1160. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/resources-multiple-returns-borrow.wit.json +0 -74
  1161. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/resources-return-borrow.wit.json +0 -69
  1162. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/world-top-level-resources.wit +0 -24
  1163. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/world-top-level-resources.wit.json +0 -240
  1164. data/ext/src/ruby_api/config/tracked_memory_creator.rs +0 -82
  1165. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/LICENSE +0 -0
  1166. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/README.md +0 -0
  1167. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/lib.rs +0 -0
  1168. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/map.rs +0 -0
  1169. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/node.rs +0 -0
  1170. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/path.rs +0 -0
  1171. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/pool.rs +0 -0
  1172. /data/ext/cargo-vendor/{cranelift-bforest-0.107.2 → cranelift-bforest-0.108.1}/src/set.rs +0 -0
  1173. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/LICENSE +0 -0
  1174. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/README.md +0 -0
  1175. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/benches/x64-evex-encoding.rs +0 -0
  1176. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/binemit/mod.rs +0 -0
  1177. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/binemit/stack_map.rs +0 -0
  1178. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/bitset.rs +0 -0
  1179. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/cfg_printer.rs +0 -0
  1180. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/constant_hash.rs +0 -0
  1181. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/cursor.rs +0 -0
  1182. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/data_value.rs +0 -0
  1183. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/dbg.rs +0 -0
  1184. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/dce.rs +0 -0
  1185. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/dominator_tree.rs +0 -0
  1186. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/egraph/cost.rs +0 -0
  1187. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/flowgraph.rs +0 -0
  1188. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/inst_predicates.rs +0 -0
  1189. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/atomic_rmw_op.rs +0 -0
  1190. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/builder.rs +0 -0
  1191. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/condcodes.rs +0 -0
  1192. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/constant.rs +0 -0
  1193. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/dfg.rs +0 -0
  1194. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/dynamic_type.rs +0 -0
  1195. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/entities.rs +0 -0
  1196. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/extfunc.rs +0 -0
  1197. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/extname.rs +0 -0
  1198. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/function.rs +0 -0
  1199. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/globalvalue.rs +0 -0
  1200. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/immediates.rs +0 -0
  1201. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/jumptable.rs +0 -0
  1202. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/known_symbol.rs +0 -0
  1203. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/layout.rs +0 -0
  1204. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/libcall.rs +0 -0
  1205. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/memflags.rs +0 -0
  1206. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/memtype.rs +0 -0
  1207. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/mod.rs +0 -0
  1208. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/pcc.rs +0 -0
  1209. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/progpoint.rs +0 -0
  1210. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/sourceloc.rs +0 -0
  1211. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/stackslot.rs +0 -0
  1212. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/trapcode.rs +0 -0
  1213. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/ir/types.rs +0 -0
  1214. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/inst/unwind/systemv.rs +0 -0
  1215. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/inst/unwind.rs +0 -0
  1216. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/inst_neon.isle +0 -0
  1217. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower/isle/generated_code.rs +0 -0
  1218. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower.isle +0 -0
  1219. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower.rs +0 -0
  1220. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/lower_dynamic_neon.isle +0 -0
  1221. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/mod.rs +0 -0
  1222. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/aarch64/settings.rs +0 -0
  1223. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/call_conv.rs +0 -0
  1224. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/encode.rs +0 -0
  1225. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/imms.rs +0 -0
  1226. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/unwind/systemv.rs +0 -0
  1227. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst/unwind.rs +0 -0
  1228. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/inst_vector.isle +0 -0
  1229. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/lower/isle/generated_code.rs +0 -0
  1230. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/lower.rs +0 -0
  1231. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/mod.rs +0 -0
  1232. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/riscv64/settings.rs +0 -0
  1233. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst/emit_tests.rs +0 -0
  1234. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst/unwind/systemv.rs +0 -0
  1235. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst/unwind.rs +0 -0
  1236. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/inst.isle +0 -0
  1237. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower/isle/generated_code.rs +0 -0
  1238. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower/isle.rs +0 -0
  1239. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower.isle +0 -0
  1240. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/lower.rs +0 -0
  1241. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/mod.rs +0 -0
  1242. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/s390x/settings.rs +0 -0
  1243. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/unwind/systemv.rs +0 -0
  1244. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/unwind/winx64.rs +0 -0
  1245. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/unwind.rs +0 -0
  1246. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/evex.rs +0 -0
  1247. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/mod.rs +0 -0
  1248. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/rex.rs +0 -0
  1249. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/encoding/vex.rs +0 -0
  1250. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/emit_state.rs +0 -0
  1251. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/unwind/systemv.rs +0 -0
  1252. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/unwind/winx64.rs +0 -0
  1253. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/inst/unwind.rs +0 -0
  1254. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/lower/isle/generated_code.rs +0 -0
  1255. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/mod.rs +0 -0
  1256. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isa/x64/settings.rs +0 -0
  1257. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/isle_prelude.rs +0 -0
  1258. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/iterators.rs +0 -0
  1259. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/legalizer/globalvalue.rs +0 -0
  1260. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/legalizer/mod.rs +0 -0
  1261. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/loop_analysis.rs +0 -0
  1262. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/buffer.rs +0 -0
  1263. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/compile.rs +0 -0
  1264. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/helpers.rs +0 -0
  1265. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/inst_common.rs +0 -0
  1266. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/machinst/pcc.rs +0 -0
  1267. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/README.md +0 -0
  1268. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/bitops.isle +0 -0
  1269. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/cprop.isle +0 -0
  1270. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/extends.isle +0 -0
  1271. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/generated_code.rs +0 -0
  1272. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/remat.isle +0 -0
  1273. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/selects.isle +0 -0
  1274. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/shifts.isle +0 -0
  1275. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/spaceship.isle +0 -0
  1276. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/spectre.isle +0 -0
  1277. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts/vector.isle +0 -0
  1278. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/opts.rs +0 -0
  1279. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/prelude.isle +0 -0
  1280. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/prelude_lower.isle +0 -0
  1281. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/prelude_opt.isle +0 -0
  1282. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/print_errors.rs +0 -0
  1283. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/result.rs +0 -0
  1284. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/souper_harvest.rs +0 -0
  1285. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/timing.rs +0 -0
  1286. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/unionfind.rs +0 -0
  1287. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/unreachable_code.rs +0 -0
  1288. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/value_label.rs +0 -0
  1289. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/verifier/mod.rs +0 -0
  1290. /data/ext/cargo-vendor/{cranelift-codegen-0.107.2 → cranelift-codegen-0.108.1}/src/write.rs +0 -0
  1291. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/LICENSE +0 -0
  1292. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/README.md +0 -0
  1293. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/formats.rs +0 -0
  1294. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/instructions.rs +0 -0
  1295. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/isa.rs +0 -0
  1296. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/mod.rs +0 -0
  1297. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/operands.rs +0 -0
  1298. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/settings.rs +0 -0
  1299. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/types.rs +0 -0
  1300. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/cdsl/typevar.rs +0 -0
  1301. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/constant_hash.rs +0 -0
  1302. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/error.rs +0 -0
  1303. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/isa/arm64.rs +0 -0
  1304. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/isa/mod.rs +0 -0
  1305. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/isa/s390x.rs +0 -0
  1306. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/entities.rs +0 -0
  1307. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/formats.rs +0 -0
  1308. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/immediates.rs +0 -0
  1309. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/instructions.rs +0 -0
  1310. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/mod.rs +0 -0
  1311. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/shared/types.rs +0 -0
  1312. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.107.2 → cranelift-codegen-meta-0.108.1}/src/unique_table.rs +0 -0
  1313. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/LICENSE +0 -0
  1314. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/README.md +0 -0
  1315. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/src/constant_hash.rs +0 -0
  1316. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/src/constants.rs +0 -0
  1317. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.107.2 → cranelift-codegen-shared-0.108.1}/src/lib.rs +0 -0
  1318. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/LICENSE +0 -0
  1319. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/README.md +0 -0
  1320. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/src/chaos.rs +0 -0
  1321. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/src/lib.rs +0 -0
  1322. /data/ext/cargo-vendor/{cranelift-control-0.107.2 → cranelift-control-0.108.1}/src/zero_sized.rs +0 -0
  1323. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/LICENSE +0 -0
  1324. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/README.md +0 -0
  1325. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/boxed_slice.rs +0 -0
  1326. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/iter.rs +0 -0
  1327. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/keys.rs +0 -0
  1328. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/list.rs +0 -0
  1329. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/map.rs +0 -0
  1330. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/packed_option.rs +0 -0
  1331. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/primary.rs +0 -0
  1332. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/set.rs +0 -0
  1333. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/sparse.rs +0 -0
  1334. /data/ext/cargo-vendor/{cranelift-entity-0.107.2 → cranelift-entity-0.108.1}/src/unsigned.rs +0 -0
  1335. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/LICENSE +0 -0
  1336. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/README.md +0 -0
  1337. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/frontend.rs +0 -0
  1338. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/lib.rs +0 -0
  1339. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/ssa.rs +0 -0
  1340. /data/ext/cargo-vendor/{cranelift-frontend-0.107.2 → cranelift-frontend-0.108.1}/src/variable.rs +0 -0
  1341. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/README.md +0 -0
  1342. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/build.rs +0 -0
  1343. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/bad_converters.isle +0 -0
  1344. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/bound_var_type_mismatch.isle +0 -0
  1345. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/converter_extractor_constructor.isle +0 -0
  1346. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/error1.isle +0 -0
  1347. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/extra_parens.isle +0 -0
  1348. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/impure_expression.isle +0 -0
  1349. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/impure_rhs.isle +0 -0
  1350. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/multi_internal_etor.isle +0 -0
  1351. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/fail/multi_prio.isle +0 -0
  1352. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/borrows.isle +0 -0
  1353. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/borrows_main.rs +0 -0
  1354. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/iflets.isle +0 -0
  1355. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/iflets_main.rs +0 -0
  1356. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_constructor.isle +0 -0
  1357. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_constructor_main.rs +0 -0
  1358. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_extractor.isle +0 -0
  1359. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/multi_extractor_main.rs +0 -0
  1360. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/test.isle +0 -0
  1361. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/link/test_main.rs +0 -0
  1362. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/bound_var.isle +0 -0
  1363. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/construct_and_extract.isle +0 -0
  1364. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/conversions.isle +0 -0
  1365. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/conversions_extern.isle +0 -0
  1366. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/let.isle +0 -0
  1367. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/nodebug.isle +0 -0
  1368. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/prio_trie_bug.isle +0 -0
  1369. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/test2.isle +0 -0
  1370. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/test3.isle +0 -0
  1371. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/test4.isle +0 -0
  1372. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/pass/tutorial.isle +0 -0
  1373. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/iconst.isle +0 -0
  1374. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/iconst_main.rs +0 -0
  1375. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/let_shadowing.isle +0 -0
  1376. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/isle_examples/run/let_shadowing_main.rs +0 -0
  1377. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/ast.rs +0 -0
  1378. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/compile.rs +0 -0
  1379. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/error.rs +0 -0
  1380. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/lexer.rs +0 -0
  1381. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/log.rs +0 -0
  1382. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/overlap.rs +0 -0
  1383. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/src/parser.rs +0 -0
  1384. /data/ext/cargo-vendor/{cranelift-isle-0.107.2 → cranelift-isle-0.108.1}/tests/run_tests.rs +0 -0
  1385. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/LICENSE +0 -0
  1386. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/README.md +0 -0
  1387. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/src/lib.rs +0 -0
  1388. /data/ext/cargo-vendor/{cranelift-native-0.107.2 → cranelift-native-0.108.1}/src/riscv.rs +0 -0
  1389. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/LICENSE +0 -0
  1390. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/README.md +0 -0
  1391. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/code_translator/bounds_checks.rs +0 -0
  1392. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/environ/mod.rs +0 -0
  1393. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/func_translator.rs +0 -0
  1394. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/heap.rs +0 -0
  1395. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/lib.rs +0 -0
  1396. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/module_translator.rs +0 -0
  1397. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/state.rs +0 -0
  1398. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/table.rs +0 -0
  1399. /data/ext/cargo-vendor/{cranelift-wasm-0.107.2 → cranelift-wasm-0.108.1}/src/translation_utils.rs +0 -0
  1400. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/README.md +0 -0
  1401. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/src/clocks.rs +0 -0
  1402. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/src/lib.rs +0 -0
  1403. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/src/noop_scheduler.rs +0 -0
  1404. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/clocks.rs +0 -0
  1405. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/common/mod.rs +0 -0
  1406. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/random.rs +0 -0
  1407. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.21 → deterministic-wasi-ctx-0.1.22}/tests/scheduler.rs +0 -0
  1408. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/LICENSE-APACHE +0 -0
  1409. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/LICENSE-MIT +0 -0
  1410. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/bin/release.sh +0 -0
  1411. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/build/features.rs +0 -0
  1412. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/build/version.rs +0 -0
  1413. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/readme.md +0 -0
  1414. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/hidden.rs +0 -0
  1415. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/lib.rs +0 -0
  1416. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/macros.rs +0 -0
  1417. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/memory.rs +0 -0
  1418. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/ruby_abi_version.rs +0 -0
  1419. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/special_consts.rs +0 -0
  1420. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/compiled.c +0 -0
  1421. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/compiled.rs +0 -0
  1422. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_2_6.rs +0 -0
  1423. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_2_7.rs +0 -0
  1424. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_0.rs +0 -0
  1425. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_1.rs +0 -0
  1426. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_2.rs +0 -0
  1427. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api/ruby_3_3.rs +0 -0
  1428. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/stable_api.rs +0 -0
  1429. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/symbol.rs +0 -0
  1430. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/utils.rs +0 -0
  1431. /data/ext/cargo-vendor/{rb-sys-0.9.97 → rb-sys-0.9.100}/src/value_type.rs +0 -0
  1432. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/LICENSE-APACHE +0 -0
  1433. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/LICENSE-MIT +0 -0
  1434. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/bindings/sanitizer.rs +0 -0
  1435. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/bindings/wrapper.h +0 -0
  1436. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/lib.rs +0 -0
  1437. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config/flags.rs +0 -0
  1438. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config/library.rs +0 -0
  1439. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config/search_path.rs +0 -0
  1440. /data/ext/cargo-vendor/{rb-sys-build-0.9.97 → rb-sys-build-0.9.100}/src/rb_config.rs +0 -0
  1441. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/LICENSE +0 -0
  1442. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/README.md +0 -0
  1443. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/clocks.rs +0 -0
  1444. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/ctx.rs +0 -0
  1445. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/dir.rs +0 -0
  1446. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/error.rs +0 -0
  1447. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/file.rs +0 -0
  1448. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/lib.rs +0 -0
  1449. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/pipe.rs +0 -0
  1450. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/random.rs +0 -0
  1451. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sched/subscription.rs +0 -0
  1452. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sched.rs +0 -0
  1453. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/mod.rs +0 -0
  1454. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/preview_0.rs +0 -0
  1455. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/preview_1/error.rs +0 -0
  1456. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/snapshots/preview_1.rs +0 -0
  1457. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/string_array.rs +0 -0
  1458. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/clocks.rs +0 -0
  1459. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/dir.rs +0 -0
  1460. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/file.rs +0 -0
  1461. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/mod.rs +0 -0
  1462. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/net.rs +0 -0
  1463. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/sched/unix.rs +0 -0
  1464. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/sched/windows.rs +0 -0
  1465. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/sched.rs +0 -0
  1466. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/sync/stdio.rs +0 -0
  1467. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/table.rs +0 -0
  1468. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/dir.rs +0 -0
  1469. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/file.rs +0 -0
  1470. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/mod.rs +0 -0
  1471. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/net.rs +0 -0
  1472. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/sched/unix.rs +0 -0
  1473. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/sched/windows.rs +0 -0
  1474. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/sched.rs +0 -0
  1475. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/src/tokio/stdio.rs +0 -0
  1476. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview0/typenames.witx +0 -0
  1477. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview0/wasi_unstable.witx +0 -0
  1478. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview1/typenames.witx +0 -0
  1479. /data/ext/cargo-vendor/{wasi-common-20.0.2 → wasi-common-21.0.1}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1480. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/LICENSE +0 -0
  1481. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/README.md +0 -0
  1482. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/aliases.rs +0 -0
  1483. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/builder.rs +0 -0
  1484. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/canonicals.rs +0 -0
  1485. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/components.rs +0 -0
  1486. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/exports.rs +0 -0
  1487. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/imports.rs +0 -0
  1488. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/instances.rs +0 -0
  1489. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/modules.rs +0 -0
  1490. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/names.rs +0 -0
  1491. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/start.rs +0 -0
  1492. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component/types.rs +0 -0
  1493. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/component.rs +0 -0
  1494. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/custom.rs +0 -0
  1495. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/dump.rs +0 -0
  1496. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/exports.rs +0 -0
  1497. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/functions.rs +0 -0
  1498. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/linking.rs +0 -0
  1499. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/names.rs +0 -0
  1500. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/producers.rs +0 -0
  1501. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/start.rs +0 -0
  1502. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core/tags.rs +0 -0
  1503. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/core.rs +0 -0
  1504. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/lib.rs +0 -0
  1505. /data/ext/cargo-vendor/{wasm-encoder-0.202.0 → wasm-encoder-0.207.0}/src/raw.rs +0 -0
  1506. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/README.md +0 -0
  1507. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/benches/benchmark.rs +0 -0
  1508. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/examples/simple.rs +0 -0
  1509. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component/aliases.rs +0 -0
  1510. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component/exports.rs +0 -0
  1511. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component/imports.rs +0 -0
  1512. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/component.rs +0 -0
  1513. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/branch_hinting.rs +0 -0
  1514. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/exports.rs +0 -0
  1515. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/functions.rs +0 -0
  1516. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/imports.rs +0 -0
  1517. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/init.rs +0 -0
  1518. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/producers.rs +0 -0
  1519. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/src/readers/core/tags.rs +0 -0
  1520. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmparser-0.207.0}/tests/big-module.rs +0 -0
  1521. /data/ext/cargo-vendor/{wasmparser-0.202.0 → wasmprinter-0.207.0}/LICENSE +0 -0
  1522. /data/ext/cargo-vendor/{wasmprinter-0.202.0 → wasmprinter-0.207.0}/README.md +0 -0
  1523. /data/ext/cargo-vendor/{wasmprinter-0.202.0 → wasmtime-21.0.1}/LICENSE +0 -0
  1524. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/README.md +0 -0
  1525. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/proptest-regressions → wasmtime-21.0.1/proptest-regressions/runtime/vm}/instance/allocator/pooling/memory_pool.txt +0 -0
  1526. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/gc/disabled/i31.rs +0 -0
  1527. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/gc/disabled.rs +0 -0
  1528. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/gc/enabled.rs +0 -0
  1529. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-21.0.1}/src/runtime/uninhabited.rs +0 -0
  1530. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/mod.rs +0 -0
  1531. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/riscv64.rs +0 -0
  1532. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/s390x.S +0 -0
  1533. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/arch/s390x.rs +0 -0
  1534. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/helpers.c +0 -0
  1535. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/mpk/disabled.rs +0 -0
  1536. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/custom/unwind.rs +0 -0
  1537. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/miri/unwind.rs +0 -0
  1538. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/miri/vm.rs +0 -0
  1539. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/unix/macos_traphandlers.rs +0 -0
  1540. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/windows/unwind.rs +0 -0
  1541. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/sys/windows/vm.rs +0 -0
  1542. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2/src → wasmtime-21.0.1/src/runtime/vm}/threads/mod.rs +0 -0
  1543. /data/ext/cargo-vendor/{wasmtime-20.0.2 → wasmtime-cache-21.0.1}/LICENSE +0 -0
  1544. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/build.rs +0 -0
  1545. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/config/tests.rs +0 -0
  1546. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/config.rs +0 -0
  1547. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/tests.rs +0 -0
  1548. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/worker/tests/system_time_stub.rs +0 -0
  1549. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/worker/tests.rs +0 -0
  1550. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/src/worker.rs +0 -0
  1551. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cache-21.0.1}/tests/cache_write_default_config.rs +0 -0
  1552. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/build.rs +0 -0
  1553. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/src/lib.rs +0 -0
  1554. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/char.wit +0 -0
  1555. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/conventions.wit +0 -0
  1556. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/dead-code.wit +0 -0
  1557. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/direct-import.wit +0 -0
  1558. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/empty.wit +0 -0
  1559. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/flags.wit +0 -0
  1560. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/floats.wit +0 -0
  1561. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/function-new.wit +0 -0
  1562. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/integers.wit +0 -0
  1563. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/lists.wit +0 -0
  1564. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/many-arguments.wit +0 -0
  1565. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multi-return.wit +0 -0
  1566. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multiversion/deps/v1/root.wit +0 -0
  1567. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multiversion/deps/v2/root.wit +0 -0
  1568. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/multiversion/root.wit +0 -0
  1569. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/records.wit +0 -0
  1570. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/rename.wit +0 -0
  1571. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/resources-export.wit +0 -0
  1572. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/resources-import.wit +0 -0
  1573. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/share-types.wit +0 -0
  1574. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/simple-functions.wit +0 -0
  1575. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/simple-lists.wit +0 -0
  1576. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/simple-wasi.wit +0 -0
  1577. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/small-anonymous.wit +0 -0
  1578. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/smoke-default.wit +0 -0
  1579. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/smoke-export.wit +0 -0
  1580. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/smoke.wit +0 -0
  1581. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/strings.wit +0 -0
  1582. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/unversioned-foo.wit +0 -0
  1583. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/use-paths.wit +0 -0
  1584. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/variants.wit +0 -0
  1585. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/wat.wit +0 -0
  1586. /data/ext/cargo-vendor/{wasmtime-component-macro-20.0.2 → wasmtime-component-macro-21.0.1}/tests/codegen/worlds-with-types.wit +0 -0
  1587. /data/ext/cargo-vendor/{wasmtime-cache-20.0.2 → wasmtime-cranelift-21.0.1}/LICENSE +0 -0
  1588. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/SECURITY.md +0 -0
  1589. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/builder.rs +0 -0
  1590. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/compiled_function.rs +0 -0
  1591. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/address_transform.rs +0 -0
  1592. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/range_info_builder.rs +0 -0
  1593. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/refs.rs +0 -0
  1594. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/debug/transform/simulate.rs +0 -0
  1595. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/gc/disabled.rs +0 -0
  1596. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/isa_builder.rs +0 -0
  1597. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-cranelift-21.0.1}/src/obj.rs +0 -0
  1598. /data/ext/cargo-vendor/{wasmtime-cranelift-20.0.2 → wasmtime-environ-21.0.1}/LICENSE +0 -0
  1599. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/address_map.rs +0 -0
  1600. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/builtin.rs +0 -0
  1601. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/component/artifacts.rs +0 -0
  1602. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/component/translate/inline.rs +0 -0
  1603. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/component/vmcomponent_offsets.rs +0 -0
  1604. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/gc.rs +0 -0
  1605. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/obj.rs +0 -0
  1606. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-environ-21.0.1}/src/ref_bits.rs +0 -0
  1607. /data/ext/cargo-vendor/{wasmtime-environ-20.0.2 → wasmtime-fiber-21.0.1}/LICENSE +0 -0
  1608. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/aarch64.rs +0 -0
  1609. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/arm.rs +0 -0
  1610. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/riscv64.rs +0 -0
  1611. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/s390x.S +0 -0
  1612. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/x86.rs +0 -0
  1613. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/unix/x86_64.rs +0 -0
  1614. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-fiber-21.0.1}/src/windows.c +0 -0
  1615. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/README.md +0 -0
  1616. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/src/gdb_jit_int.rs +0 -0
  1617. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/src/lib.rs +0 -0
  1618. /data/ext/cargo-vendor/{wasmtime-jit-debug-20.0.2 → wasmtime-jit-debug-21.0.1}/src/perf_jitdump.rs +0 -0
  1619. /data/ext/cargo-vendor/{wasmtime-fiber-20.0.2 → wasmtime-types-21.0.1}/LICENSE +0 -0
  1620. /data/ext/cargo-vendor/{wasmtime-versioned-export-macros-20.0.2 → wasmtime-versioned-export-macros-21.0.1}/src/lib.rs +0 -0
  1621. /data/ext/cargo-vendor/{wasmtime-runtime-20.0.2 → wasmtime-wasi-21.0.1}/LICENSE +0 -0
  1622. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/README.md +0 -0
  1623. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/clocks/host.rs +0 -0
  1624. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/clocks.rs +0 -0
  1625. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/error.rs +0 -0
  1626. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/clocks.rs +0 -0
  1627. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/env.rs +0 -0
  1628. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/exit.rs +0 -0
  1629. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/filesystem/sync.rs +0 -0
  1630. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/filesystem.rs +0 -0
  1631. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/instance_network.rs +0 -0
  1632. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/io.rs +0 -0
  1633. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/mod.rs +0 -0
  1634. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/network.rs +0 -0
  1635. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/random.rs +0 -0
  1636. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/tcp.rs +0 -0
  1637. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/tcp_create_socket.rs +0 -0
  1638. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/udp.rs +0 -0
  1639. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/host/udp_create_socket.rs +0 -0
  1640. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/ip_name_lookup.rs +0 -0
  1641. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/network.rs +0 -0
  1642. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/pipe.rs +0 -0
  1643. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/poll.rs +0 -0
  1644. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/random.rs +0 -0
  1645. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/runtime.rs +0 -0
  1646. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/stdio/worker_thread_stdin.rs +0 -0
  1647. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/stdio.rs +0 -0
  1648. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/stream.rs +0 -0
  1649. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/tcp.rs +0 -0
  1650. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/udp.rs +0 -0
  1651. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/src/write_stream.rs +0 -0
  1652. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/tests/process_stdin.rs +0 -0
  1653. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/command-extended.wit +0 -0
  1654. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/command.wit +0 -0
  1655. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/environment.wit +0 -0
  1656. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/exit.wit +0 -0
  1657. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/imports.wit +0 -0
  1658. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/run.wit +0 -0
  1659. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/stdio.wit +0 -0
  1660. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/cli/terminal.wit +0 -0
  1661. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/clocks/monotonic-clock.wit +0 -0
  1662. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/clocks/wall-clock.wit +0 -0
  1663. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/clocks/world.wit +0 -0
  1664. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/filesystem/preopens.wit +0 -0
  1665. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/filesystem/types.wit +0 -0
  1666. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/filesystem/world.wit +0 -0
  1667. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/http/handler.wit +0 -0
  1668. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/http/proxy.wit +0 -0
  1669. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/http/types.wit +0 -0
  1670. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/error.wit +0 -0
  1671. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/poll.wit +0 -0
  1672. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/streams.wit +0 -0
  1673. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/io/world.wit +0 -0
  1674. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/insecure-seed.wit +0 -0
  1675. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/insecure.wit +0 -0
  1676. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/random.wit +0 -0
  1677. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/random/world.wit +0 -0
  1678. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/instance-network.wit +0 -0
  1679. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/ip-name-lookup.wit +0 -0
  1680. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/network.wit +0 -0
  1681. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/tcp-create-socket.wit +0 -0
  1682. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/tcp.wit +0 -0
  1683. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/udp-create-socket.wit +0 -0
  1684. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/udp.wit +0 -0
  1685. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/deps/sockets/world.wit +0 -0
  1686. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/wit/test.wit +0 -0
  1687. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview0/typenames.witx +0 -0
  1688. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview0/wasi_unstable.witx +0 -0
  1689. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview1/typenames.witx +0 -0
  1690. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wasmtime-wasi-21.0.1}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1691. /data/ext/cargo-vendor/{wasmtime-winch-20.0.2 → wasmtime-winch-21.0.1}/LICENSE +0 -0
  1692. /data/ext/cargo-vendor/{wasmtime-winch-20.0.2 → wasmtime-winch-21.0.1}/src/builder.rs +0 -0
  1693. /data/ext/cargo-vendor/{wasmtime-winch-20.0.2 → wasmtime-winch-21.0.1}/src/lib.rs +0 -0
  1694. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-20.0.2 → wasmtime-wit-bindgen-21.0.1}/src/source.rs +0 -0
  1695. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-20.0.2 → wasmtime-wit-bindgen-21.0.1}/src/types.rs +0 -0
  1696. /data/ext/cargo-vendor/{wasmtime-types-20.0.2 → wiggle-21.0.1}/LICENSE +0 -0
  1697. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/README.md +0 -0
  1698. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/borrow.rs +0 -0
  1699. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/error.rs +0 -0
  1700. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/guest_type.rs +0 -0
  1701. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/lib.rs +0 -0
  1702. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/region.rs +0 -0
  1703. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-21.0.1}/src/wasmtime.rs +0 -0
  1704. /data/ext/cargo-vendor/{wasmtime-wasi-20.0.2 → wiggle-generate-21.0.1}/LICENSE +0 -0
  1705. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/README.md +0 -0
  1706. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/codegen_settings.rs +0 -0
  1707. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/config.rs +0 -0
  1708. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/funcs.rs +0 -0
  1709. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/lib.rs +0 -0
  1710. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/lifetimes.rs +0 -0
  1711. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/module_trait.rs +0 -0
  1712. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/names.rs +0 -0
  1713. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/error.rs +0 -0
  1714. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/flags.rs +0 -0
  1715. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/handle.rs +0 -0
  1716. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/mod.rs +0 -0
  1717. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/record.rs +0 -0
  1718. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/types/variant.rs +0 -0
  1719. /data/ext/cargo-vendor/{wiggle-generate-20.0.2 → wiggle-generate-21.0.1}/src/wasmtime.rs +0 -0
  1720. /data/ext/cargo-vendor/{wiggle-20.0.2 → wiggle-macro-21.0.1}/LICENSE +0 -0
  1721. /data/ext/cargo-vendor/{wiggle-macro-20.0.2 → wiggle-macro-21.0.1}/src/lib.rs +0 -0
  1722. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/LICENSE +0 -0
  1723. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/build.rs +0 -0
  1724. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/abi/local.rs +0 -0
  1725. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/abi/mod.rs +0 -0
  1726. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/bounds.rs +0 -0
  1727. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/builtin.rs +0 -0
  1728. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/call.rs +0 -0
  1729. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/codegen/control.rs +0 -0
  1730. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/frame/mod.rs +0 -0
  1731. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/mod.rs +0 -0
  1732. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/abi.rs +0 -0
  1733. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/address.rs +0 -0
  1734. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/mod.rs +0 -0
  1735. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/isa/x64/regs.rs +0 -0
  1736. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/lib.rs +0 -0
  1737. /data/ext/cargo-vendor/{winch-codegen-0.18.2 → winch-codegen-0.19.1}/src/stack.rs +0 -0
  1738. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/README.md +0 -0
  1739. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/abi.rs +0 -0
  1740. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/ast/lex.rs +0 -0
  1741. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/ast/toposort.rs +0 -0
  1742. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/ast.rs +0 -0
  1743. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/docs.rs +0 -0
  1744. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/serde_.rs +0 -0
  1745. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/src/sizealign.rs +0 -0
  1746. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/all.rs +0 -0
  1747. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/comments.wit +0 -0
  1748. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/comments.wit.json +0 -0
  1749. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include/deps/bar/root.wit +0 -0
  1750. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include/deps/baz/root.wit +0 -0
  1751. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include/root.wit +0 -0
  1752. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/complex-include.wit.json +0 -0
  1753. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/cross-package-resource/deps/foo/foo.wit +0 -0
  1754. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/cross-package-resource/foo.wit +0 -0
  1755. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/cross-package-resource.wit.json +0 -0
  1756. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1/deps/dep1/types.wit +0 -0
  1757. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1/deps/dep2/types.wit +0 -0
  1758. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1/join.wit +0 -0
  1759. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/diamond1.wit.json +0 -0
  1760. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond/shared1.wit +0 -0
  1761. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond/shared2.wit +0 -0
  1762. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond/world.wit +0 -0
  1763. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/disambiguate-diamond.wit.json +0 -0
  1764. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/empty.wit +0 -0
  1765. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/empty.wit.json +0 -0
  1766. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/another-pkg/other-doc.wit +0 -0
  1767. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/corp/saas.wit +0 -0
  1768. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/different-pkg/the-doc.wit +0 -0
  1769. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/foreign-pkg/the-doc.wit +0 -0
  1770. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/some-pkg/some-doc.wit +0 -0
  1771. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/wasi/clocks.wit +0 -0
  1772. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/deps/wasi/filesystem.wit +0 -0
  1773. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps/root.wit +0 -0
  1774. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/another-pkg/other-doc.wit +0 -0
  1775. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/corp/saas.wit +0 -0
  1776. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/different-pkg/the-doc.wit +0 -0
  1777. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/foreign-pkg/the-doc.wit +0 -0
  1778. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/some-pkg/some-doc.wit +0 -0
  1779. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/wasi/clocks.wit +0 -0
  1780. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/wasi/filesystem.wit +0 -0
  1781. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/deps/wasi/wasi.wit +0 -0
  1782. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union/root.wit +0 -0
  1783. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps-union.wit.json +0 -0
  1784. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/foreign-deps.wit.json +0 -0
  1785. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/functions.wit +0 -0
  1786. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/functions.wit.json +0 -0
  1787. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps/deps/bar/types.wit +0 -0
  1788. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps/deps/ignore-me.txt +0 -0
  1789. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps/world.wit +0 -0
  1790. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/ignore-files-deps.wit.json +0 -0
  1791. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap1.wit +0 -0
  1792. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap1.wit.json +0 -0
  1793. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap2.wit +0 -0
  1794. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/import-export-overlap2.wit.json +0 -0
  1795. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/include-reps.wit +0 -0
  1796. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/include-reps.wit.json +0 -0
  1797. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kebab-name-include-with.wit +0 -0
  1798. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kebab-name-include-with.wit.json +0 -0
  1799. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/a.wit +0 -0
  1800. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/b/root.wit +0 -0
  1801. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/c.wit +0 -0
  1802. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/d.wat +0 -0
  1803. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps/deps/e.wasm +0 -0
  1804. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/kinds-of-deps.wit.json +0 -0
  1805. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/many-names/a.wit +0 -0
  1806. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/many-names/b.wit +0 -0
  1807. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/many-names.wit.json +0 -0
  1808. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/bar.wit +0 -0
  1809. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/cycle-a.wit +0 -0
  1810. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/cycle-b.wit +0 -0
  1811. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file/foo.wit +0 -0
  1812. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/multi-file.wit.json +0 -0
  1813. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/name-both-resource-and-type/deps/dep/foo.wit +0 -0
  1814. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/name-both-resource-and-type/foo.wit +0 -0
  1815. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/name-both-resource-and-type.wit.json +0 -0
  1816. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax1.wit +0 -0
  1817. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax1.wit.json +0 -0
  1818. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax3.wit +0 -0
  1819. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax3.wit.json +0 -0
  1820. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax4.wit +0 -0
  1821. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/package-syntax4.wit.json +0 -0
  1822. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/alias-no-type.wit +0 -0
  1823. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/alias-no-type.wit.result +0 -0
  1824. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/async.wit.result +0 -0
  1825. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/async1.wit.result +0 -0
  1826. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function.wit +0 -0
  1827. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function.wit.result +0 -0
  1828. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function2.wit +0 -0
  1829. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-function2.wit.result +0 -0
  1830. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include1.wit +0 -0
  1831. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include1.wit.result +0 -0
  1832. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include2.wit +0 -0
  1833. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include2.wit.result +0 -0
  1834. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include3.wit +0 -0
  1835. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-include3.wit.result +0 -0
  1836. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-list.wit +0 -0
  1837. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-list.wit.result +0 -0
  1838. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg1/root.wit +0 -0
  1839. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg1.wit.result +0 -0
  1840. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg2/deps/bar/empty.wit +0 -0
  1841. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg2/root.wit +0 -0
  1842. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg2.wit.result +0 -0
  1843. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg3/deps/bar/baz.wit +0 -0
  1844. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg3/root.wit +0 -0
  1845. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg3.wit.result +0 -0
  1846. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg4/deps/bar/baz.wit +0 -0
  1847. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg4/root.wit +0 -0
  1848. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg4.wit.result +0 -0
  1849. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg5/deps/bar/baz.wit +0 -0
  1850. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg5/root.wit +0 -0
  1851. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg5.wit.result +0 -0
  1852. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg6/deps/bar/baz.wit +0 -0
  1853. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg6/root.wit +0 -0
  1854. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-pkg6.wit.result +0 -0
  1855. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource1.wit +0 -0
  1856. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource1.wit.result +0 -0
  1857. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource10.wit +0 -0
  1858. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource10.wit.result +0 -0
  1859. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource11.wit +0 -0
  1860. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource11.wit.result +0 -0
  1861. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource12.wit +0 -0
  1862. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource12.wit.result +0 -0
  1863. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource13.wit +0 -0
  1864. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource13.wit.result +0 -0
  1865. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource14.wit +0 -0
  1866. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource14.wit.result +0 -0
  1867. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource15/deps/foo/foo.wit +0 -0
  1868. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource15/foo.wit +0 -0
  1869. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource15.wit.result +0 -0
  1870. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource2.wit +0 -0
  1871. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource2.wit.result +0 -0
  1872. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource3.wit +0 -0
  1873. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource3.wit.result +0 -0
  1874. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource4.wit +0 -0
  1875. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource4.wit.result +0 -0
  1876. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource5.wit +0 -0
  1877. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource5.wit.result +0 -0
  1878. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource6.wit +0 -0
  1879. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource6.wit.result +0 -0
  1880. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource7.wit +0 -0
  1881. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource7.wit.result +0 -0
  1882. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource8.wit +0 -0
  1883. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource8.wit.result +0 -0
  1884. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource9.wit +0 -0
  1885. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-resource9.wit.result +0 -0
  1886. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-world-type1.wit +0 -0
  1887. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/bad-world-type1.wit.result +0 -0
  1888. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/conflicting-package/a.wit +0 -0
  1889. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/conflicting-package/b.wit +0 -0
  1890. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/conflicting-package.wit.result +0 -0
  1891. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle.wit +0 -0
  1892. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle.wit.result +0 -0
  1893. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle2.wit +0 -0
  1894. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle2.wit.result +0 -0
  1895. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle3.wit +0 -0
  1896. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle3.wit.result +0 -0
  1897. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle4.wit +0 -0
  1898. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle4.wit.result +0 -0
  1899. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle5.wit +0 -0
  1900. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/cycle5.wit.result +0 -0
  1901. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/dangling-type.wit +0 -0
  1902. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/dangling-type.wit.result +0 -0
  1903. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-function-params.wit +0 -0
  1904. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-function-params.wit.result +0 -0
  1905. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-functions.wit +0 -0
  1906. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-functions.wit.result +0 -0
  1907. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface.wit +0 -0
  1908. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface.wit.result +0 -0
  1909. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface2/foo.wit +0 -0
  1910. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface2/foo2.wit +0 -0
  1911. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-interface2.wit.result +0 -0
  1912. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-type.wit +0 -0
  1913. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/duplicate-type.wit.result +0 -0
  1914. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-enum.wit +0 -0
  1915. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-enum.wit.result +0 -0
  1916. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-variant1.wit +0 -0
  1917. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/empty-variant1.wit.result +0 -0
  1918. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/export-twice.wit +0 -0
  1919. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/export-twice.wit.result +0 -0
  1920. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export1.wit +0 -0
  1921. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export1.wit.result +0 -0
  1922. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export2.wit +0 -0
  1923. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export2.wit.result +0 -0
  1924. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export3.wit +0 -0
  1925. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export3.wit.result +0 -0
  1926. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export4.wit +0 -0
  1927. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export4.wit.result +0 -0
  1928. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export5.wit +0 -0
  1929. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-and-export5.wit.result +0 -0
  1930. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-twice.wit +0 -0
  1931. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/import-twice.wit.result +0 -0
  1932. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-cycle.wit +0 -0
  1933. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-cycle.wit.result +0 -0
  1934. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-foreign/deps/bar/empty.wit +0 -0
  1935. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-foreign/root.wit +0 -0
  1936. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-foreign.wit.result +0 -0
  1937. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-id.wit +0 -0
  1938. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-id.wit.result +0 -0
  1939. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-on-id.wit +0 -0
  1940. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/include-with-on-id.wit.result +0 -0
  1941. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-toplevel.wit +0 -0
  1942. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-toplevel.wit.result +0 -0
  1943. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference.wit +0 -0
  1944. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference.wit.result +0 -0
  1945. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference2.wit +0 -0
  1946. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/invalid-type-reference2.wit.result +0 -0
  1947. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include-not-found.wit +0 -0
  1948. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include-not-found.wit.result +0 -0
  1949. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include.wit +0 -0
  1950. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/kebab-name-include.wit.result +0 -0
  1951. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/keyword.wit +0 -0
  1952. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/keyword.wit.result +0 -0
  1953. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/missing-package.wit +0 -0
  1954. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/missing-package.wit.result +0 -0
  1955. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/multiple-package-docs/a.wit +0 -0
  1956. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/multiple-package-docs/b.wit +0 -0
  1957. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/multiple-package-docs.wit.result +0 -0
  1958. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/no-access-to-sibling-use/bar.wit +0 -0
  1959. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/no-access-to-sibling-use/foo.wit +0 -0
  1960. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/no-access-to-sibling-use.wit.result +0 -0
  1961. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/non-existance-world-include/deps/bar/baz.wit +0 -0
  1962. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/non-existance-world-include/root.wit +0 -0
  1963. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/non-existance-world-include.wit.result +0 -0
  1964. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle/deps/a1/root.wit +0 -0
  1965. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle/root.wit +0 -0
  1966. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle.wit.result +0 -0
  1967. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2/deps/a1/root.wit +0 -0
  1968. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2/deps/a2/root.wit +0 -0
  1969. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2/root.wit +0 -0
  1970. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/pkg-cycle2.wit.result +0 -0
  1971. /data/ext/cargo-vendor/{wit-parser-0.202.0/tests/ui → wit-parser-0.207.0/tests/ui/parse-fail}/resources-multiple-returns-borrow.wit +0 -0
  1972. /data/ext/cargo-vendor/{wit-parser-0.202.0/tests/ui → wit-parser-0.207.0/tests/ui/parse-fail}/resources-return-borrow.wit +0 -0
  1973. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/type-and-resource-same-name/deps/dep/foo.wit +0 -0
  1974. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/type-and-resource-same-name/foo.wit +0 -0
  1975. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/type-and-resource-same-name.wit.result +0 -0
  1976. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/undefined-typed.wit +0 -0
  1977. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/undefined-typed.wit.result +0 -0
  1978. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unknown-interface.wit +0 -0
  1979. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unknown-interface.wit.result +0 -0
  1980. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface1.wit +0 -0
  1981. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface1.wit.result +0 -0
  1982. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface2.wit +0 -0
  1983. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface2.wit.result +0 -0
  1984. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface3.wit +0 -0
  1985. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface3.wit.result +0 -0
  1986. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface4.wit +0 -0
  1987. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-interface4.wit.result +0 -0
  1988. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use1.wit +0 -0
  1989. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use1.wit.result +0 -0
  1990. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use10/bar.wit +0 -0
  1991. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use10/foo.wit +0 -0
  1992. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use10.wit.result +0 -0
  1993. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use2.wit +0 -0
  1994. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use2.wit.result +0 -0
  1995. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use3.wit +0 -0
  1996. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use3.wit.result +0 -0
  1997. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use7.wit +0 -0
  1998. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use7.wit.result +0 -0
  1999. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use8.wit +0 -0
  2000. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use8.wit.result +0 -0
  2001. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use9.wit +0 -0
  2002. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unresolved-use9.wit.result +0 -0
  2003. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/unterminated-string.wit.result +0 -0
  2004. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-and-include-world/deps/bar/baz.wit +0 -0
  2005. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-and-include-world/root.wit +0 -0
  2006. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-and-include-world.wit.result +0 -0
  2007. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict.wit +0 -0
  2008. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict.wit.result +0 -0
  2009. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict2.wit +0 -0
  2010. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict2.wit.result +0 -0
  2011. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict3.wit +0 -0
  2012. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-conflict3.wit.result +0 -0
  2013. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle1.wit +0 -0
  2014. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle1.wit.result +0 -0
  2015. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle4.wit +0 -0
  2016. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-cycle4.wit.result +0 -0
  2017. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-shadow1.wit +0 -0
  2018. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-shadow1.wit.result +0 -0
  2019. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-world/deps/bar/baz.wit +0 -0
  2020. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-world/root.wit +0 -0
  2021. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/use-world.wit.result +0 -0
  2022. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-interface-clash.wit +0 -0
  2023. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-interface-clash.wit.result +0 -0
  2024. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields2.wit +0 -0
  2025. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields2.wit.result +0 -0
  2026. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields3.wit +0 -0
  2027. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-same-fields3.wit.result +0 -0
  2028. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func.wit +0 -0
  2029. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func.wit.result +0 -0
  2030. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func2.wit +0 -0
  2031. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/parse-fail/world-top-level-func2.wit.result +0 -0
  2032. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/random.wit +0 -0
  2033. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/random.wit.json +0 -0
  2034. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-empty.wit +0 -0
  2035. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-empty.wit.json +0 -0
  2036. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple-returns-own.wit +0 -0
  2037. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple-returns-own.wit.json +0 -0
  2038. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple.wit +0 -0
  2039. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-multiple.wit.json +0 -0
  2040. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-return-own.wit +0 -0
  2041. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources-return-own.wit.json +0 -0
  2042. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources.wit +0 -0
  2043. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources.wit.json +0 -0
  2044. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources1.wit +0 -0
  2045. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/resources1.wit.json +0 -0
  2046. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/same-name-import-export.wit +0 -0
  2047. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/same-name-import-export.wit.json +0 -0
  2048. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/shared-types.wit +0 -0
  2049. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/shared-types.wit.json +0 -0
  2050. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/simple-wasm-text.wat +0 -0
  2051. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/simple-wasm-text.wit.json +0 -0
  2052. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/stress-export-elaborate.wit +0 -0
  2053. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/stress-export-elaborate.wit.json +0 -0
  2054. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/type-then-eof.wit +0 -0
  2055. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/type-then-eof.wit.json +0 -0
  2056. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/types.wit +0 -0
  2057. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/types.wit.json +0 -0
  2058. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-1.wit +0 -0
  2059. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-1.wit.json +0 -0
  2060. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-2.wit +0 -0
  2061. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/union-fuzz-2.wit.json +0 -0
  2062. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use-chain.wit +0 -0
  2063. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use-chain.wit.json +0 -0
  2064. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use.wit +0 -0
  2065. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/use.wit.json +0 -0
  2066. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions/deps/a1/foo.wit +0 -0
  2067. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions/deps/a2/foo.wit +0 -0
  2068. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions/foo.wit +0 -0
  2069. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/versions.wit.json +0 -0
  2070. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/wasi.wit +0 -0
  2071. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/wasi.wit.json +0 -0
  2072. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-diamond.wit +0 -0
  2073. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-diamond.wit.json +0 -0
  2074. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-iface-no-collide.wit +0 -0
  2075. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-iface-no-collide.wit.json +0 -0
  2076. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import1.wit +0 -0
  2077. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import1.wit.json +0 -0
  2078. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import2.wit +0 -0
  2079. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import2.wit.json +0 -0
  2080. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import3.wit +0 -0
  2081. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-implicit-import3.wit.json +0 -0
  2082. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-same-fields4.wit +0 -0
  2083. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-same-fields4.wit.json +0 -0
  2084. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-top-level-funcs.wit +0 -0
  2085. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/world-top-level-funcs.wit.json +0 -0
  2086. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-union-dedup.wit +0 -0
  2087. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-union-dedup.wit.json +0 -0
  2088. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-with-types.wit +0 -0
  2089. /data/ext/cargo-vendor/{wit-parser-0.202.0 → wit-parser-0.207.0}/tests/ui/worlds-with-types.wit.json +0 -0
@@ -1,2695 +0,0 @@
1
- use anyhow::{bail, ensure, Result};
2
- use serde_derive::{Deserialize, Serialize};
3
- use std::collections::{HashMap, HashSet};
4
- use std::fmt;
5
- #[cfg(any(feature = "cache", feature = "cranelift", feature = "winch"))]
6
- use std::path::Path;
7
- use std::str::FromStr;
8
- use std::sync::Arc;
9
- use target_lexicon::Architecture;
10
- use wasmparser::WasmFeatures;
11
- #[cfg(feature = "cache")]
12
- use wasmtime_cache::CacheConfig;
13
- use wasmtime_environ::Tunables;
14
-
15
- #[cfg(feature = "runtime")]
16
- use crate::memory::MemoryCreator;
17
- #[cfg(feature = "runtime")]
18
- use crate::profiling_agent::{self, ProfilingAgent};
19
- #[cfg(feature = "runtime")]
20
- use crate::trampoline::MemoryCreatorProxy;
21
- #[cfg(feature = "runtime")]
22
- use wasmtime_runtime::{
23
- GcRuntime, InstanceAllocator, OnDemandInstanceAllocator, RuntimeMemoryCreator,
24
- };
25
-
26
- #[cfg(feature = "async")]
27
- use crate::stack::{StackCreator, StackCreatorProxy};
28
- #[cfg(feature = "async")]
29
- use wasmtime_fiber::RuntimeFiberStackCreator;
30
-
31
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
32
- pub use wasmtime_environ::CacheStore;
33
- #[cfg(feature = "pooling-allocator")]
34
- use wasmtime_runtime::mpk;
35
- #[cfg(feature = "pooling-allocator")]
36
- pub use wasmtime_runtime::MpkEnabled;
37
-
38
- /// Represents the module instance allocation strategy to use.
39
- #[derive(Clone)]
40
- pub enum InstanceAllocationStrategy {
41
- /// The on-demand instance allocation strategy.
42
- ///
43
- /// Resources related to a module instance are allocated at instantiation time and
44
- /// immediately deallocated when the `Store` referencing the instance is dropped.
45
- ///
46
- /// This is the default allocation strategy for Wasmtime.
47
- OnDemand,
48
- /// The pooling instance allocation strategy.
49
- ///
50
- /// A pool of resources is created in advance and module instantiation reuses resources
51
- /// from the pool. Resources are returned to the pool when the `Store` referencing the instance
52
- /// is dropped.
53
- #[cfg(feature = "pooling-allocator")]
54
- Pooling(PoolingAllocationConfig),
55
- }
56
-
57
- impl InstanceAllocationStrategy {
58
- /// The default pooling instance allocation strategy.
59
- #[cfg(feature = "pooling-allocator")]
60
- pub fn pooling() -> Self {
61
- Self::Pooling(Default::default())
62
- }
63
- }
64
-
65
- impl Default for InstanceAllocationStrategy {
66
- fn default() -> Self {
67
- Self::OnDemand
68
- }
69
- }
70
-
71
- #[derive(Clone)]
72
- /// Configure the strategy used for versioning in serializing and deserializing [`crate::Module`].
73
- pub enum ModuleVersionStrategy {
74
- /// Use the wasmtime crate's Cargo package version.
75
- WasmtimeVersion,
76
- /// Use a custom version string. Must be at most 255 bytes.
77
- Custom(String),
78
- /// Emit no version string in serialization, and accept all version strings in deserialization.
79
- None,
80
- }
81
-
82
- impl Default for ModuleVersionStrategy {
83
- fn default() -> Self {
84
- ModuleVersionStrategy::WasmtimeVersion
85
- }
86
- }
87
-
88
- impl std::hash::Hash for ModuleVersionStrategy {
89
- fn hash<H: std::hash::Hasher>(&self, hasher: &mut H) {
90
- match self {
91
- Self::WasmtimeVersion => env!("CARGO_PKG_VERSION").hash(hasher),
92
- Self::Custom(s) => s.hash(hasher),
93
- Self::None => {}
94
- };
95
- }
96
- }
97
-
98
- /// Global configuration options used to create an [`Engine`](crate::Engine)
99
- /// and customize its behavior.
100
- ///
101
- /// This structure exposed a builder-like interface and is primarily consumed by
102
- /// [`Engine::new()`](crate::Engine::new).
103
- ///
104
- /// The validation of `Config` is deferred until the engine is being built, thus
105
- /// a problematic config may cause `Engine::new` to fail.
106
- #[derive(Clone)]
107
- pub struct Config {
108
- #[cfg(any(feature = "cranelift", feature = "winch"))]
109
- compiler_config: CompilerConfig,
110
- profiling_strategy: ProfilingStrategy,
111
- tunables: ConfigTunables,
112
-
113
- #[cfg(feature = "cache")]
114
- pub(crate) cache_config: CacheConfig,
115
- #[cfg(feature = "runtime")]
116
- pub(crate) mem_creator: Option<Arc<dyn RuntimeMemoryCreator>>,
117
- pub(crate) allocation_strategy: InstanceAllocationStrategy,
118
- pub(crate) max_wasm_stack: usize,
119
- pub(crate) features: WasmFeatures,
120
- pub(crate) wasm_backtrace: bool,
121
- pub(crate) wasm_backtrace_details_env_used: bool,
122
- pub(crate) native_unwind_info: Option<bool>,
123
- #[cfg(feature = "async")]
124
- pub(crate) async_stack_size: usize,
125
- #[cfg(feature = "async")]
126
- pub(crate) stack_creator: Option<Arc<dyn RuntimeFiberStackCreator>>,
127
- pub(crate) async_support: bool,
128
- pub(crate) module_version: ModuleVersionStrategy,
129
- pub(crate) parallel_compilation: bool,
130
- pub(crate) memory_init_cow: bool,
131
- pub(crate) memory_guaranteed_dense_image_size: u64,
132
- pub(crate) force_memory_init_memfd: bool,
133
- pub(crate) wmemcheck: bool,
134
- pub(crate) coredump_on_trap: bool,
135
- pub(crate) macos_use_mach_ports: bool,
136
- }
137
-
138
- #[derive(Default, Clone)]
139
- struct ConfigTunables {
140
- static_memory_bound: Option<u64>,
141
- static_memory_offset_guard_size: Option<u64>,
142
- dynamic_memory_offset_guard_size: Option<u64>,
143
- dynamic_memory_growth_reserve: Option<u64>,
144
- generate_native_debuginfo: Option<bool>,
145
- parse_wasm_debuginfo: Option<bool>,
146
- consume_fuel: Option<bool>,
147
- epoch_interruption: Option<bool>,
148
- static_memory_bound_is_maximum: Option<bool>,
149
- guard_before_linear_memory: Option<bool>,
150
- generate_address_map: Option<bool>,
151
- debug_adapter_modules: Option<bool>,
152
- relaxed_simd_deterministic: Option<bool>,
153
- tail_callable: Option<bool>,
154
- }
155
-
156
- /// User-provided configuration for the compiler.
157
- #[cfg(any(feature = "cranelift", feature = "winch"))]
158
- #[derive(Debug, Clone)]
159
- struct CompilerConfig {
160
- strategy: Strategy,
161
- target: Option<target_lexicon::Triple>,
162
- settings: HashMap<String, String>,
163
- flags: HashSet<String>,
164
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
165
- cache_store: Option<Arc<dyn CacheStore>>,
166
- clif_dir: Option<std::path::PathBuf>,
167
- wmemcheck: bool,
168
- }
169
-
170
- #[cfg(any(feature = "cranelift", feature = "winch"))]
171
- impl CompilerConfig {
172
- fn new(strategy: Strategy) -> Self {
173
- Self {
174
- strategy,
175
- target: None,
176
- settings: HashMap::new(),
177
- flags: HashSet::new(),
178
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
179
- cache_store: None,
180
- clif_dir: None,
181
- wmemcheck: false,
182
- }
183
- }
184
-
185
- /// Ensures that the key is not set or equals to the given value.
186
- /// If the key is not set, it will be set to the given value.
187
- ///
188
- /// # Returns
189
- ///
190
- /// Returns true if successfully set or already had the given setting
191
- /// value, or false if the setting was explicitly set to something
192
- /// else previously.
193
- fn ensure_setting_unset_or_given(&mut self, k: &str, v: &str) -> bool {
194
- if let Some(value) = self.settings.get(k) {
195
- if value != v {
196
- return false;
197
- }
198
- } else {
199
- self.settings.insert(k.to_string(), v.to_string());
200
- }
201
- true
202
- }
203
- }
204
-
205
- #[cfg(any(feature = "cranelift", feature = "winch"))]
206
- impl Default for CompilerConfig {
207
- fn default() -> Self {
208
- Self::new(Strategy::Auto)
209
- }
210
- }
211
-
212
- impl Config {
213
- /// Creates a new configuration object with the default configuration
214
- /// specified.
215
- pub fn new() -> Self {
216
- let mut ret = Self {
217
- tunables: ConfigTunables::default(),
218
- #[cfg(any(feature = "cranelift", feature = "winch"))]
219
- compiler_config: CompilerConfig::default(),
220
- #[cfg(feature = "cache")]
221
- cache_config: CacheConfig::new_cache_disabled(),
222
- profiling_strategy: ProfilingStrategy::None,
223
- #[cfg(feature = "runtime")]
224
- mem_creator: None,
225
- allocation_strategy: InstanceAllocationStrategy::OnDemand,
226
- // 512k of stack -- note that this is chosen currently to not be too
227
- // big, not be too small, and be a good default for most platforms.
228
- // One platform of particular note is Windows where the stack size
229
- // of the main thread seems to, by default, be smaller than that of
230
- // Linux and macOS. This 512k value at least lets our current test
231
- // suite pass on the main thread of Windows (using `--test-threads
232
- // 1` forces this), or at least it passed when this change was
233
- // committed.
234
- max_wasm_stack: 512 * 1024,
235
- wasm_backtrace: true,
236
- wasm_backtrace_details_env_used: false,
237
- native_unwind_info: None,
238
- features: WasmFeatures::default(),
239
- #[cfg(feature = "async")]
240
- async_stack_size: 2 << 20,
241
- #[cfg(feature = "async")]
242
- stack_creator: None,
243
- async_support: false,
244
- module_version: ModuleVersionStrategy::default(),
245
- parallel_compilation: !cfg!(miri),
246
- memory_init_cow: true,
247
- memory_guaranteed_dense_image_size: 16 << 20,
248
- force_memory_init_memfd: false,
249
- wmemcheck: false,
250
- coredump_on_trap: false,
251
- macos_use_mach_ports: !cfg!(miri),
252
- };
253
- #[cfg(any(feature = "cranelift", feature = "winch"))]
254
- {
255
- ret.cranelift_debug_verifier(false);
256
- ret.cranelift_opt_level(OptLevel::Speed);
257
- }
258
-
259
- // Conditionally enabled features depending on compile-time crate
260
- // features. Note that if these features are disabled then `Config` has
261
- // no way of re-enabling them.
262
- ret.features.reference_types = cfg!(feature = "gc");
263
- ret.features.threads = cfg!(feature = "threads");
264
- ret.features.component_model = cfg!(feature = "component-model");
265
-
266
- // If GC is disabled at compile time also disable it in features
267
- // forcibly irrespective of `wasmparser` defaults. Note that these also
268
- // aren't yet fully implemented in Wasmtime.
269
- if !cfg!(feature = "gc") {
270
- ret.features.function_references = false;
271
- ret.features.gc = false;
272
- }
273
-
274
- ret.wasm_multi_value(true);
275
- ret.wasm_bulk_memory(true);
276
- ret.wasm_simd(true);
277
- ret.wasm_backtrace_details(WasmBacktraceDetails::Environment);
278
-
279
- // This is on-by-default in `wasmparser` since it's a stage 4+ proposal
280
- // but it's not implemented in Wasmtime yet so disable it.
281
- ret.features.tail_call = false;
282
-
283
- ret
284
- }
285
-
286
- /// Sets the target triple for the [`Config`].
287
- ///
288
- /// By default, the host target triple is used for the [`Config`].
289
- ///
290
- /// This method can be used to change the target triple.
291
- ///
292
- /// Cranelift flags will not be inferred for the given target and any
293
- /// existing target-specific Cranelift flags will be cleared.
294
- ///
295
- /// # Errors
296
- ///
297
- /// This method will error if the given target triple is not supported.
298
- #[cfg(any(feature = "cranelift", feature = "winch"))]
299
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
300
- pub fn target(&mut self, target: &str) -> Result<&mut Self> {
301
- self.compiler_config.target =
302
- Some(target_lexicon::Triple::from_str(target).map_err(|e| anyhow::anyhow!(e))?);
303
-
304
- Ok(self)
305
- }
306
-
307
- /// Enables the incremental compilation cache in Cranelift, using the provided `CacheStore`
308
- /// backend for storage.
309
- #[cfg(all(feature = "incremental-cache", feature = "cranelift"))]
310
- pub fn enable_incremental_compilation(
311
- &mut self,
312
- cache_store: Arc<dyn CacheStore>,
313
- ) -> Result<&mut Self> {
314
- self.compiler_config.cache_store = Some(cache_store);
315
- Ok(self)
316
- }
317
-
318
- /// Whether or not to enable support for asynchronous functions in Wasmtime.
319
- ///
320
- /// When enabled, the config can optionally define host functions with `async`.
321
- /// Instances created and functions called with this `Config` *must* be called
322
- /// through their asynchronous APIs, however. For example using
323
- /// [`Func::call`](crate::Func::call) will panic when used with this config.
324
- ///
325
- /// # Asynchronous Wasm
326
- ///
327
- /// WebAssembly does not currently have a way to specify at the bytecode
328
- /// level what is and isn't async. Host-defined functions, however, may be
329
- /// defined as `async`. WebAssembly imports always appear synchronous, which
330
- /// gives rise to a bit of an impedance mismatch here. To solve this
331
- /// Wasmtime supports "asynchronous configs" which enables calling these
332
- /// asynchronous functions in a way that looks synchronous to the executing
333
- /// WebAssembly code.
334
- ///
335
- /// An asynchronous config must always invoke wasm code asynchronously,
336
- /// meaning we'll always represent its computation as a
337
- /// [`Future`](std::future::Future). The `poll` method of the futures
338
- /// returned by Wasmtime will perform the actual work of calling the
339
- /// WebAssembly. Wasmtime won't manage its own thread pools or similar,
340
- /// that's left up to the embedder.
341
- ///
342
- /// To implement futures in a way that WebAssembly sees asynchronous host
343
- /// functions as synchronous, all async Wasmtime futures will execute on a
344
- /// separately allocated native stack from the thread otherwise executing
345
- /// Wasmtime. This separate native stack can then be switched to and from.
346
- /// Using this whenever an `async` host function returns a future that
347
- /// resolves to `Pending` we switch away from the temporary stack back to
348
- /// the main stack and propagate the `Pending` status.
349
- ///
350
- /// In general it's encouraged that the integration with `async` and
351
- /// wasmtime is designed early on in your embedding of Wasmtime to ensure
352
- /// that it's planned that WebAssembly executes in the right context of your
353
- /// application.
354
- ///
355
- /// # Execution in `poll`
356
- ///
357
- /// The [`Future::poll`](std::future::Future::poll) method is the main
358
- /// driving force behind Rust's futures. That method's own documentation
359
- /// states "an implementation of `poll` should strive to return quickly, and
360
- /// should not block". This, however, can be at odds with executing
361
- /// WebAssembly code as part of the `poll` method itself. If your
362
- /// WebAssembly is untrusted then this could allow the `poll` method to take
363
- /// arbitrarily long in the worst case, likely blocking all other
364
- /// asynchronous tasks.
365
- ///
366
- /// To remedy this situation you have a a few possible ways to solve this:
367
- ///
368
- /// * The most efficient solution is to enable
369
- /// [`Config::epoch_interruption`] in conjunction with
370
- /// [`crate::Store::epoch_deadline_async_yield_and_update`]. Coupled with
371
- /// periodic calls to [`crate::Engine::increment_epoch`] this will cause
372
- /// executing WebAssembly to periodically yield back according to the
373
- /// epoch configuration settings. This enables `Future::poll` to take at
374
- /// most a certain amount of time according to epoch configuration
375
- /// settings and when increments happen. The benefit of this approach is
376
- /// that the instrumentation in compiled code is quite lightweight, but a
377
- /// downside can be that the scheduling is somewhat nondeterministic since
378
- /// increments are usually timer-based which are not always deterministic.
379
- ///
380
- /// Note that to prevent infinite execution of wasm it's recommended to
381
- /// place a timeout on the entire future representing executing wasm code
382
- /// and the periodic yields with epochs should ensure that when the
383
- /// timeout is reached it's appropriately recognized.
384
- ///
385
- /// * Alternatively you can enable the
386
- /// [`Config::consume_fuel`](crate::Config::consume_fuel) method as well
387
- /// as [`crate::Store::fuel_async_yield_interval`] When doing so this will
388
- /// configure Wasmtime futures to yield periodically while they're
389
- /// executing WebAssembly code. After consuming the specified amount of
390
- /// fuel wasm futures will return `Poll::Pending` from their `poll`
391
- /// method, and will get automatically re-polled later. This enables the
392
- /// `Future::poll` method to take roughly a fixed amount of time since
393
- /// fuel is guaranteed to get consumed while wasm is executing. Unlike
394
- /// epoch-based preemption this is deterministic since wasm always
395
- /// consumes a fixed amount of fuel per-operation. The downside of this
396
- /// approach, however, is that the compiled code instrumentation is
397
- /// significantly more expensive than epoch checks.
398
- ///
399
- /// Note that to prevent infinite execution of wasm it's recommended to
400
- /// place a timeout on the entire future representing executing wasm code
401
- /// and the periodic yields with epochs should ensure that when the
402
- /// timeout is reached it's appropriately recognized.
403
- ///
404
- /// In all cases special care needs to be taken when integrating
405
- /// asynchronous wasm into your application. You should carefully plan where
406
- /// WebAssembly will execute and what compute resources will be allotted to
407
- /// it. If Wasmtime doesn't support exactly what you'd like just yet, please
408
- /// feel free to open an issue!
409
- #[cfg(feature = "async")]
410
- #[cfg_attr(docsrs, doc(cfg(feature = "async")))]
411
- pub fn async_support(&mut self, enable: bool) -> &mut Self {
412
- self.async_support = enable;
413
- self
414
- }
415
-
416
- /// Configures whether DWARF debug information will be emitted during
417
- /// compilation.
418
- ///
419
- /// Note that the `debug-builtins` compile-time Cargo feature must also be
420
- /// enabled for native debuggers such as GDB or LLDB to be able to debug
421
- /// guest WebAssembly programs.
422
- ///
423
- /// By default this option is `false`.
424
- pub fn debug_info(&mut self, enable: bool) -> &mut Self {
425
- self.tunables.generate_native_debuginfo = Some(enable);
426
- self
427
- }
428
-
429
- /// Configures whether [`WasmBacktrace`] will be present in the context of
430
- /// errors returned from Wasmtime.
431
- ///
432
- /// A backtrace may be collected whenever an error is returned from a host
433
- /// function call through to WebAssembly or when WebAssembly itself hits a
434
- /// trap condition, such as an out-of-bounds memory access. This flag
435
- /// indicates, in these conditions, whether the backtrace is collected or
436
- /// not.
437
- ///
438
- /// Currently wasm backtraces are implemented through frame pointer walking.
439
- /// This means that collecting a backtrace is expected to be a fast and
440
- /// relatively cheap operation. Additionally backtrace collection is
441
- /// suitable in concurrent environments since one thread capturing a
442
- /// backtrace won't block other threads.
443
- ///
444
- /// Collected backtraces are attached via [`anyhow::Error::context`] to
445
- /// errors returned from host functions. The [`WasmBacktrace`] type can be
446
- /// acquired via [`anyhow::Error::downcast_ref`] to inspect the backtrace.
447
- /// When this option is disabled then this context is never applied to
448
- /// errors coming out of wasm.
449
- ///
450
- /// This option is `true` by default.
451
- ///
452
- /// [`WasmBacktrace`]: crate::WasmBacktrace
453
- pub fn wasm_backtrace(&mut self, enable: bool) -> &mut Self {
454
- self.wasm_backtrace = enable;
455
- self
456
- }
457
-
458
- /// Configures whether backtraces in `Trap` will parse debug info in the wasm file to
459
- /// have filename/line number information.
460
- ///
461
- /// When enabled this will causes modules to retain debugging information
462
- /// found in wasm binaries. This debug information will be used when a trap
463
- /// happens to symbolicate each stack frame and attempt to print a
464
- /// filename/line number for each wasm frame in the stack trace.
465
- ///
466
- /// By default this option is `WasmBacktraceDetails::Environment`, meaning
467
- /// that wasm will read `WASMTIME_BACKTRACE_DETAILS` to indicate whether details
468
- /// should be parsed.
469
- pub fn wasm_backtrace_details(&mut self, enable: WasmBacktraceDetails) -> &mut Self {
470
- self.wasm_backtrace_details_env_used = false;
471
- self.tunables.parse_wasm_debuginfo = match enable {
472
- WasmBacktraceDetails::Enable => Some(true),
473
- WasmBacktraceDetails::Disable => Some(false),
474
- WasmBacktraceDetails::Environment => {
475
- self.wasm_backtrace_details_env_used = true;
476
- std::env::var("WASMTIME_BACKTRACE_DETAILS")
477
- .map(|s| Some(s == "1"))
478
- .unwrap_or(Some(false))
479
- }
480
- };
481
- self
482
- }
483
-
484
- /// Configures whether to generate native unwind information
485
- /// (e.g. `.eh_frame` on Linux).
486
- ///
487
- /// This configuration option only exists to help third-party stack
488
- /// capturing mechanisms, such as the system's unwinder or the `backtrace`
489
- /// crate, determine how to unwind through Wasm frames. It does not affect
490
- /// whether Wasmtime can capture Wasm backtraces or not. The presence of
491
- /// [`WasmBacktrace`] is controlled by the [`Config::wasm_backtrace`]
492
- /// option.
493
- ///
494
- /// Native unwind information is included:
495
- /// - When targeting Windows, since the Windows ABI requires it.
496
- /// - By default.
497
- ///
498
- /// [`WasmBacktrace`]: crate::WasmBacktrace
499
- pub fn native_unwind_info(&mut self, enable: bool) -> &mut Self {
500
- self.native_unwind_info = Some(enable);
501
- self
502
- }
503
-
504
- /// Configures whether execution of WebAssembly will "consume fuel" to
505
- /// either halt or yield execution as desired.
506
- ///
507
- /// This can be used to deterministically prevent infinitely-executing
508
- /// WebAssembly code by instrumenting generated code to consume fuel as it
509
- /// executes. When fuel runs out a trap is raised, however [`Store`] can be
510
- /// configured to yield execution periodically via
511
- /// [`crate::Store::fuel_async_yield_interval`].
512
- ///
513
- /// Note that a [`Store`] starts with no fuel, so if you enable this option
514
- /// you'll have to be sure to pour some fuel into [`Store`] before
515
- /// executing some code.
516
- ///
517
- /// By default this option is `false`.
518
- ///
519
- /// [`Store`]: crate::Store
520
- pub fn consume_fuel(&mut self, enable: bool) -> &mut Self {
521
- self.tunables.consume_fuel = Some(enable);
522
- self
523
- }
524
-
525
- /// Enables epoch-based interruption.
526
- ///
527
- /// When executing code in async mode, we sometimes want to
528
- /// implement a form of cooperative timeslicing: long-running Wasm
529
- /// guest code should periodically yield to the executor
530
- /// loop. This yielding could be implemented by using "fuel" (see
531
- /// [`consume_fuel`](Config::consume_fuel)). However, fuel
532
- /// instrumentation is somewhat expensive: it modifies the
533
- /// compiled form of the Wasm code so that it maintains a precise
534
- /// instruction count, frequently checking this count against the
535
- /// remaining fuel. If one does not need this precise count or
536
- /// deterministic interruptions, and only needs a periodic
537
- /// interrupt of some form, then It would be better to have a more
538
- /// lightweight mechanism.
539
- ///
540
- /// Epoch-based interruption is that mechanism. There is a global
541
- /// "epoch", which is a counter that divides time into arbitrary
542
- /// periods (or epochs). This counter lives on the
543
- /// [`Engine`](crate::Engine) and can be incremented by calling
544
- /// [`Engine::increment_epoch`](crate::Engine::increment_epoch).
545
- /// Epoch-based instrumentation works by setting a "deadline
546
- /// epoch". The compiled code knows the deadline, and at certain
547
- /// points, checks the current epoch against that deadline. It
548
- /// will yield if the deadline has been reached.
549
- ///
550
- /// The idea is that checking an infrequently-changing counter is
551
- /// cheaper than counting and frequently storing a precise metric
552
- /// (instructions executed) locally. The interruptions are not
553
- /// deterministic, but if the embedder increments the epoch in a
554
- /// periodic way (say, every regular timer tick by a thread or
555
- /// signal handler), then we can ensure that all async code will
556
- /// yield to the executor within a bounded time.
557
- ///
558
- /// The deadline check cannot be avoided by malicious wasm code. It is safe
559
- /// to use epoch deadlines to limit the execution time of untrusted
560
- /// code.
561
- ///
562
- /// The [`Store`](crate::Store) tracks the deadline, and controls
563
- /// what happens when the deadline is reached during
564
- /// execution. Several behaviors are possible:
565
- ///
566
- /// - Trap if code is executing when the epoch deadline is
567
- /// met. See
568
- /// [`Store::epoch_deadline_trap`](crate::Store::epoch_deadline_trap).
569
- ///
570
- /// - Call an arbitrary function. This function may chose to trap or
571
- /// increment the epoch. See
572
- /// [`Store::epoch_deadline_callback`](crate::Store::epoch_deadline_callback).
573
- ///
574
- /// - Yield to the executor loop, then resume when the future is
575
- /// next polled. See
576
- /// [`Store::epoch_deadline_async_yield_and_update`](crate::Store::epoch_deadline_async_yield_and_update).
577
- ///
578
- /// Trapping is the default. The yielding behaviour may be used for
579
- /// the timeslicing behavior described above.
580
- ///
581
- /// This feature is available with or without async support.
582
- /// However, without async support, the timeslicing behaviour is
583
- /// not available. This means epoch-based interruption can only
584
- /// serve as a simple external-interruption mechanism.
585
- ///
586
- /// An initial deadline must be set before executing code by calling
587
- /// [`Store::set_epoch_deadline`](crate::Store::set_epoch_deadline). If this
588
- /// deadline is not configured then wasm will immediately trap.
589
- ///
590
- /// ## When to use fuel vs. epochs
591
- ///
592
- /// In general, epoch-based interruption results in faster
593
- /// execution. This difference is sometimes significant: in some
594
- /// measurements, up to 2-3x. This is because epoch-based
595
- /// interruption does less work: it only watches for a global
596
- /// rarely-changing counter to increment, rather than keeping a
597
- /// local frequently-changing counter and comparing it to a
598
- /// deadline.
599
- ///
600
- /// Fuel, in contrast, should be used when *deterministic*
601
- /// yielding or trapping is needed. For example, if it is required
602
- /// that the same function call with the same starting state will
603
- /// always either complete or trap with an out-of-fuel error,
604
- /// deterministically, then fuel with a fixed bound should be
605
- /// used.
606
- ///
607
- /// # See Also
608
- ///
609
- /// - [`Engine::increment_epoch`](crate::Engine::increment_epoch)
610
- /// - [`Store::set_epoch_deadline`](crate::Store::set_epoch_deadline)
611
- /// - [`Store::epoch_deadline_trap`](crate::Store::epoch_deadline_trap)
612
- /// - [`Store::epoch_deadline_callback`](crate::Store::epoch_deadline_callback)
613
- /// - [`Store::epoch_deadline_async_yield_and_update`](crate::Store::epoch_deadline_async_yield_and_update)
614
- pub fn epoch_interruption(&mut self, enable: bool) -> &mut Self {
615
- self.tunables.epoch_interruption = Some(enable);
616
- self
617
- }
618
-
619
- /// Configures the maximum amount of stack space available for
620
- /// executing WebAssembly code.
621
- ///
622
- /// WebAssembly has well-defined semantics on stack overflow. This is
623
- /// intended to be a knob which can help configure how much stack space
624
- /// wasm execution is allowed to consume. Note that the number here is not
625
- /// super-precise, but rather wasm will take at most "pretty close to this
626
- /// much" stack space.
627
- ///
628
- /// If a wasm call (or series of nested wasm calls) take more stack space
629
- /// than the `size` specified then a stack overflow trap will be raised.
630
- ///
631
- /// Caveat: this knob only limits the stack space consumed by wasm code.
632
- /// More importantly, it does not ensure that this much stack space is
633
- /// available on the calling thread stack. Exhausting the thread stack
634
- /// typically leads to an **abort** of the process.
635
- ///
636
- /// Here are some examples of how that could happen:
637
- ///
638
- /// - Let's assume this option is set to 2 MiB and then a thread that has
639
- /// a stack with 512 KiB left.
640
- ///
641
- /// If wasm code consumes more than 512 KiB then the process will be aborted.
642
- ///
643
- /// - Assuming the same conditions, but this time wasm code does not consume
644
- /// any stack but calls into a host function. The host function consumes
645
- /// more than 512 KiB of stack space. The process will be aborted.
646
- ///
647
- /// There's another gotcha related to recursive calling into wasm: the stack
648
- /// space consumed by a host function is counted towards this limit. The
649
- /// host functions are not prevented from consuming more than this limit.
650
- /// However, if the host function that used more than this limit and called
651
- /// back into wasm, then the execution will trap immediatelly because of
652
- /// stack overflow.
653
- ///
654
- /// When the `async` feature is enabled, this value cannot exceed the
655
- /// `async_stack_size` option. Be careful not to set this value too close
656
- /// to `async_stack_size` as doing so may limit how much stack space
657
- /// is available for host functions.
658
- ///
659
- /// By default this option is 512 KiB.
660
- ///
661
- /// # Errors
662
- ///
663
- /// The `Engine::new` method will fail if the `size` specified here is
664
- /// either 0 or larger than the [`Config::async_stack_size`] configuration.
665
- pub fn max_wasm_stack(&mut self, size: usize) -> &mut Self {
666
- self.max_wasm_stack = size;
667
- self
668
- }
669
-
670
- /// Configures the size of the stacks used for asynchronous execution.
671
- ///
672
- /// This setting configures the size of the stacks that are allocated for
673
- /// asynchronous execution. The value cannot be less than `max_wasm_stack`.
674
- ///
675
- /// The amount of stack space guaranteed for host functions is
676
- /// `async_stack_size - max_wasm_stack`, so take care not to set these two values
677
- /// close to one another; doing so may cause host functions to overflow the
678
- /// stack and abort the process.
679
- ///
680
- /// By default this option is 2 MiB.
681
- ///
682
- /// # Errors
683
- ///
684
- /// The `Engine::new` method will fail if the value for this option is
685
- /// smaller than the [`Config::max_wasm_stack`] option.
686
- #[cfg(feature = "async")]
687
- #[cfg_attr(docsrs, doc(cfg(feature = "async")))]
688
- pub fn async_stack_size(&mut self, size: usize) -> &mut Self {
689
- self.async_stack_size = size;
690
- self
691
- }
692
-
693
- /// Configures whether the WebAssembly tail calls proposal will be enabled
694
- /// for compilation or not.
695
- ///
696
- /// The [WebAssembly tail calls proposal] introduces the `return_call` and
697
- /// `return_call_indirect` instructions. These instructions allow for Wasm
698
- /// programs to implement some recursive algorithms with *O(1)* stack space
699
- /// usage.
700
- ///
701
- /// This feature is disabled by default.
702
- ///
703
- /// [WebAssembly tail calls proposal]: https://github.com/WebAssembly/tail-call
704
- pub fn wasm_tail_call(&mut self, enable: bool) -> &mut Self {
705
- self.features.tail_call = enable;
706
- self.tunables.tail_callable = Some(enable);
707
- self
708
- }
709
-
710
- /// Configures whether the WebAssembly [threads] proposal will be enabled
711
- /// for compilation.
712
- ///
713
- /// This feature gates items such as shared memories and atomic
714
- /// instructions. Note that the threads feature depends on the bulk memory
715
- /// feature, which is enabled by default. Additionally note that while the
716
- /// wasm feature is called "threads" it does not actually include the
717
- /// ability to spawn threads. Spawning threads is part of the [wasi-threads]
718
- /// proposal which is a separately gated feature in Wasmtime.
719
- ///
720
- /// Embeddings of Wasmtime are able to build their own custom threading
721
- /// scheme on top of the core wasm threads proposal, however.
722
- ///
723
- /// This is `true` by default.
724
- ///
725
- /// [threads]: https://github.com/webassembly/threads
726
- /// [wasi-threads]: https://github.com/webassembly/wasi-threads
727
- #[cfg(feature = "threads")]
728
- #[cfg_attr(docsrs, doc(cfg(feature = "threads")))]
729
- pub fn wasm_threads(&mut self, enable: bool) -> &mut Self {
730
- self.features.threads = enable;
731
- self
732
- }
733
-
734
- /// Configures whether the [WebAssembly reference types proposal][proposal]
735
- /// will be enabled for compilation.
736
- ///
737
- /// This feature gates items such as the `externref` and `funcref` types as
738
- /// well as allowing a module to define multiple tables.
739
- ///
740
- /// Note that the reference types proposal depends on the bulk memory proposal.
741
- ///
742
- /// This feature is `true` by default.
743
- ///
744
- /// # Errors
745
- ///
746
- /// The validation of this feature are deferred until the engine is being built,
747
- /// and thus may cause `Engine::new` fail if the `bulk_memory` feature is disabled.
748
- ///
749
- /// [proposal]: https://github.com/webassembly/reference-types
750
- #[cfg(feature = "gc")]
751
- #[cfg_attr(docsrs, doc(cfg(feature = "gc")))]
752
- pub fn wasm_reference_types(&mut self, enable: bool) -> &mut Self {
753
- self.features.reference_types = enable;
754
- self
755
- }
756
-
757
- /// Configures whether the [WebAssembly function references
758
- /// proposal][proposal] will be enabled for compilation.
759
- ///
760
- /// This feature gates non-nullable reference types, function reference
761
- /// types, `call_ref`, `ref.func`, and non-nullable reference related
762
- /// instructions.
763
- ///
764
- /// Note that the function references proposal depends on the reference
765
- /// types proposal.
766
- ///
767
- /// This feature is `false` by default.
768
- ///
769
- /// [proposal]: https://github.com/WebAssembly/function-references
770
- #[cfg(feature = "gc")]
771
- #[cfg_attr(docsrs, doc(cfg(feature = "gc")))]
772
- pub fn wasm_function_references(&mut self, enable: bool) -> &mut Self {
773
- self.features.function_references = enable;
774
- self
775
- }
776
-
777
- /// Configures whether the [WebAssembly Garbage Collection
778
- /// proposal][proposal] will be enabled for compilation.
779
- ///
780
- /// This feature gates `struct` and `array` type definitions and references,
781
- /// the `i31ref` type, and all related instructions.
782
- ///
783
- /// Note that the function references proposal depends on the typed function
784
- /// references proposal.
785
- ///
786
- /// This feature is `false` by default.
787
- ///
788
- /// **Warning: Wasmtime's implementation of the GC proposal is still in
789
- /// progress and generally not ready for primetime.**
790
- ///
791
- /// [proposal]: https://github.com/WebAssembly/gc
792
- #[cfg(feature = "gc")]
793
- #[cfg_attr(docsrs, doc(cfg(feature = "gc")))]
794
- pub fn wasm_gc(&mut self, enable: bool) -> &mut Self {
795
- self.features.gc = enable;
796
- self
797
- }
798
-
799
- /// Configures whether the WebAssembly SIMD proposal will be
800
- /// enabled for compilation.
801
- ///
802
- /// The [WebAssembly SIMD proposal][proposal]. This feature gates items such
803
- /// as the `v128` type and all of its operators being in a module. Note that
804
- /// this does not enable the [relaxed simd proposal].
805
- ///
806
- /// On x86_64 platforms note that enabling this feature requires SSE 4.2 and
807
- /// below to be available on the target platform. Compilation will fail if
808
- /// the compile target does not include SSE 4.2.
809
- ///
810
- /// This is `true` by default.
811
- ///
812
- /// [proposal]: https://github.com/webassembly/simd
813
- /// [relaxed simd proposal]: https://github.com/WebAssembly/relaxed-simd
814
- pub fn wasm_simd(&mut self, enable: bool) -> &mut Self {
815
- self.features.simd = enable;
816
- self
817
- }
818
-
819
- /// Configures whether the WebAssembly Relaxed SIMD proposal will be
820
- /// enabled for compilation.
821
- ///
822
- /// The relaxed SIMD proposal adds new instructions to WebAssembly which,
823
- /// for some specific inputs, are allowed to produce different results on
824
- /// different hosts. More-or-less this proposal enables exposing
825
- /// platform-specific semantics of SIMD instructions in a controlled
826
- /// fashion to a WebAssembly program. From an embedder's perspective this
827
- /// means that WebAssembly programs may execute differently depending on
828
- /// whether the host is x86_64 or AArch64, for example.
829
- ///
830
- /// By default Wasmtime lowers relaxed SIMD instructions to the fastest
831
- /// lowering for the platform it's running on. This means that, by default,
832
- /// some relaxed SIMD instructions may have different results for the same
833
- /// inputs across x86_64 and AArch64. This behavior can be disabled through
834
- /// the [`Config::relaxed_simd_deterministic`] option which will force
835
- /// deterministic behavior across all platforms, as classified by the
836
- /// specification, at the cost of performance.
837
- ///
838
- /// This is `true` by default.
839
- ///
840
- /// [proposal]: https://github.com/webassembly/relaxed-simd
841
- pub fn wasm_relaxed_simd(&mut self, enable: bool) -> &mut Self {
842
- self.features.relaxed_simd = enable;
843
- self
844
- }
845
-
846
- /// This option can be used to control the behavior of the [relaxed SIMD
847
- /// proposal's][proposal] instructions.
848
- ///
849
- /// The relaxed SIMD proposal introduces instructions that are allowed to
850
- /// have different behavior on different architectures, primarily to afford
851
- /// an efficient implementation on all architectures. This means, however,
852
- /// that the same module may execute differently on one host than another,
853
- /// which typically is not otherwise the case. This option is provided to
854
- /// force Wasmtime to generate deterministic code for all relaxed simd
855
- /// instructions, at the cost of performance, for all architectures. When
856
- /// this option is enabled then the deterministic behavior of all
857
- /// instructions in the relaxed SIMD proposal is selected.
858
- ///
859
- /// This is `false` by default.
860
- ///
861
- /// [proposal]: https://github.com/webassembly/relaxed-simd
862
- pub fn relaxed_simd_deterministic(&mut self, enable: bool) -> &mut Self {
863
- self.tunables.relaxed_simd_deterministic = Some(enable);
864
- self
865
- }
866
-
867
- /// Configures whether the [WebAssembly bulk memory operations
868
- /// proposal][proposal] will be enabled for compilation.
869
- ///
870
- /// This feature gates items such as the `memory.copy` instruction, passive
871
- /// data/table segments, etc, being in a module.
872
- ///
873
- /// This is `true` by default.
874
- ///
875
- /// Feature `reference_types`, which is also `true` by default, requires
876
- /// this feature to be enabled. Thus disabling this feature must also disable
877
- /// `reference_types` as well using [`wasm_reference_types`](crate::Config::wasm_reference_types).
878
- ///
879
- /// # Errors
880
- ///
881
- /// Disabling this feature without disabling `reference_types` will cause
882
- /// `Engine::new` to fail.
883
- ///
884
- /// [proposal]: https://github.com/webassembly/bulk-memory-operations
885
- pub fn wasm_bulk_memory(&mut self, enable: bool) -> &mut Self {
886
- self.features.bulk_memory = enable;
887
- self
888
- }
889
-
890
- /// Configures whether the WebAssembly multi-value [proposal] will
891
- /// be enabled for compilation.
892
- ///
893
- /// This feature gates functions and blocks returning multiple values in a
894
- /// module, for example.
895
- ///
896
- /// This is `true` by default.
897
- ///
898
- /// [proposal]: https://github.com/webassembly/multi-value
899
- pub fn wasm_multi_value(&mut self, enable: bool) -> &mut Self {
900
- self.features.multi_value = enable;
901
- self
902
- }
903
-
904
- /// Configures whether the WebAssembly multi-memory [proposal] will
905
- /// be enabled for compilation.
906
- ///
907
- /// This feature gates modules having more than one linear memory
908
- /// declaration or import.
909
- ///
910
- /// This is `true` by default.
911
- ///
912
- /// [proposal]: https://github.com/webassembly/multi-memory
913
- pub fn wasm_multi_memory(&mut self, enable: bool) -> &mut Self {
914
- self.features.multi_memory = enable;
915
- self
916
- }
917
-
918
- /// Configures whether the WebAssembly memory64 [proposal] will
919
- /// be enabled for compilation.
920
- ///
921
- /// Note that this the upstream specification is not finalized and Wasmtime
922
- /// may also have bugs for this feature since it hasn't been exercised
923
- /// much.
924
- ///
925
- /// This is `false` by default.
926
- ///
927
- /// [proposal]: https://github.com/webassembly/memory64
928
- pub fn wasm_memory64(&mut self, enable: bool) -> &mut Self {
929
- self.features.memory64 = enable;
930
- self
931
- }
932
-
933
- /// Configures whether the WebAssembly component-model [proposal] will
934
- /// be enabled for compilation.
935
- ///
936
- /// Note that this feature is a work-in-progress and is incomplete.
937
- ///
938
- /// This is `false` by default.
939
- ///
940
- /// [proposal]: https://github.com/webassembly/component-model
941
- #[cfg(feature = "component-model")]
942
- pub fn wasm_component_model(&mut self, enable: bool) -> &mut Self {
943
- self.features.component_model = enable;
944
- self
945
- }
946
-
947
- /// Configures which compilation strategy will be used for wasm modules.
948
- ///
949
- /// This method can be used to configure which compiler is used for wasm
950
- /// modules, and for more documentation consult the [`Strategy`] enumeration
951
- /// and its documentation.
952
- ///
953
- /// The default value for this is `Strategy::Auto`.
954
- #[cfg(any(feature = "cranelift", feature = "winch"))]
955
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
956
- pub fn strategy(&mut self, strategy: Strategy) -> &mut Self {
957
- self.compiler_config.strategy = strategy;
958
- self
959
- }
960
-
961
- /// Creates a default profiler based on the profiling strategy chosen.
962
- ///
963
- /// Profiler creation calls the type's default initializer where the purpose is
964
- /// really just to put in place the type used for profiling.
965
- ///
966
- /// Some [`ProfilingStrategy`] require specific platforms or particular feature
967
- /// to be enabled, such as `ProfilingStrategy::JitDump` requires the `jitdump`
968
- /// feature.
969
- ///
970
- /// # Errors
971
- ///
972
- /// The validation of this field is deferred until the engine is being built, and thus may
973
- /// cause `Engine::new` fail if the required feature is disabled, or the platform is not
974
- /// supported.
975
- pub fn profiler(&mut self, profile: ProfilingStrategy) -> &mut Self {
976
- self.profiling_strategy = profile;
977
- self
978
- }
979
-
980
- /// Configures whether the debug verifier of Cranelift is enabled or not.
981
- ///
982
- /// When Cranelift is used as a code generation backend this will configure
983
- /// it to have the `enable_verifier` flag which will enable a number of debug
984
- /// checks inside of Cranelift. This is largely only useful for the
985
- /// developers of wasmtime itself.
986
- ///
987
- /// The default value for this is `false`
988
- #[cfg(any(feature = "cranelift", feature = "winch"))]
989
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
990
- pub fn cranelift_debug_verifier(&mut self, enable: bool) -> &mut Self {
991
- let val = if enable { "true" } else { "false" };
992
- self.compiler_config
993
- .settings
994
- .insert("enable_verifier".to_string(), val.to_string());
995
- self
996
- }
997
-
998
- /// Configures the Cranelift code generator optimization level.
999
- ///
1000
- /// When the Cranelift code generator is used you can configure the
1001
- /// optimization level used for generated code in a few various ways. For
1002
- /// more information see the documentation of [`OptLevel`].
1003
- ///
1004
- /// The default value for this is `OptLevel::None`.
1005
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1006
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
1007
- pub fn cranelift_opt_level(&mut self, level: OptLevel) -> &mut Self {
1008
- let val = match level {
1009
- OptLevel::None => "none",
1010
- OptLevel::Speed => "speed",
1011
- OptLevel::SpeedAndSize => "speed_and_size",
1012
- };
1013
- self.compiler_config
1014
- .settings
1015
- .insert("opt_level".to_string(), val.to_string());
1016
- self
1017
- }
1018
-
1019
- /// Configures whether Cranelift should perform a NaN-canonicalization pass.
1020
- ///
1021
- /// When Cranelift is used as a code generation backend this will configure
1022
- /// it to replace NaNs with a single canonical value. This is useful for
1023
- /// users requiring entirely deterministic WebAssembly computation. This is
1024
- /// not required by the WebAssembly spec, so it is not enabled by default.
1025
- ///
1026
- /// Note that this option affects not only WebAssembly's `f32` and `f64`
1027
- /// types but additionally the `v128` type. This option will cause
1028
- /// operations using any of these types to have extra checks placed after
1029
- /// them to normalize NaN values as needed.
1030
- ///
1031
- /// The default value for this is `false`
1032
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1033
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
1034
- pub fn cranelift_nan_canonicalization(&mut self, enable: bool) -> &mut Self {
1035
- let val = if enable { "true" } else { "false" };
1036
- self.compiler_config
1037
- .settings
1038
- .insert("enable_nan_canonicalization".to_string(), val.to_string());
1039
- self
1040
- }
1041
-
1042
- /// Controls whether proof-carrying code (PCC) is used to validate
1043
- /// lowering of Wasm sandbox checks.
1044
- ///
1045
- /// Proof-carrying code carries "facts" about program values from
1046
- /// the IR all the way to machine code, and checks those facts
1047
- /// against known machine-instruction semantics. This guards
1048
- /// against bugs in instruction lowering that might create holes
1049
- /// in the Wasm sandbox.
1050
- ///
1051
- /// PCC is designed to be fast: it does not require complex
1052
- /// solvers or logic engines to verify, but only a linear pass
1053
- /// over a trail of "breadcrumbs" or facts at each intermediate
1054
- /// value. Thus, it is appropriate to enable in production.
1055
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1056
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
1057
- pub fn cranelift_pcc(&mut self, enable: bool) -> &mut Self {
1058
- let val = if enable { "true" } else { "false" };
1059
- self.compiler_config
1060
- .settings
1061
- .insert("enable_pcc".to_string(), val.to_string());
1062
- self
1063
- }
1064
-
1065
- /// Allows setting a Cranelift boolean flag or preset. This allows
1066
- /// fine-tuning of Cranelift settings.
1067
- ///
1068
- /// Since Cranelift flags may be unstable, this method should not be considered to be stable
1069
- /// either; other `Config` functions should be preferred for stability.
1070
- ///
1071
- /// # Safety
1072
- ///
1073
- /// This is marked as unsafe, because setting the wrong flag might break invariants,
1074
- /// resulting in execution hazards.
1075
- ///
1076
- /// # Errors
1077
- ///
1078
- /// The validation of the flags are deferred until the engine is being built, and thus may
1079
- /// cause `Engine::new` fail if the flag's name does not exist, or the value is not appropriate
1080
- /// for the flag type.
1081
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1082
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
1083
- pub unsafe fn cranelift_flag_enable(&mut self, flag: &str) -> &mut Self {
1084
- self.compiler_config.flags.insert(flag.to_string());
1085
- self
1086
- }
1087
-
1088
- /// Allows settings another Cranelift flag defined by a flag name and value. This allows
1089
- /// fine-tuning of Cranelift settings.
1090
- ///
1091
- /// Since Cranelift flags may be unstable, this method should not be considered to be stable
1092
- /// either; other `Config` functions should be preferred for stability.
1093
- ///
1094
- /// # Safety
1095
- ///
1096
- /// This is marked as unsafe, because setting the wrong flag might break invariants,
1097
- /// resulting in execution hazards.
1098
- ///
1099
- /// # Errors
1100
- ///
1101
- /// The validation of the flags are deferred until the engine is being built, and thus may
1102
- /// cause `Engine::new` fail if the flag's name does not exist, or incompatible with other
1103
- /// settings.
1104
- ///
1105
- /// For example, feature `wasm_backtrace` will set `unwind_info` to `true`, but if it's
1106
- /// manually set to false then it will fail.
1107
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1108
- #[cfg_attr(docsrs, doc(cfg(any(feature = "cranelift", feature = "winch"))))]
1109
- pub unsafe fn cranelift_flag_set(&mut self, name: &str, value: &str) -> &mut Self {
1110
- self.compiler_config
1111
- .settings
1112
- .insert(name.to_string(), value.to_string());
1113
- self
1114
- }
1115
-
1116
- /// Loads cache configuration specified at `path`.
1117
- ///
1118
- /// This method will read the file specified by `path` on the filesystem and
1119
- /// attempt to load cache configuration from it. This method can also fail
1120
- /// due to I/O errors, misconfiguration, syntax errors, etc. For expected
1121
- /// syntax in the configuration file see the [documentation online][docs].
1122
- ///
1123
- /// By default cache configuration is not enabled or loaded.
1124
- ///
1125
- /// This method is only available when the `cache` feature of this crate is
1126
- /// enabled.
1127
- ///
1128
- /// # Errors
1129
- ///
1130
- /// This method can fail due to any error that happens when loading the file
1131
- /// pointed to by `path` and attempting to load the cache configuration.
1132
- ///
1133
- /// [docs]: https://bytecodealliance.github.io/wasmtime/cli-cache.html
1134
- #[cfg(feature = "cache")]
1135
- #[cfg_attr(docsrs, doc(cfg(feature = "cache")))]
1136
- pub fn cache_config_load(&mut self, path: impl AsRef<Path>) -> Result<&mut Self> {
1137
- self.cache_config = CacheConfig::from_file(Some(path.as_ref()))?;
1138
- Ok(self)
1139
- }
1140
-
1141
- /// Disable caching.
1142
- ///
1143
- /// Every call to [`Module::new(my_wasm)`][crate::Module::new] will
1144
- /// recompile `my_wasm`, even when it is unchanged.
1145
- ///
1146
- /// By default, new configs do not have caching enabled. This method is only
1147
- /// useful for disabling a previous cache configuration.
1148
- ///
1149
- /// This method is only available when the `cache` feature of this crate is
1150
- /// enabled.
1151
- #[cfg(feature = "cache")]
1152
- #[cfg_attr(docsrs, doc(cfg(feature = "cache")))]
1153
- pub fn disable_cache(&mut self) -> &mut Self {
1154
- self.cache_config = CacheConfig::new_cache_disabled();
1155
- self
1156
- }
1157
-
1158
- /// Loads cache configuration from the system default path.
1159
- ///
1160
- /// This commit is the same as [`Config::cache_config_load`] except that it
1161
- /// does not take a path argument and instead loads the default
1162
- /// configuration present on the system. This is located, for example, on
1163
- /// Unix at `$HOME/.config/wasmtime/config.toml` and is typically created
1164
- /// with the `wasmtime config new` command.
1165
- ///
1166
- /// By default cache configuration is not enabled or loaded.
1167
- ///
1168
- /// This method is only available when the `cache` feature of this crate is
1169
- /// enabled.
1170
- ///
1171
- /// # Errors
1172
- ///
1173
- /// This method can fail due to any error that happens when loading the
1174
- /// default system configuration. Note that it is not an error if the
1175
- /// default config file does not exist, in which case the default settings
1176
- /// for an enabled cache are applied.
1177
- ///
1178
- /// [docs]: https://bytecodealliance.github.io/wasmtime/cli-cache.html
1179
- #[cfg(feature = "cache")]
1180
- #[cfg_attr(docsrs, doc(cfg(feature = "cache")))]
1181
- pub fn cache_config_load_default(&mut self) -> Result<&mut Self> {
1182
- self.cache_config = CacheConfig::from_file(None)?;
1183
- Ok(self)
1184
- }
1185
-
1186
- /// Sets a custom memory creator.
1187
- ///
1188
- /// Custom memory creators are used when creating host `Memory` objects or when
1189
- /// creating instance linear memories for the on-demand instance allocation strategy.
1190
- #[cfg(feature = "runtime")]
1191
- pub fn with_host_memory(&mut self, mem_creator: Arc<dyn MemoryCreator>) -> &mut Self {
1192
- self.mem_creator = Some(Arc::new(MemoryCreatorProxy(mem_creator)));
1193
- self
1194
- }
1195
-
1196
- /// Sets a custom stack creator.
1197
- ///
1198
- /// Custom memory creators are used when creating creating async instance stacks for
1199
- /// the on-demand instance allocation strategy.
1200
- #[cfg(feature = "async")]
1201
- #[cfg_attr(docsrs, doc(cfg(feature = "async")))]
1202
- pub fn with_host_stack(&mut self, stack_creator: Arc<dyn StackCreator>) -> &mut Self {
1203
- self.stack_creator = Some(Arc::new(StackCreatorProxy(stack_creator)));
1204
- self
1205
- }
1206
-
1207
- /// Sets the instance allocation strategy to use.
1208
- ///
1209
- /// When using the pooling instance allocation strategy, all linear memories
1210
- /// will be created as "static" and the
1211
- /// [`Config::static_memory_maximum_size`] and
1212
- /// [`Config::static_memory_guard_size`] options will be used to configure
1213
- /// the virtual memory allocations of linear memories.
1214
- pub fn allocation_strategy(&mut self, strategy: InstanceAllocationStrategy) -> &mut Self {
1215
- self.allocation_strategy = strategy;
1216
- self
1217
- }
1218
-
1219
- /// Configures the maximum size, in bytes, where a linear memory is
1220
- /// considered static, above which it'll be considered dynamic.
1221
- ///
1222
- /// > Note: this value has important performance ramifications, be sure to
1223
- /// > understand what this value does before tweaking it and benchmarking.
1224
- ///
1225
- /// This function configures the threshold for wasm memories whether they're
1226
- /// implemented as a dynamically relocatable chunk of memory or a statically
1227
- /// located chunk of memory. The `max_size` parameter here is the size, in
1228
- /// bytes, where if the maximum size of a linear memory is below `max_size`
1229
- /// then it will be statically allocated with enough space to never have to
1230
- /// move. If the maximum size of a linear memory is larger than `max_size`
1231
- /// then wasm memory will be dynamically located and may move in memory
1232
- /// through growth operations.
1233
- ///
1234
- /// Specifying a `max_size` of 0 means that all memories will be dynamic and
1235
- /// may be relocated through `memory.grow`. Also note that if any wasm
1236
- /// memory's maximum size is below `max_size` then it will still reserve
1237
- /// `max_size` bytes in the virtual memory space.
1238
- ///
1239
- /// ## Static vs Dynamic Memory
1240
- ///
1241
- /// Linear memories represent contiguous arrays of bytes, but they can also
1242
- /// be grown through the API and wasm instructions. When memory is grown if
1243
- /// space hasn't been preallocated then growth may involve relocating the
1244
- /// base pointer in memory. Memories in Wasmtime are classified in two
1245
- /// different ways:
1246
- ///
1247
- /// * **static** - these memories preallocate all space necessary they'll
1248
- /// ever need, meaning that the base pointer of these memories is never
1249
- /// moved. Static memories may take more virtual memory space because of
1250
- /// pre-reserving space for memories.
1251
- ///
1252
- /// * **dynamic** - these memories are not preallocated and may move during
1253
- /// growth operations. Dynamic memories consume less virtual memory space
1254
- /// because they don't need to preallocate space for future growth.
1255
- ///
1256
- /// Static memories can be optimized better in JIT code because once the
1257
- /// base address is loaded in a function it's known that we never need to
1258
- /// reload it because it never changes, `memory.grow` is generally a pretty
1259
- /// fast operation because the wasm memory is never relocated, and under
1260
- /// some conditions bounds checks can be elided on memory accesses.
1261
- ///
1262
- /// Dynamic memories can't be quite as heavily optimized because the base
1263
- /// address may need to be reloaded more often, they may require relocating
1264
- /// lots of data on `memory.grow`, and dynamic memories require
1265
- /// unconditional bounds checks on all memory accesses.
1266
- ///
1267
- /// ## Should you use static or dynamic memory?
1268
- ///
1269
- /// In general you probably don't need to change the value of this property.
1270
- /// The defaults here are optimized for each target platform to consume a
1271
- /// reasonable amount of physical memory while also generating speedy
1272
- /// machine code.
1273
- ///
1274
- /// One of the main reasons you may want to configure this today is if your
1275
- /// environment can't reserve virtual memory space for each wasm linear
1276
- /// memory. On 64-bit platforms wasm memories require a 6GB reservation by
1277
- /// default, and system limits may prevent this in some scenarios. In this
1278
- /// case you may wish to force memories to be allocated dynamically meaning
1279
- /// that the virtual memory footprint of creating a wasm memory should be
1280
- /// exactly what's used by the wasm itself.
1281
- ///
1282
- /// For 32-bit memories a static memory must contain at least 4GB of
1283
- /// reserved address space plus a guard page to elide any bounds checks at
1284
- /// all. Smaller static memories will use similar bounds checks as dynamic
1285
- /// memories.
1286
- ///
1287
- /// ## Default
1288
- ///
1289
- /// The default value for this property depends on the host platform. For
1290
- /// 64-bit platforms there's lots of address space available, so the default
1291
- /// configured here is 4GB. WebAssembly linear memories currently max out at
1292
- /// 4GB which means that on 64-bit platforms Wasmtime by default always uses
1293
- /// a static memory. This, coupled with a sufficiently sized guard region,
1294
- /// should produce the fastest JIT code on 64-bit platforms, but does
1295
- /// require a large address space reservation for each wasm memory.
1296
- ///
1297
- /// For 32-bit platforms this value defaults to 1GB. This means that wasm
1298
- /// memories whose maximum size is less than 1GB will be allocated
1299
- /// statically, otherwise they'll be considered dynamic.
1300
- ///
1301
- /// ## Static Memory and Pooled Instance Allocation
1302
- ///
1303
- /// When using the pooling instance allocator memories are considered to
1304
- /// always be static memories, they are never dynamic. This setting
1305
- /// configures the size of linear memory to reserve for each memory in the
1306
- /// pooling allocator.
1307
- ///
1308
- /// Note that the pooling allocator can reduce the amount of memory needed
1309
- /// for pooling allocation by using memory protection; see
1310
- /// `PoolingAllocatorConfig::memory_protection_keys` for details.
1311
- pub fn static_memory_maximum_size(&mut self, max_size: u64) -> &mut Self {
1312
- let max_pages = max_size / u64::from(wasmtime_environ::WASM_PAGE_SIZE);
1313
- self.tunables.static_memory_bound = Some(max_pages);
1314
- self
1315
- }
1316
-
1317
- /// Indicates that the "static" style of memory should always be used.
1318
- ///
1319
- /// This configuration option enables selecting the "static" option for all
1320
- /// linear memories created within this `Config`. This means that all
1321
- /// memories will be allocated up-front and will never move. Additionally
1322
- /// this means that all memories are synthetically limited by the
1323
- /// [`Config::static_memory_maximum_size`] option, regardless of what the
1324
- /// actual maximum size is on the memory's original type.
1325
- ///
1326
- /// For the difference between static and dynamic memories, see the
1327
- /// [`Config::static_memory_maximum_size`].
1328
- pub fn static_memory_forced(&mut self, force: bool) -> &mut Self {
1329
- self.tunables.static_memory_bound_is_maximum = Some(force);
1330
- self
1331
- }
1332
-
1333
- /// Configures the size, in bytes, of the guard region used at the end of a
1334
- /// static memory's address space reservation.
1335
- ///
1336
- /// > Note: this value has important performance ramifications, be sure to
1337
- /// > understand what this value does before tweaking it and benchmarking.
1338
- ///
1339
- /// All WebAssembly loads/stores are bounds-checked and generate a trap if
1340
- /// they're out-of-bounds. Loads and stores are often very performance
1341
- /// critical, so we want the bounds check to be as fast as possible!
1342
- /// Accelerating these memory accesses is the motivation for a guard after a
1343
- /// memory allocation.
1344
- ///
1345
- /// Memories (both static and dynamic) can be configured with a guard at the
1346
- /// end of them which consists of unmapped virtual memory. This unmapped
1347
- /// memory will trigger a memory access violation (e.g. segfault) if
1348
- /// accessed. This allows JIT code to elide bounds checks if it can prove
1349
- /// that an access, if out of bounds, would hit the guard region. This means
1350
- /// that having such a guard of unmapped memory can remove the need for
1351
- /// bounds checks in JIT code.
1352
- ///
1353
- /// For the difference between static and dynamic memories, see the
1354
- /// [`Config::static_memory_maximum_size`].
1355
- ///
1356
- /// ## How big should the guard be?
1357
- ///
1358
- /// In general, like with configuring `static_memory_maximum_size`, you
1359
- /// probably don't want to change this value from the defaults. Otherwise,
1360
- /// though, the size of the guard region affects the number of bounds checks
1361
- /// needed for generated wasm code. More specifically, loads/stores with
1362
- /// immediate offsets will generate bounds checks based on how big the guard
1363
- /// page is.
1364
- ///
1365
- /// For 32-bit wasm memories a 4GB static memory is required to even start
1366
- /// removing bounds checks. A 4GB guard size will guarantee that the module
1367
- /// has zero bounds checks for memory accesses. A 2GB guard size will
1368
- /// eliminate all bounds checks with an immediate offset less than 2GB. A
1369
- /// guard size of zero means that all memory accesses will still have bounds
1370
- /// checks.
1371
- ///
1372
- /// ## Default
1373
- ///
1374
- /// The default value for this property is 2GB on 64-bit platforms. This
1375
- /// allows eliminating almost all bounds checks on loads/stores with an
1376
- /// immediate offset of less than 2GB. On 32-bit platforms this defaults to
1377
- /// 64KB.
1378
- ///
1379
- /// ## Errors
1380
- ///
1381
- /// The `Engine::new` method will return an error if this option is smaller
1382
- /// than the value configured for [`Config::dynamic_memory_guard_size`].
1383
- pub fn static_memory_guard_size(&mut self, guard_size: u64) -> &mut Self {
1384
- let guard_size = round_up_to_pages(guard_size);
1385
- self.tunables.static_memory_offset_guard_size = Some(guard_size);
1386
- self
1387
- }
1388
-
1389
- /// Configures the size, in bytes, of the guard region used at the end of a
1390
- /// dynamic memory's address space reservation.
1391
- ///
1392
- /// For the difference between static and dynamic memories, see the
1393
- /// [`Config::static_memory_maximum_size`]
1394
- ///
1395
- /// For more information about what a guard is, see the documentation on
1396
- /// [`Config::static_memory_guard_size`].
1397
- ///
1398
- /// Note that the size of the guard region for dynamic memories is not super
1399
- /// critical for performance. Making it reasonably-sized can improve
1400
- /// generated code slightly, but for maximum performance you'll want to lean
1401
- /// towards static memories rather than dynamic anyway.
1402
- ///
1403
- /// Also note that the dynamic memory guard size must be smaller than the
1404
- /// static memory guard size, so if a large dynamic memory guard is
1405
- /// specified then the static memory guard size will also be automatically
1406
- /// increased.
1407
- ///
1408
- /// ## Default
1409
- ///
1410
- /// This value defaults to 64KB.
1411
- ///
1412
- /// ## Errors
1413
- ///
1414
- /// The `Engine::new` method will return an error if this option is larger
1415
- /// than the value configured for [`Config::static_memory_guard_size`].
1416
- pub fn dynamic_memory_guard_size(&mut self, guard_size: u64) -> &mut Self {
1417
- let guard_size = round_up_to_pages(guard_size);
1418
- self.tunables.dynamic_memory_offset_guard_size = Some(guard_size);
1419
- self
1420
- }
1421
-
1422
- /// Configures the size, in bytes, of the extra virtual memory space
1423
- /// reserved after a "dynamic" memory for growing into.
1424
- ///
1425
- /// For the difference between static and dynamic memories, see the
1426
- /// [`Config::static_memory_maximum_size`]
1427
- ///
1428
- /// Dynamic memories can be relocated in the process's virtual address space
1429
- /// on growth and do not always reserve their entire space up-front. This
1430
- /// means that a growth of the memory may require movement in the address
1431
- /// space, which in the worst case can copy a large number of bytes from one
1432
- /// region to another.
1433
- ///
1434
- /// This setting configures how many bytes are reserved after the initial
1435
- /// reservation for a dynamic memory for growing into. A value of 0 here
1436
- /// means that no extra bytes are reserved and all calls to `memory.grow`
1437
- /// will need to relocate the wasm linear memory (copying all the bytes). A
1438
- /// value of 1 megabyte, however, means that `memory.grow` can allocate up
1439
- /// to a megabyte of extra memory before the memory needs to be moved in
1440
- /// linear memory.
1441
- ///
1442
- /// Note that this is a currently simple heuristic for optimizing the growth
1443
- /// of dynamic memories, primarily implemented for the memory64 proposal
1444
- /// where all memories are currently "dynamic". This is unlikely to be a
1445
- /// one-size-fits-all style approach and if you're an embedder running into
1446
- /// issues with dynamic memories and growth and are interested in having
1447
- /// other growth strategies available here please feel free to [open an
1448
- /// issue on the Wasmtime repository][issue]!
1449
- ///
1450
- /// [issue]: https://github.com/bytecodealliance/wasmtime/issues/ne
1451
- ///
1452
- /// ## Default
1453
- ///
1454
- /// For 64-bit platforms this defaults to 2GB, and for 32-bit platforms this
1455
- /// defaults to 1MB.
1456
- pub fn dynamic_memory_reserved_for_growth(&mut self, reserved: u64) -> &mut Self {
1457
- self.tunables.dynamic_memory_growth_reserve = Some(round_up_to_pages(reserved));
1458
- self
1459
- }
1460
-
1461
- /// Indicates whether a guard region is present before allocations of
1462
- /// linear memory.
1463
- ///
1464
- /// Guard regions before linear memories are never used during normal
1465
- /// operation of WebAssembly modules, even if they have out-of-bounds
1466
- /// loads. The only purpose for a preceding guard region in linear memory
1467
- /// is extra protection against possible bugs in code generators like
1468
- /// Cranelift. This setting does not affect performance in any way, but will
1469
- /// result in larger virtual memory reservations for linear memories (it
1470
- /// won't actually ever use more memory, just use more of the address
1471
- /// space).
1472
- ///
1473
- /// The size of the guard region before linear memory is the same as the
1474
- /// guard size that comes after linear memory, which is configured by
1475
- /// [`Config::static_memory_guard_size`] and
1476
- /// [`Config::dynamic_memory_guard_size`].
1477
- ///
1478
- /// ## Default
1479
- ///
1480
- /// This value defaults to `true`.
1481
- pub fn guard_before_linear_memory(&mut self, guard: bool) -> &mut Self {
1482
- self.tunables.guard_before_linear_memory = Some(guard);
1483
- self
1484
- }
1485
-
1486
- /// Configure the version information used in serialized and deserialzied [`crate::Module`]s.
1487
- /// This effects the behavior of [`crate::Module::serialize()`], as well as
1488
- /// [`crate::Module::deserialize()`] and related functions.
1489
- ///
1490
- /// The default strategy is to use the wasmtime crate's Cargo package version.
1491
- pub fn module_version(&mut self, strategy: ModuleVersionStrategy) -> Result<&mut Self> {
1492
- match strategy {
1493
- // This case requires special precondition for assertion in SerializedModule::to_bytes
1494
- ModuleVersionStrategy::Custom(ref v) => {
1495
- if v.as_bytes().len() > 255 {
1496
- bail!("custom module version cannot be more than 255 bytes: {}", v);
1497
- }
1498
- }
1499
- _ => {}
1500
- }
1501
- self.module_version = strategy;
1502
- Ok(self)
1503
- }
1504
-
1505
- /// Configure wether wasmtime should compile a module using multiple
1506
- /// threads.
1507
- ///
1508
- /// Disabling this will result in a single thread being used to compile
1509
- /// the wasm bytecode.
1510
- ///
1511
- /// By default parallel compilation is enabled.
1512
- #[cfg(feature = "parallel-compilation")]
1513
- #[cfg_attr(docsrs, doc(cfg(feature = "parallel-compilation")))]
1514
- pub fn parallel_compilation(&mut self, parallel: bool) -> &mut Self {
1515
- self.parallel_compilation = parallel;
1516
- self
1517
- }
1518
-
1519
- /// Configures whether compiled artifacts will contain information to map
1520
- /// native program addresses back to the original wasm module.
1521
- ///
1522
- /// This configuration option is `true` by default and, if enabled,
1523
- /// generates the appropriate tables in compiled modules to map from native
1524
- /// address back to wasm source addresses. This is used for displaying wasm
1525
- /// program counters in backtraces as well as generating filenames/line
1526
- /// numbers if so configured as well (and the original wasm module has DWARF
1527
- /// debugging information present).
1528
- pub fn generate_address_map(&mut self, generate: bool) -> &mut Self {
1529
- self.tunables.generate_address_map = Some(generate);
1530
- self
1531
- }
1532
-
1533
- /// Configures whether copy-on-write memory-mapped data is used to
1534
- /// initialize a linear memory.
1535
- ///
1536
- /// Initializing linear memory via a copy-on-write mapping can drastically
1537
- /// improve instantiation costs of a WebAssembly module because copying
1538
- /// memory is deferred. Additionally if a page of memory is only ever read
1539
- /// from WebAssembly and never written too then the same underlying page of
1540
- /// data will be reused between all instantiations of a module meaning that
1541
- /// if a module is instantiated many times this can lower the overall memory
1542
- /// required needed to run that module.
1543
- ///
1544
- /// The main disadvantage of copy-on-write initialization, however, is that
1545
- /// it may be possible for highly-parallel scenarios to be less scalable. If
1546
- /// a page is read initially by a WebAssembly module then that page will be
1547
- /// mapped to a read-only copy shared between all WebAssembly instances. If
1548
- /// the same page is then written, however, then a private copy is created
1549
- /// and swapped out from the read-only version. This also requires an [IPI],
1550
- /// however, which can be a significant bottleneck in high-parallelism
1551
- /// situations.
1552
- ///
1553
- /// This feature is only applicable when a WebAssembly module meets specific
1554
- /// criteria to be initialized in this fashion, such as:
1555
- ///
1556
- /// * Only memories defined in the module can be initialized this way.
1557
- /// * Data segments for memory must use statically known offsets.
1558
- /// * Data segments for memory must all be in-bounds.
1559
- ///
1560
- /// Modules which do not meet these criteria will fall back to
1561
- /// initialization of linear memory based on copying memory.
1562
- ///
1563
- /// This feature of Wasmtime is also platform-specific:
1564
- ///
1565
- /// * Linux - this feature is supported for all instances of [`Module`].
1566
- /// Modules backed by an existing mmap (such as those created by
1567
- /// [`Module::deserialize_file`]) will reuse that mmap to cow-initialize
1568
- /// memory. Other instance of [`Module`] may use the `memfd_create`
1569
- /// syscall to create an initialization image to `mmap`.
1570
- /// * Unix (not Linux) - this feature is only supported when loading modules
1571
- /// from a precompiled file via [`Module::deserialize_file`] where there
1572
- /// is a file descriptor to use to map data into the process. Note that
1573
- /// the module must have been compiled with this setting enabled as well.
1574
- /// * Windows - there is no support for this feature at this time. Memory
1575
- /// initialization will always copy bytes.
1576
- ///
1577
- /// By default this option is enabled.
1578
- ///
1579
- /// [`Module::deserialize_file`]: crate::Module::deserialize_file
1580
- /// [`Module`]: crate::Module
1581
- /// [IPI]: https://en.wikipedia.org/wiki/Inter-processor_interrupt
1582
- pub fn memory_init_cow(&mut self, enable: bool) -> &mut Self {
1583
- self.memory_init_cow = enable;
1584
- self
1585
- }
1586
-
1587
- /// A configuration option to force the usage of `memfd_create` on Linux to
1588
- /// be used as the backing source for a module's initial memory image.
1589
- ///
1590
- /// When [`Config::memory_init_cow`] is enabled, which is enabled by
1591
- /// default, module memory initialization images are taken from a module's
1592
- /// original mmap if possible. If a precompiled module was loaded from disk
1593
- /// this means that the disk's file is used as an mmap source for the
1594
- /// initial linear memory contents. This option can be used to force, on
1595
- /// Linux, that instead of using the original file on disk a new in-memory
1596
- /// file is created with `memfd_create` to hold the contents of the initial
1597
- /// image.
1598
- ///
1599
- /// This option can be used to avoid possibly loading the contents of memory
1600
- /// from disk through a page fault. Instead with `memfd_create` the contents
1601
- /// of memory are always in RAM, meaning that even page faults which
1602
- /// initially populate a wasm linear memory will only work with RAM instead
1603
- /// of ever hitting the disk that the original precompiled module is stored
1604
- /// on.
1605
- ///
1606
- /// This option is disabled by default.
1607
- pub fn force_memory_init_memfd(&mut self, enable: bool) -> &mut Self {
1608
- self.force_memory_init_memfd = enable;
1609
- self
1610
- }
1611
-
1612
- /// Configures whether or not a coredump should be generated and attached to
1613
- /// the anyhow::Error when a trap is raised.
1614
- ///
1615
- /// This option is disabled by default.
1616
- #[cfg(feature = "coredump")]
1617
- #[cfg_attr(docsrs, doc(cfg(feature = "coredump")))]
1618
- pub fn coredump_on_trap(&mut self, enable: bool) -> &mut Self {
1619
- self.coredump_on_trap = enable;
1620
- self
1621
- }
1622
-
1623
- /// Enables memory error checking for wasm programs.
1624
- ///
1625
- /// This option is disabled by default.
1626
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1627
- pub fn wmemcheck(&mut self, enable: bool) -> &mut Self {
1628
- self.wmemcheck = enable;
1629
- self.compiler_config.wmemcheck = enable;
1630
- self
1631
- }
1632
-
1633
- /// Configures the "guaranteed dense image size" for copy-on-write
1634
- /// initialized memories.
1635
- ///
1636
- /// When using the [`Config::memory_init_cow`] feature to initialize memory
1637
- /// efficiently (which is enabled by default), compiled modules contain an
1638
- /// image of the module's initial heap. If the module has a fairly sparse
1639
- /// initial heap, with just a few data segments at very different offsets,
1640
- /// this could result in a large region of zero bytes in the image. In
1641
- /// other words, it's not very memory-efficient.
1642
- ///
1643
- /// We normally use a heuristic to avoid this: if less than half
1644
- /// of the initialized range (first non-zero to last non-zero
1645
- /// byte) of any memory in the module has pages with nonzero
1646
- /// bytes, then we avoid creating a memory image for the entire module.
1647
- ///
1648
- /// However, if the embedder always needs the instantiation-time efficiency
1649
- /// of copy-on-write initialization, and is otherwise carefully controlling
1650
- /// parameters of the modules (for example, by limiting the maximum heap
1651
- /// size of the modules), then it may be desirable to ensure a memory image
1652
- /// is created even if this could go against the heuristic above. Thus, we
1653
- /// add another condition: there is a size of initialized data region up to
1654
- /// which we *always* allow a memory image. The embedder can set this to a
1655
- /// known maximum heap size if they desire to always get the benefits of
1656
- /// copy-on-write images.
1657
- ///
1658
- /// In the future we may implement a "best of both worlds"
1659
- /// solution where we have a dense image up to some limit, and
1660
- /// then support a sparse list of initializers beyond that; this
1661
- /// would get most of the benefit of copy-on-write and pay the incremental
1662
- /// cost of eager initialization only for those bits of memory
1663
- /// that are out-of-bounds. However, for now, an embedder desiring
1664
- /// fast instantiation should ensure that this setting is as large
1665
- /// as the maximum module initial memory content size.
1666
- ///
1667
- /// By default this value is 16 MiB.
1668
- pub fn memory_guaranteed_dense_image_size(&mut self, size_in_bytes: u64) -> &mut Self {
1669
- self.memory_guaranteed_dense_image_size = size_in_bytes;
1670
- self
1671
- }
1672
-
1673
- pub(crate) fn validate(&self) -> Result<Tunables> {
1674
- if self.features.reference_types && !self.features.bulk_memory {
1675
- bail!("feature 'reference_types' requires 'bulk_memory' to be enabled");
1676
- }
1677
- if self.features.threads && !self.features.bulk_memory {
1678
- bail!("feature 'threads' requires 'bulk_memory' to be enabled");
1679
- }
1680
- if self.features.function_references && !self.features.reference_types {
1681
- bail!("feature 'function_references' requires 'reference_types' to be enabled");
1682
- }
1683
- if self.features.gc && !self.features.function_references {
1684
- bail!("feature 'gc' requires 'function_references' to be enabled");
1685
- }
1686
- #[cfg(feature = "async")]
1687
- if self.async_support && self.max_wasm_stack > self.async_stack_size {
1688
- bail!("max_wasm_stack size cannot exceed the async_stack_size");
1689
- }
1690
- if self.max_wasm_stack == 0 {
1691
- bail!("max_wasm_stack size cannot be zero");
1692
- }
1693
- #[cfg(not(feature = "wmemcheck"))]
1694
- if self.wmemcheck {
1695
- bail!("wmemcheck (memory checker) was requested but is not enabled in this build");
1696
- }
1697
-
1698
- #[cfg(not(any(feature = "cranelift", feature = "winch")))]
1699
- let mut tunables = Tunables::default_host();
1700
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1701
- let mut tunables = match &self.compiler_config.target.as_ref() {
1702
- Some(target) => Tunables::default_for_target(target)?,
1703
- None => Tunables::default_host(),
1704
- };
1705
-
1706
- macro_rules! set_fields {
1707
- ($($field:ident)*) => (
1708
- let ConfigTunables {
1709
- $($field,)*
1710
- } = &self.tunables;
1711
-
1712
- $(
1713
- if let Some(e) = $field {
1714
- tunables.$field = *e;
1715
- }
1716
- )*
1717
- )
1718
- }
1719
-
1720
- set_fields! {
1721
- static_memory_bound
1722
- static_memory_offset_guard_size
1723
- dynamic_memory_offset_guard_size
1724
- dynamic_memory_growth_reserve
1725
- generate_native_debuginfo
1726
- parse_wasm_debuginfo
1727
- consume_fuel
1728
- epoch_interruption
1729
- static_memory_bound_is_maximum
1730
- guard_before_linear_memory
1731
- generate_address_map
1732
- debug_adapter_modules
1733
- relaxed_simd_deterministic
1734
- tail_callable
1735
- }
1736
-
1737
- // If we're going to compile with winch, we must use the winch calling convention.
1738
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1739
- {
1740
- tunables.winch_callable = match self.compiler_config.strategy {
1741
- Strategy::Auto => !cfg!(feature = "cranelift") && cfg!(feature = "winch"),
1742
- Strategy::Cranelift => false,
1743
- Strategy::Winch => true,
1744
- };
1745
- }
1746
-
1747
- if tunables.static_memory_offset_guard_size < tunables.dynamic_memory_offset_guard_size {
1748
- bail!("static memory guard size cannot be smaller than dynamic memory guard size");
1749
- }
1750
- Ok(tunables)
1751
- }
1752
-
1753
- #[cfg(feature = "runtime")]
1754
- pub(crate) fn build_allocator(
1755
- &self,
1756
- tunables: &Tunables,
1757
- ) -> Result<Box<dyn InstanceAllocator + Send + Sync>> {
1758
- #[cfg(feature = "async")]
1759
- let stack_size = self.async_stack_size;
1760
-
1761
- #[cfg(not(feature = "async"))]
1762
- let stack_size = 0;
1763
-
1764
- let _ = tunables;
1765
-
1766
- match &self.allocation_strategy {
1767
- InstanceAllocationStrategy::OnDemand => {
1768
- #[allow(unused_mut)]
1769
- let mut allocator = Box::new(OnDemandInstanceAllocator::new(
1770
- self.mem_creator.clone(),
1771
- stack_size,
1772
- ));
1773
- #[cfg(feature = "async")]
1774
- if let Some(stack_creator) = &self.stack_creator {
1775
- allocator.set_stack_creator(stack_creator.clone());
1776
- }
1777
- Ok(allocator)
1778
- }
1779
- #[cfg(feature = "pooling-allocator")]
1780
- InstanceAllocationStrategy::Pooling(config) => {
1781
- let mut config = config.config;
1782
- config.stack_size = stack_size;
1783
- Ok(Box::new(wasmtime_runtime::PoolingInstanceAllocator::new(
1784
- &config, tunables,
1785
- )?))
1786
- }
1787
- }
1788
- }
1789
-
1790
- #[cfg(feature = "runtime")]
1791
- pub(crate) fn build_gc_runtime(&self) -> Result<Arc<dyn GcRuntime>> {
1792
- Ok(Arc::new(wasmtime_runtime::default_gc_runtime()) as Arc<dyn GcRuntime>)
1793
- }
1794
-
1795
- #[cfg(feature = "runtime")]
1796
- pub(crate) fn build_profiler(&self) -> Result<Box<dyn ProfilingAgent>> {
1797
- Ok(match self.profiling_strategy {
1798
- ProfilingStrategy::PerfMap => profiling_agent::new_perfmap()?,
1799
- ProfilingStrategy::JitDump => profiling_agent::new_jitdump()?,
1800
- ProfilingStrategy::VTune => profiling_agent::new_vtune()?,
1801
- ProfilingStrategy::None => profiling_agent::new_null(),
1802
- })
1803
- }
1804
-
1805
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1806
- pub(crate) fn build_compiler(
1807
- mut self,
1808
- tunables: &Tunables,
1809
- ) -> Result<(Self, Box<dyn wasmtime_environ::Compiler>)> {
1810
- let target = self.compiler_config.target.clone();
1811
-
1812
- let mut compiler = match self.compiler_config.strategy {
1813
- #[cfg(feature = "cranelift")]
1814
- Strategy::Auto => wasmtime_cranelift::builder(target)?,
1815
- #[cfg(all(feature = "winch", not(feature = "cranelift")))]
1816
- Strategy::Auto => wasmtime_winch::builder(target)?,
1817
- #[cfg(feature = "cranelift")]
1818
- Strategy::Cranelift => wasmtime_cranelift::builder(target)?,
1819
- #[cfg(not(feature = "cranelift"))]
1820
- Strategy::Cranelift => bail!("cranelift support not compiled in"),
1821
- #[cfg(feature = "winch")]
1822
- Strategy::Winch => wasmtime_winch::builder(target)?,
1823
- #[cfg(not(feature = "winch"))]
1824
- Strategy::Winch => bail!("winch support not compiled in"),
1825
- };
1826
-
1827
- if let Some(path) = &self.compiler_config.clif_dir {
1828
- compiler.clif_dir(path)?;
1829
- }
1830
-
1831
- // If probestack is enabled for a target, Wasmtime will always use the
1832
- // inline strategy which doesn't require us to define a `__probestack`
1833
- // function or similar.
1834
- self.compiler_config
1835
- .settings
1836
- .insert("probestack_strategy".into(), "inline".into());
1837
-
1838
- let host = target_lexicon::Triple::host();
1839
- let target = self
1840
- .compiler_config
1841
- .target
1842
- .as_ref()
1843
- .unwrap_or(&host)
1844
- .clone();
1845
-
1846
- // On supported targets, we enable stack probing by default.
1847
- // This is required on Windows because of the way Windows
1848
- // commits its stacks, but it's also a good idea on other
1849
- // platforms to ensure guard pages are hit for large frame
1850
- // sizes.
1851
- if probestack_supported(target.architecture) {
1852
- self.compiler_config
1853
- .flags
1854
- .insert("enable_probestack".into());
1855
- }
1856
-
1857
- if self.features.tail_call {
1858
- ensure!(
1859
- target.architecture != Architecture::S390x,
1860
- "Tail calls are not supported on s390x yet: \
1861
- https://github.com/bytecodealliance/wasmtime/issues/6530"
1862
- );
1863
- }
1864
-
1865
- if let Some(unwind_requested) = self.native_unwind_info {
1866
- if !self
1867
- .compiler_config
1868
- .ensure_setting_unset_or_given("unwind_info", &unwind_requested.to_string())
1869
- {
1870
- bail!("incompatible settings requested for Cranelift and Wasmtime `unwind-info` settings");
1871
- }
1872
- }
1873
-
1874
- if target.operating_system == target_lexicon::OperatingSystem::Windows {
1875
- if !self
1876
- .compiler_config
1877
- .ensure_setting_unset_or_given("unwind_info", "true")
1878
- {
1879
- bail!("`native_unwind_info` cannot be disabled on Windows");
1880
- }
1881
- }
1882
-
1883
- // We require frame pointers for correct stack walking, which is safety
1884
- // critical in the presence of reference types, and otherwise it is just
1885
- // really bad developer experience to get wrong.
1886
- self.compiler_config
1887
- .settings
1888
- .insert("preserve_frame_pointers".into(), "true".into());
1889
-
1890
- // check for incompatible compiler options and set required values
1891
- if self.features.reference_types {
1892
- if !self
1893
- .compiler_config
1894
- .ensure_setting_unset_or_given("enable_safepoints", "true")
1895
- {
1896
- bail!("compiler option 'enable_safepoints' must be enabled when 'reference types' is enabled");
1897
- }
1898
- }
1899
-
1900
- if self.features.relaxed_simd && !self.features.simd {
1901
- bail!("cannot disable the simd proposal but enable the relaxed simd proposal");
1902
- }
1903
-
1904
- // Apply compiler settings and flags
1905
- for (k, v) in self.compiler_config.settings.iter() {
1906
- compiler.set(k, v)?;
1907
- }
1908
- for flag in self.compiler_config.flags.iter() {
1909
- compiler.enable(flag)?;
1910
- }
1911
-
1912
- #[cfg(feature = "incremental-cache")]
1913
- if let Some(cache_store) = &self.compiler_config.cache_store {
1914
- compiler.enable_incremental_compilation(cache_store.clone())?;
1915
- }
1916
-
1917
- compiler.set_tunables(tunables.clone())?;
1918
- compiler.wmemcheck(self.compiler_config.wmemcheck);
1919
-
1920
- Ok((self, compiler.build()?))
1921
- }
1922
-
1923
- /// Internal setting for whether adapter modules for components will have
1924
- /// extra WebAssembly instructions inserted performing more debug checks
1925
- /// then are necessary.
1926
- #[cfg(feature = "component-model")]
1927
- pub fn debug_adapter_modules(&mut self, debug: bool) -> &mut Self {
1928
- self.tunables.debug_adapter_modules = Some(debug);
1929
- self
1930
- }
1931
-
1932
- /// Enables clif output when compiling a WebAssembly module.
1933
- #[cfg(any(feature = "cranelift", feature = "winch"))]
1934
- pub fn emit_clif(&mut self, path: &Path) -> &mut Self {
1935
- self.compiler_config.clif_dir = Some(path.to_path_buf());
1936
- self
1937
- }
1938
-
1939
- /// Configures whether, when on macOS, Mach ports are used for exception
1940
- /// handling instead of traditional Unix-based signal handling.
1941
- ///
1942
- /// WebAssembly traps in Wasmtime are implemented with native faults, for
1943
- /// example a `SIGSEGV` will occur when a WebAssembly guest accesses
1944
- /// out-of-bounds memory. Handling this can be configured to either use Unix
1945
- /// signals or Mach ports on macOS. By default Mach ports are used.
1946
- ///
1947
- /// Mach ports enable Wasmtime to work by default with foreign
1948
- /// error-handling systems such as breakpad which also use Mach ports to
1949
- /// handle signals. In this situation Wasmtime will continue to handle guest
1950
- /// faults gracefully while any non-guest faults will get forwarded to
1951
- /// process-level handlers such as breakpad. Some more background on this
1952
- /// can be found in #2456.
1953
- ///
1954
- /// A downside of using mach ports, however, is that they don't interact
1955
- /// well with `fork()`. Forking a Wasmtime process on macOS will produce a
1956
- /// child process that cannot successfully run WebAssembly. In this
1957
- /// situation traditional Unix signal handling should be used as that's
1958
- /// inherited and works across forks.
1959
- ///
1960
- /// If your embedding wants to use a custom error handler which leverages
1961
- /// Mach ports and you additionally wish to `fork()` the process and use
1962
- /// Wasmtime in the child process that's not currently possible. Please
1963
- /// reach out to us if you're in this bucket!
1964
- ///
1965
- /// This option defaults to `true`, using Mach ports by default.
1966
- pub fn macos_use_mach_ports(&mut self, mach_ports: bool) -> &mut Self {
1967
- self.macos_use_mach_ports = mach_ports;
1968
- self
1969
- }
1970
- }
1971
-
1972
- /// If building without the runtime feature we can't determine the page size of
1973
- /// the platform where the execution will happen so just keep the original
1974
- /// values.
1975
- #[cfg(not(feature = "runtime"))]
1976
- fn round_up_to_pages(val: u64) -> u64 {
1977
- val
1978
- }
1979
-
1980
- #[cfg(feature = "runtime")]
1981
- fn round_up_to_pages(val: u64) -> u64 {
1982
- let page_size = wasmtime_runtime::page_size() as u64;
1983
- debug_assert!(page_size.is_power_of_two());
1984
- val.checked_add(page_size - 1)
1985
- .map(|val| val & !(page_size - 1))
1986
- .unwrap_or(u64::MAX / page_size + 1)
1987
- }
1988
-
1989
- impl Default for Config {
1990
- fn default() -> Config {
1991
- Config::new()
1992
- }
1993
- }
1994
-
1995
- impl fmt::Debug for Config {
1996
- fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
1997
- let mut f = f.debug_struct("Config");
1998
- f.field("debug_info", &self.tunables.generate_native_debuginfo)
1999
- .field("wasm_threads", &self.features.threads)
2000
- .field("wasm_reference_types", &self.features.reference_types)
2001
- .field(
2002
- "wasm_function_references",
2003
- &self.features.function_references,
2004
- )
2005
- .field("wasm_gc", &self.features.gc)
2006
- .field("wasm_bulk_memory", &self.features.bulk_memory)
2007
- .field("wasm_simd", &self.features.simd)
2008
- .field("wasm_relaxed_simd", &self.features.relaxed_simd)
2009
- .field("wasm_multi_value", &self.features.multi_value)
2010
- .field("parallel_compilation", &self.parallel_compilation);
2011
- #[cfg(any(feature = "cranelift", feature = "winch"))]
2012
- {
2013
- f.field("compiler_config", &self.compiler_config);
2014
- }
2015
-
2016
- if let Some(enable) = self.tunables.parse_wasm_debuginfo {
2017
- f.field("parse_wasm_debuginfo", &enable);
2018
- }
2019
- if let Some(size) = self.tunables.static_memory_bound {
2020
- f.field(
2021
- "static_memory_maximum_size",
2022
- &(u64::from(size) * u64::from(wasmtime_environ::WASM_PAGE_SIZE)),
2023
- );
2024
- }
2025
- if let Some(size) = self.tunables.static_memory_offset_guard_size {
2026
- f.field("static_memory_guard_size", &size);
2027
- }
2028
- if let Some(size) = self.tunables.dynamic_memory_offset_guard_size {
2029
- f.field("dynamic_memory_guard_size", &size);
2030
- }
2031
- if let Some(enable) = self.tunables.guard_before_linear_memory {
2032
- f.field("guard_before_linear_memory", &enable);
2033
- }
2034
- f.finish()
2035
- }
2036
- }
2037
-
2038
- /// Possible Compilation strategies for a wasm module.
2039
- ///
2040
- /// This is used as an argument to the [`Config::strategy`] method.
2041
- #[non_exhaustive]
2042
- #[derive(PartialEq, Eq, Clone, Debug, Copy)]
2043
- pub enum Strategy {
2044
- /// An indicator that the compilation strategy should be automatically
2045
- /// selected.
2046
- ///
2047
- /// This is generally what you want for most projects and indicates that the
2048
- /// `wasmtime` crate itself should make the decision about what the best
2049
- /// code generator for a wasm module is.
2050
- ///
2051
- /// Currently this always defaults to Cranelift, but the default value may
2052
- /// change over time.
2053
- Auto,
2054
-
2055
- /// Currently the default backend, Cranelift aims to be a reasonably fast
2056
- /// code generator which generates high quality machine code.
2057
- Cranelift,
2058
-
2059
- /// A baseline compiler for WebAssembly, currently under active development and not ready for
2060
- /// production applications.
2061
- Winch,
2062
- }
2063
-
2064
- /// Possible optimization levels for the Cranelift codegen backend.
2065
- #[non_exhaustive]
2066
- #[derive(Copy, Clone, Debug, Serialize, Deserialize, Eq, PartialEq)]
2067
- pub enum OptLevel {
2068
- /// No optimizations performed, minimizes compilation time by disabling most
2069
- /// optimizations.
2070
- None,
2071
- /// Generates the fastest possible code, but may take longer.
2072
- Speed,
2073
- /// Similar to `speed`, but also performs transformations aimed at reducing
2074
- /// code size.
2075
- SpeedAndSize,
2076
- }
2077
-
2078
- /// Select which profiling technique to support.
2079
- #[derive(Debug, Clone, Copy, PartialEq)]
2080
- pub enum ProfilingStrategy {
2081
- /// No profiler support.
2082
- None,
2083
-
2084
- /// Collect function name information as the "perf map" file format, used with `perf` on Linux.
2085
- PerfMap,
2086
-
2087
- /// Collect profiling info for "jitdump" file format, used with `perf` on
2088
- /// Linux.
2089
- JitDump,
2090
-
2091
- /// Collect profiling info using the "ittapi", used with `VTune` on Linux.
2092
- VTune,
2093
- }
2094
-
2095
- /// Select how wasm backtrace detailed information is handled.
2096
- #[derive(Debug, Clone, Copy)]
2097
- pub enum WasmBacktraceDetails {
2098
- /// Support is unconditionally enabled and wasmtime will parse and read
2099
- /// debug information.
2100
- Enable,
2101
-
2102
- /// Support is disabled, and wasmtime will not parse debug information for
2103
- /// backtrace details.
2104
- Disable,
2105
-
2106
- /// Support for backtrace details is conditional on the
2107
- /// `WASMTIME_BACKTRACE_DETAILS` environment variable.
2108
- Environment,
2109
- }
2110
-
2111
- /// Configuration options used with [`InstanceAllocationStrategy::Pooling`] to
2112
- /// change the behavior of the pooling instance allocator.
2113
- ///
2114
- /// This structure has a builder-style API in the same manner as [`Config`] and
2115
- /// is configured with [`Config::allocation_strategy`].
2116
- ///
2117
- /// Note that usage of the pooling allocator does not affect compiled
2118
- /// WebAssembly code. Compiled `*.cwasm` files, for example, are usable both
2119
- /// with and without the pooling allocator.
2120
- ///
2121
- /// ## Advantages of Pooled Allocation
2122
- ///
2123
- /// The main benefit of the pooling allocator is to make WebAssembly
2124
- /// instantiation both faster and more scalable in terms of parallelism.
2125
- /// Allocation is faster because virtual memory is already configured and ready
2126
- /// to go within the pool, there's no need to [`mmap`] (for example on Unix) a
2127
- /// new region and configure it with guard pages. By avoiding [`mmap`] this
2128
- /// avoids whole-process virtual memory locks which can improve scalability and
2129
- /// performance through avoiding this.
2130
- ///
2131
- /// Additionally with pooled allocation it's possible to create "affine slots"
2132
- /// to a particular WebAssembly module or component over time. For example if
2133
- /// the same module is multiple times over time the pooling allocator will, by
2134
- /// default, attempt to reuse the same slot. This mean that the slot has been
2135
- /// pre-configured and can retain virtual memory mappings for a copy-on-write
2136
- /// image, for example (see [`Config::memory_init_cow`] for more information.
2137
- /// This means that in a steady state instance deallocation is a single
2138
- /// [`madvise`] to reset linear memory to its original contents followed by a
2139
- /// single (optional) [`mprotect`] during the next instantiation to shrink
2140
- /// memory back to its original size. Compared to non-pooled allocation this
2141
- /// avoids the need to [`mmap`] a new region of memory, [`munmap`] it, and
2142
- /// [`mprotect`] regions too.
2143
- ///
2144
- /// Another benefit of pooled allocation is that it's possible to configure
2145
- /// things such that no virtual memory management is required at all in a steady
2146
- /// state. For example a pooling allocator can be configured with
2147
- /// [`Config::memory_init_cow`] disabledd, dynamic bounds checks enabled
2148
- /// through
2149
- /// [`Config::static_memory_maximum_size(0)`](Config::static_memory_maximum_size),
2150
- /// and sufficient space through
2151
- /// [`PoolingAllocationConfig::table_keep_resident`] /
2152
- /// [`PoolingAllocationConfig::linear_memory_keep_resident`]. With all these
2153
- /// options in place no virtual memory tricks are used at all and everything is
2154
- /// manually managed by Wasmtime (for example resetting memory is a
2155
- /// `memset(0)`). This is not as fast in a single-threaded scenario but can
2156
- /// provide benefits in high-parallelism situations as no virtual memory locks
2157
- /// or IPIs need happen.
2158
- ///
2159
- /// ## Disadvantages of Pooled Allocation
2160
- ///
2161
- /// Despite the above advantages to instantiation performance the pooling
2162
- /// allocator is not enabled by default in Wasmtime. One reason is that the
2163
- /// performance advantages are not necessarily portable, for example while the
2164
- /// pooling allocator works on Windows it has not been tuned for performance on
2165
- /// Windows in the same way it has on Linux.
2166
- ///
2167
- /// Additionally the main cost of the pooling allocator is that it requires a
2168
- /// very large reservation of virtual memory (on the order of most of the
2169
- /// addressable virtual address space). WebAssembly 32-bit linear memories in
2170
- /// Wasmtime are, by default 4G address space reservations with a 2G guard
2171
- /// region both before and after the linear memory. Memories in the pooling
2172
- /// allocator are contiguous which means that we only need a guard after linear
2173
- /// memory because the previous linear memory's slot post-guard is our own
2174
- /// pre-guard. This means that, by default, the pooling allocator uses 6G of
2175
- /// virtual memory per WebAssembly linear memory slot. 6G of virtual memory is
2176
- /// 32.5 bits of a 64-bit address. Many 64-bit systems can only actually use
2177
- /// 48-bit addresses by default (although this can be extended on architectures
2178
- /// nowadays too), and of those 48 bits one of them is reserved to indicate
2179
- /// kernel-vs-userspace. This leaves 47-32.5=14.5 bits left, meaning you can
2180
- /// only have at most 64k slots of linear memories on many systems by default.
2181
- /// This is a relatively small number and shows how the pooling allocator can
2182
- /// quickly exhaust all of virtual memory.
2183
- ///
2184
- /// Another disadvantage of the pooling allocator is that it may keep memory
2185
- /// alive when nothing is using it. A previously used slot for an instance might
2186
- /// have paged-in memory that will not get paged out until the
2187
- /// [`Engine`](crate::Engine) owning the pooling allocator is dropped. While
2188
- /// suitable for some applications this behavior may not be suitable for all
2189
- /// applications.
2190
- ///
2191
- /// Finally the last disadvantage of the pooling allocator is that the
2192
- /// configuration values for the maximum number of instances, memories, tables,
2193
- /// etc, must all be fixed up-front. There's not always a clear answer as to
2194
- /// what these values should be so not all applications may be able to work
2195
- /// with this constraint.
2196
- ///
2197
- /// [`madvise`]: https://man7.org/linux/man-pages/man2/madvise.2.html
2198
- /// [`mprotect`]: https://man7.org/linux/man-pages/man2/mprotect.2.html
2199
- /// [`mmap`]: https://man7.org/linux/man-pages/man2/mmap.2.html
2200
- /// [`munmap`]: https://man7.org/linux/man-pages/man2/munmap.2.html
2201
- #[cfg(feature = "pooling-allocator")]
2202
- #[derive(Debug, Clone, Default)]
2203
- pub struct PoolingAllocationConfig {
2204
- config: wasmtime_runtime::PoolingInstanceAllocatorConfig,
2205
- }
2206
-
2207
- #[cfg(feature = "pooling-allocator")]
2208
- impl PoolingAllocationConfig {
2209
- /// Configures the maximum number of "unused warm slots" to retain in the
2210
- /// pooling allocator.
2211
- ///
2212
- /// The pooling allocator operates over slots to allocate from, and each
2213
- /// slot is considered "cold" if it's never been used before or "warm" if
2214
- /// it's been used by some module in the past. Slots in the pooling
2215
- /// allocator additionally track an "affinity" flag to a particular core
2216
- /// wasm module. When a module is instantiated into a slot then the slot is
2217
- /// considered affine to that module, even after the instance has been
2218
- /// deallocated.
2219
- ///
2220
- /// When a new instance is created then a slot must be chosen, and the
2221
- /// current algorithm for selecting a slot is:
2222
- ///
2223
- /// * If there are slots that are affine to the module being instantiated,
2224
- /// then the most recently used slot is selected to be allocated from.
2225
- /// This is done to improve reuse of resources such as memory mappings and
2226
- /// additionally try to benefit from temporal locality for things like
2227
- /// caches.
2228
- ///
2229
- /// * Otherwise if there are more than N affine slots to other modules, then
2230
- /// one of those affine slots is chosen to be allocated. The slot chosen
2231
- /// is picked on a least-recently-used basis.
2232
- ///
2233
- /// * Finally, if there are less than N affine slots to other modules, then
2234
- /// the non-affine slots are allocated from.
2235
- ///
2236
- /// This setting, `max_unused_warm_slots`, is the value for N in the above
2237
- /// algorithm. The purpose of this setting is to have a knob over the RSS
2238
- /// impact of "unused slots" for a long-running wasm server.
2239
- ///
2240
- /// If this setting is set to 0, for example, then affine slots are
2241
- /// aggressively reused on a least-recently-used basis. A "cold" slot is
2242
- /// only used if there are no affine slots available to allocate from. This
2243
- /// means that the set of slots used over the lifetime of a program is the
2244
- /// same as the maximum concurrent number of wasm instances.
2245
- ///
2246
- /// If this setting is set to infinity, however, then cold slots are
2247
- /// prioritized to be allocated from. This means that the set of slots used
2248
- /// over the lifetime of a program will approach
2249
- /// [`PoolingAllocationConfig::total_memories`], or the maximum number of
2250
- /// slots in the pooling allocator.
2251
- ///
2252
- /// Wasmtime does not aggressively decommit all resources associated with a
2253
- /// slot when the slot is not in use. For example the
2254
- /// [`PoolingAllocationConfig::linear_memory_keep_resident`] option can be
2255
- /// used to keep memory associated with a slot, even when it's not in use.
2256
- /// This means that the total set of used slots in the pooling instance
2257
- /// allocator can impact the overall RSS usage of a program.
2258
- ///
2259
- /// The default value for this option is `100`.
2260
- pub fn max_unused_warm_slots(&mut self, max: u32) -> &mut Self {
2261
- self.config.max_unused_warm_slots = max;
2262
- self
2263
- }
2264
-
2265
- /// Configures whether or not stacks used for async futures are reset to
2266
- /// zero after usage.
2267
- ///
2268
- /// When the [`async_support`](Config::async_support) method is enabled for
2269
- /// Wasmtime and the [`call_async`] variant
2270
- /// of calling WebAssembly is used then Wasmtime will create a separate
2271
- /// runtime execution stack for each future produced by [`call_async`].
2272
- /// During the deallocation process Wasmtime won't by default reset the
2273
- /// contents of the stack back to zero.
2274
- ///
2275
- /// When this option is enabled it can be seen as a defense-in-depth
2276
- /// mechanism to reset a stack back to zero. This is not required for
2277
- /// correctness and can be a costly operation in highly concurrent
2278
- /// environments due to modifications of the virtual address space requiring
2279
- /// process-wide synchronization.
2280
- ///
2281
- /// This option defaults to `false`.
2282
- ///
2283
- /// [`call_async`]: crate::TypedFunc::call_async
2284
- #[cfg(feature = "async")]
2285
- #[cfg_attr(docsrs, doc(cfg(feature = "async")))]
2286
- pub fn async_stack_zeroing(&mut self, enable: bool) -> &mut Self {
2287
- self.config.async_stack_zeroing = enable;
2288
- self
2289
- }
2290
-
2291
- /// How much memory, in bytes, to keep resident for async stacks allocated
2292
- /// with the pooling allocator.
2293
- ///
2294
- /// When [`PoolingAllocationConfig::async_stack_zeroing`] is enabled then
2295
- /// Wasmtime will reset the contents of async stacks back to zero upon
2296
- /// deallocation. This option can be used to perform the zeroing operation
2297
- /// with `memset` up to a certain threshold of bytes instead of using system
2298
- /// calls to reset the stack to zero.
2299
- ///
2300
- /// Note that when using this option the memory with async stacks will
2301
- /// never be decommitted.
2302
- #[cfg(feature = "async")]
2303
- #[cfg_attr(docsrs, doc(cfg(feature = "async")))]
2304
- pub fn async_stack_keep_resident(&mut self, size: usize) -> &mut Self {
2305
- let size = round_up_to_pages(size as u64) as usize;
2306
- self.config.async_stack_keep_resident = size;
2307
- self
2308
- }
2309
-
2310
- /// How much memory, in bytes, to keep resident for each linear memory
2311
- /// after deallocation.
2312
- ///
2313
- /// This option is only applicable on Linux and has no effect on other
2314
- /// platforms.
2315
- ///
2316
- /// By default Wasmtime will use `madvise` to reset the entire contents of
2317
- /// linear memory back to zero when a linear memory is deallocated. This
2318
- /// option can be used to use `memset` instead to set memory back to zero
2319
- /// which can, in some configurations, reduce the number of page faults
2320
- /// taken when a slot is reused.
2321
- pub fn linear_memory_keep_resident(&mut self, size: usize) -> &mut Self {
2322
- let size = round_up_to_pages(size as u64) as usize;
2323
- self.config.linear_memory_keep_resident = size;
2324
- self
2325
- }
2326
-
2327
- /// How much memory, in bytes, to keep resident for each table after
2328
- /// deallocation.
2329
- ///
2330
- /// This option is only applicable on Linux and has no effect on other
2331
- /// platforms.
2332
- ///
2333
- /// This option is the same as
2334
- /// [`PoolingAllocationConfig::linear_memory_keep_resident`] except that it
2335
- /// is applicable to tables instead.
2336
- pub fn table_keep_resident(&mut self, size: usize) -> &mut Self {
2337
- let size = round_up_to_pages(size as u64) as usize;
2338
- self.config.table_keep_resident = size;
2339
- self
2340
- }
2341
-
2342
- /// The maximum number of concurrent component instances supported (default
2343
- /// is `1000`).
2344
- ///
2345
- /// This provides an upper-bound on the total size of component
2346
- /// metadata-related allocations, along with
2347
- /// [`PoolingAllocationConfig::max_component_instance_size`]. The upper bound is
2348
- ///
2349
- /// ```text
2350
- /// total_component_instances * max_component_instance_size
2351
- /// ```
2352
- ///
2353
- /// where `max_component_instance_size` is rounded up to the size and alignment
2354
- /// of the internal representation of the metadata.
2355
- pub fn total_component_instances(&mut self, count: u32) -> &mut Self {
2356
- self.config.limits.total_component_instances = count;
2357
- self
2358
- }
2359
-
2360
- /// The maximum size, in bytes, allocated for a component instance's
2361
- /// `VMComponentContext` metadata.
2362
- ///
2363
- /// The [`wasmtime::component::Instance`][crate::component::Instance] type
2364
- /// has a static size but its internal `VMComponentContext` is dynamically
2365
- /// sized depending on the component being instantiated. This size limit
2366
- /// loosely correlates to the size of the component, taking into account
2367
- /// factors such as:
2368
- ///
2369
- /// * number of lifted and lowered functions,
2370
- /// * number of memories
2371
- /// * number of inner instances
2372
- /// * number of resources
2373
- ///
2374
- /// If the allocated size per instance is too small then instantiation of a
2375
- /// module will fail at runtime with an error indicating how many bytes were
2376
- /// needed.
2377
- ///
2378
- /// The default value for this is 1MiB.
2379
- ///
2380
- /// This provides an upper-bound on the total size of component
2381
- /// metadata-related allocations, along with
2382
- /// [`PoolingAllocationConfig::total_component_instances`]. The upper bound is
2383
- ///
2384
- /// ```text
2385
- /// total_component_instances * max_component_instance_size
2386
- /// ```
2387
- ///
2388
- /// where `max_component_instance_size` is rounded up to the size and alignment
2389
- /// of the internal representation of the metadata.
2390
- pub fn max_component_instance_size(&mut self, size: usize) -> &mut Self {
2391
- self.config.limits.component_instance_size = size;
2392
- self
2393
- }
2394
-
2395
- /// The maximum number of core instances a single component may contain
2396
- /// (default is `20`).
2397
- ///
2398
- /// This method (along with
2399
- /// [`PoolingAllocationConfig::max_memories_per_component`],
2400
- /// [`PoolingAllocationConfig::max_tables_per_component`], and
2401
- /// [`PoolingAllocationConfig::max_component_instance_size`]) allows you to cap
2402
- /// the amount of resources a single component allocation consumes.
2403
- ///
2404
- /// If a component will instantiate more core instances than `count`, then
2405
- /// the component will fail to instantiate.
2406
- pub fn max_core_instances_per_component(&mut self, count: u32) -> &mut Self {
2407
- self.config.limits.max_core_instances_per_component = count;
2408
- self
2409
- }
2410
-
2411
- /// The maximum number of Wasm linear memories that a single component may
2412
- /// transitively contain (default is `20`).
2413
- ///
2414
- /// This method (along with
2415
- /// [`PoolingAllocationConfig::max_core_instances_per_component`],
2416
- /// [`PoolingAllocationConfig::max_tables_per_component`], and
2417
- /// [`PoolingAllocationConfig::max_component_instance_size`]) allows you to cap
2418
- /// the amount of resources a single component allocation consumes.
2419
- ///
2420
- /// If a component transitively contains more linear memories than `count`,
2421
- /// then the component will fail to instantiate.
2422
- pub fn max_memories_per_component(&mut self, count: u32) -> &mut Self {
2423
- self.config.limits.max_memories_per_component = count;
2424
- self
2425
- }
2426
-
2427
- /// The maximum number of tables that a single component may transitively
2428
- /// contain (default is `20`).
2429
- ///
2430
- /// This method (along with
2431
- /// [`PoolingAllocationConfig::max_core_instances_per_component`],
2432
- /// [`PoolingAllocationConfig::max_memories_per_component`],
2433
- /// [`PoolingAllocationConfig::max_component_instance_size`]) allows you to cap
2434
- /// the amount of resources a single component allocation consumes.
2435
- ///
2436
- /// If a component will transitively contains more tables than `count`, then
2437
- /// the component will fail to instantiate.
2438
- pub fn max_tables_per_component(&mut self, count: u32) -> &mut Self {
2439
- self.config.limits.max_tables_per_component = count;
2440
- self
2441
- }
2442
-
2443
- /// The maximum number of concurrent Wasm linear memories supported (default
2444
- /// is `1000`).
2445
- ///
2446
- /// This value has a direct impact on the amount of memory allocated by the pooling
2447
- /// instance allocator.
2448
- ///
2449
- /// The pooling instance allocator allocates a memory pool, where each entry
2450
- /// in the pool contains the reserved address space for each linear memory
2451
- /// supported by an instance.
2452
- ///
2453
- /// The memory pool will reserve a large quantity of host process address
2454
- /// space to elide the bounds checks required for correct WebAssembly memory
2455
- /// semantics. Even with 64-bit address spaces, the address space is limited
2456
- /// when dealing with a large number of linear memories.
2457
- ///
2458
- /// For example, on Linux x86_64, the userland address space limit is 128
2459
- /// TiB. That might seem like a lot, but each linear memory will *reserve* 6
2460
- /// GiB of space by default.
2461
- pub fn total_memories(&mut self, count: u32) -> &mut Self {
2462
- self.config.limits.total_memories = count;
2463
- self
2464
- }
2465
-
2466
- /// The maximum number of concurrent tables supported (default is `1000`).
2467
- ///
2468
- /// This value has a direct impact on the amount of memory allocated by the
2469
- /// pooling instance allocator.
2470
- ///
2471
- /// The pooling instance allocator allocates a table pool, where each entry
2472
- /// in the pool contains the space needed for each WebAssembly table
2473
- /// supported by an instance (see `table_elements` to control the size of
2474
- /// each table).
2475
- pub fn total_tables(&mut self, count: u32) -> &mut Self {
2476
- self.config.limits.total_tables = count;
2477
- self
2478
- }
2479
-
2480
- /// The maximum number of execution stacks allowed for asynchronous
2481
- /// execution, when enabled (default is `1000`).
2482
- ///
2483
- /// This value has a direct impact on the amount of memory allocated by the
2484
- /// pooling instance allocator.
2485
- #[cfg(feature = "async")]
2486
- pub fn total_stacks(&mut self, count: u32) -> &mut Self {
2487
- self.config.limits.total_stacks = count;
2488
- self
2489
- }
2490
-
2491
- /// The maximum number of concurrent core instances supported (default is
2492
- /// `1000`).
2493
- ///
2494
- /// This provides an upper-bound on the total size of core instance
2495
- /// metadata-related allocations, along with
2496
- /// [`PoolingAllocationConfig::max_core_instance_size`]. The upper bound is
2497
- ///
2498
- /// ```text
2499
- /// total_core_instances * max_core_instance_size
2500
- /// ```
2501
- ///
2502
- /// where `max_core_instance_size` is rounded up to the size and alignment of
2503
- /// the internal representation of the metadata.
2504
- pub fn total_core_instances(&mut self, count: u32) -> &mut Self {
2505
- self.config.limits.total_core_instances = count;
2506
- self
2507
- }
2508
-
2509
- /// The maximum size, in bytes, allocated for a core instance's `VMContext`
2510
- /// metadata.
2511
- ///
2512
- /// The [`Instance`][crate::Instance] type has a static size but its
2513
- /// `VMContext` metadata is dynamically sized depending on the module being
2514
- /// instantiated. This size limit loosely correlates to the size of the Wasm
2515
- /// module, taking into account factors such as:
2516
- ///
2517
- /// * number of functions
2518
- /// * number of globals
2519
- /// * number of memories
2520
- /// * number of tables
2521
- /// * number of function types
2522
- ///
2523
- /// If the allocated size per instance is too small then instantiation of a
2524
- /// module will fail at runtime with an error indicating how many bytes were
2525
- /// needed.
2526
- ///
2527
- /// The default value for this is 1MiB.
2528
- ///
2529
- /// This provides an upper-bound on the total size of core instance
2530
- /// metadata-related allocations, along with
2531
- /// [`PoolingAllocationConfig::total_core_instances`]. The upper bound is
2532
- ///
2533
- /// ```text
2534
- /// total_core_instances * max_core_instance_size
2535
- /// ```
2536
- ///
2537
- /// where `max_core_instance_size` is rounded up to the size and alignment of
2538
- /// the internal representation of the metadata.
2539
- pub fn max_core_instance_size(&mut self, size: usize) -> &mut Self {
2540
- self.config.limits.core_instance_size = size;
2541
- self
2542
- }
2543
-
2544
- /// The maximum number of defined tables for a core module (default is `1`).
2545
- ///
2546
- /// This value controls the capacity of the `VMTableDefinition` table in
2547
- /// each instance's `VMContext` structure.
2548
- ///
2549
- /// The allocated size of the table will be `tables *
2550
- /// sizeof(VMTableDefinition)` for each instance regardless of how many
2551
- /// tables are defined by an instance's module.
2552
- pub fn max_tables_per_module(&mut self, tables: u32) -> &mut Self {
2553
- self.config.limits.max_tables_per_module = tables;
2554
- self
2555
- }
2556
-
2557
- /// The maximum table elements for any table defined in a module (default is
2558
- /// `10000`).
2559
- ///
2560
- /// If a table's minimum element limit is greater than this value, the
2561
- /// module will fail to instantiate.
2562
- ///
2563
- /// If a table's maximum element limit is unbounded or greater than this
2564
- /// value, the maximum will be `table_elements` for the purpose of any
2565
- /// `table.grow` instruction.
2566
- ///
2567
- /// This value is used to reserve the maximum space for each supported
2568
- /// table; table elements are pointer-sized in the Wasmtime runtime.
2569
- /// Therefore, the space reserved for each instance is `tables *
2570
- /// table_elements * sizeof::<*const ()>`.
2571
- pub fn table_elements(&mut self, elements: u32) -> &mut Self {
2572
- self.config.limits.table_elements = elements;
2573
- self
2574
- }
2575
-
2576
- /// The maximum number of defined linear memories for a module (default is
2577
- /// `1`).
2578
- ///
2579
- /// This value controls the capacity of the `VMMemoryDefinition` table in
2580
- /// each core instance's `VMContext` structure.
2581
- ///
2582
- /// The allocated size of the table will be `memories *
2583
- /// sizeof(VMMemoryDefinition)` for each core instance regardless of how
2584
- /// many memories are defined by the core instance's module.
2585
- pub fn max_memories_per_module(&mut self, memories: u32) -> &mut Self {
2586
- self.config.limits.max_memories_per_module = memories;
2587
- self
2588
- }
2589
-
2590
- /// The maximum number of Wasm pages for any linear memory defined in a
2591
- /// module (default is `160`).
2592
- ///
2593
- /// The default of `160` means at most 10 MiB of host memory may be
2594
- /// committed for each instance.
2595
- ///
2596
- /// If a memory's minimum page limit is greater than this value, the module
2597
- /// will fail to instantiate.
2598
- ///
2599
- /// If a memory's maximum page limit is unbounded or greater than this
2600
- /// value, the maximum will be `memory_pages` for the purpose of any
2601
- /// `memory.grow` instruction.
2602
- ///
2603
- /// This value is used to control the maximum accessible space for each
2604
- /// linear memory of a core instance.
2605
- ///
2606
- /// The reservation size of each linear memory is controlled by the
2607
- /// `static_memory_maximum_size` setting and this value cannot exceed the
2608
- /// configured static memory maximum size.
2609
- pub fn memory_pages(&mut self, pages: u64) -> &mut Self {
2610
- self.config.limits.memory_pages = pages;
2611
- self
2612
- }
2613
-
2614
- /// Configures whether memory protection keys (MPK) should be used for more
2615
- /// efficient layout of pool-allocated memories.
2616
- ///
2617
- /// When using the pooling allocator (see [`Config::allocation_strategy`],
2618
- /// [`InstanceAllocationStrategy::Pooling`]), memory protection keys can
2619
- /// reduce the total amount of allocated virtual memory by eliminating guard
2620
- /// regions between WebAssembly memories in the pool. It does so by
2621
- /// "coloring" memory regions with different memory keys and setting which
2622
- /// regions are accessible each time executions switches from host to guest
2623
- /// (or vice versa).
2624
- ///
2625
- /// MPK is only available on Linux (called `pku` there) and recent x86
2626
- /// systems; we check for MPK support at runtime by examining the `CPUID`
2627
- /// register. This configuration setting can be in three states:
2628
- ///
2629
- /// - `auto`: if MPK support is available the guard regions are removed; if
2630
- /// not, the guard regions remain
2631
- /// - `enable`: use MPK to eliminate guard regions; fail if MPK is not
2632
- /// supported
2633
- /// - `disable`: never use MPK
2634
- ///
2635
- /// By default this value is `disabled`, but may become `auto` in future
2636
- /// releases.
2637
- ///
2638
- /// __WARNING__: this configuration options is still experimental--use at
2639
- /// your own risk! MPK uses kernel and CPU features to protect memory
2640
- /// regions; you may observe segmentation faults if anything is
2641
- /// misconfigured.
2642
- pub fn memory_protection_keys(&mut self, enable: MpkEnabled) -> &mut Self {
2643
- self.config.memory_protection_keys = enable;
2644
- self
2645
- }
2646
-
2647
- /// Sets an upper limit on how many memory protection keys (MPK) Wasmtime
2648
- /// will use.
2649
- ///
2650
- /// This setting is only applicable when
2651
- /// [`PoolingAllocationConfig::memory_protection_keys`] is set to `enable`
2652
- /// or `auto`. Configuring this above the HW and OS limits (typically 15)
2653
- /// has no effect.
2654
- ///
2655
- /// If multiple Wasmtime engines are used in the same process, note that all
2656
- /// engines will share the same set of allocated keys; this setting will
2657
- /// limit how many keys are allocated initially and thus available to all
2658
- /// other engines.
2659
- pub fn max_memory_protection_keys(&mut self, max: usize) -> &mut Self {
2660
- self.config.max_memory_protection_keys = max;
2661
- self
2662
- }
2663
-
2664
- /// Check if memory protection keys (MPK) are available on the current host.
2665
- ///
2666
- /// This is a convenience method for determining MPK availability using the
2667
- /// same method that [`MpkEnabled::Auto`] does. See
2668
- /// [`PoolingAllocationConfig::memory_protection_keys`] for more
2669
- /// information.
2670
- pub fn are_memory_protection_keys_available() -> bool {
2671
- mpk::is_supported()
2672
- }
2673
-
2674
- /// The maximum number of concurrent GC heaps supported (default is `1000`).
2675
- ///
2676
- /// This value has a direct impact on the amount of memory allocated by the
2677
- /// pooling instance allocator.
2678
- ///
2679
- /// The pooling instance allocator allocates a GC heap pool, where each
2680
- /// entry in the pool contains the space needed for each GC heap used by a
2681
- /// store.
2682
- #[cfg(feature = "gc")]
2683
- #[cfg_attr(docsrs, doc(cfg(feature = "gc")))]
2684
- pub fn total_gc_heaps(&mut self, count: u32) -> &mut Self {
2685
- self.config.limits.total_gc_heaps = count;
2686
- self
2687
- }
2688
- }
2689
-
2690
- pub(crate) fn probestack_supported(arch: Architecture) -> bool {
2691
- matches!(
2692
- arch,
2693
- Architecture::X86_64 | Architecture::Aarch64(_) | Architecture::Riscv64(_)
2694
- )
2695
- }