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
@@ -0,0 +1,2969 @@
1
+ ;; Instruction formats.
2
+ (type MInst
3
+ (enum
4
+ ;; A no-op of zero size.
5
+ (Nop0)
6
+ (Nop4)
7
+
8
+ ;; load immediate
9
+ (Lui
10
+ (rd WritableReg)
11
+ (imm Imm20))
12
+
13
+ (LoadInlineConst
14
+ (rd WritableReg)
15
+ (ty Type)
16
+ (imm u64))
17
+
18
+ (Auipc
19
+ (rd WritableReg)
20
+ (imm Imm20))
21
+
22
+ ;; An ALU operation with one register sources and a register destination.
23
+ (FpuRR
24
+ (alu_op FpuOPRR)
25
+ (frm FRM)
26
+ (rd WritableReg)
27
+ (rs Reg))
28
+
29
+
30
+ ;; An ALU operation with two register sources and a register destination.
31
+ (AluRRR
32
+ (alu_op AluOPRRR)
33
+ (rd WritableReg)
34
+ (rs1 Reg)
35
+ (rs2 Reg))
36
+
37
+ ;; An ALU operation with two register sources and a register destination.
38
+ (FpuRRR
39
+ (alu_op FpuOPRRR)
40
+ (frm FRM)
41
+ (rd WritableReg)
42
+ (rs1 Reg)
43
+ (rs2 Reg))
44
+
45
+ ;; An ALU operation with three register sources and a register destination.
46
+ (FpuRRRR
47
+ (alu_op FpuOPRRRR)
48
+ (frm FRM)
49
+ (rd WritableReg)
50
+ (rs1 Reg)
51
+ (rs2 Reg)
52
+ (rs3 Reg))
53
+
54
+ ;; An ALU operation with a register source and an immediate-12 source, and a register
55
+ ;; destination.
56
+ (AluRRImm12
57
+ (alu_op AluOPRRI)
58
+ (rd WritableReg)
59
+ (rs Reg)
60
+ (imm12 Imm12))
61
+
62
+ ;; A CSR Reading or Writing instruction with a register source and a register destination.
63
+ (CsrReg
64
+ (op CsrRegOP)
65
+ (rd WritableReg)
66
+ (rs Reg)
67
+ (csr CSR))
68
+
69
+ ;; A CSR Writing instruction with an immediate source and a register destination.
70
+ (CsrImm
71
+ (op CsrImmOP)
72
+ (rd WritableReg)
73
+ (imm UImm5)
74
+ (csr CSR))
75
+
76
+ ;; An load
77
+ (Load
78
+ (rd WritableReg)
79
+ (op LoadOP)
80
+ (flags MemFlags)
81
+ (from AMode))
82
+ ;; An Store
83
+ (Store
84
+ (to AMode)
85
+ (op StoreOP)
86
+ (flags MemFlags)
87
+ (src Reg))
88
+
89
+ ;; A pseudo-instruction that captures register arguments in vregs.
90
+ (Args
91
+ (args VecArgPair))
92
+
93
+ ;; A pseudo-instruction that moves vregs to return registers.
94
+ (Rets
95
+ (rets VecRetPair))
96
+
97
+ (Ret)
98
+
99
+ (Extend
100
+ (rd WritableReg)
101
+ (rn Reg)
102
+ (signed bool)
103
+ (from_bits u8)
104
+ (to_bits u8))
105
+
106
+ (Call
107
+ (info BoxCallInfo))
108
+
109
+ ;; A machine indirect-call instruction.
110
+ (CallInd
111
+ (info BoxCallIndInfo))
112
+
113
+ ;; A direct return-call macro instruction.
114
+ (ReturnCall
115
+ (callee BoxExternalName)
116
+ (info BoxReturnCallInfo))
117
+
118
+ ;; An indirect return-call macro instruction.
119
+ (ReturnCallInd
120
+ (callee Reg)
121
+ (info BoxReturnCallInfo))
122
+
123
+ ;; Emits a trap with the given trap code if the comparison succeeds
124
+ (TrapIf
125
+ (rs1 Reg)
126
+ (rs2 Reg)
127
+ (cc IntCC)
128
+ (trap_code TrapCode))
129
+
130
+ (Jal
131
+ ;; (rd WritableReg) don't use
132
+ (label MachLabel))
133
+
134
+ (CondBr
135
+ (taken CondBrTarget)
136
+ (not_taken CondBrTarget)
137
+ (kind IntegerCompare))
138
+
139
+ ;; Load an inline symbol reference.
140
+ (LoadExtName
141
+ (rd WritableReg)
142
+ (name BoxExternalName)
143
+ (offset i64))
144
+
145
+ ;; Load a TLS symbol address
146
+ (ElfTlsGetAddr
147
+ (rd WritableReg)
148
+ (name BoxExternalName))
149
+
150
+ ;; Load address referenced by `mem` into `rd`.
151
+ (LoadAddr
152
+ (rd WritableReg)
153
+ (mem AMode))
154
+
155
+ ;; Marker, no-op in generated code: SP "virtual offset" is adjusted. This
156
+ ;; controls how AMode::NominalSPOffset args are lowered.
157
+ (VirtualSPOffsetAdj
158
+ (amount i64))
159
+
160
+ ;; A MOV instruction. These are encoded as OrR's (AluRRR form) but we
161
+ ;; keep them separate at the `Inst` level for better pretty-printing
162
+ ;; and faster `is_move()` logic.
163
+ (Mov
164
+ (rd WritableReg)
165
+ (rm Reg)
166
+ (ty Type))
167
+
168
+ ;; A MOV instruction, but where the source register is a non-allocatable
169
+ ;; PReg. It's important that the register be non-allocatable, as regalloc2
170
+ ;; will not see it as used.
171
+ (MovFromPReg
172
+ (rd WritableReg)
173
+ (rm PReg))
174
+
175
+ (Fence
176
+ (pred FenceReq)
177
+ (succ FenceReq))
178
+
179
+ (EBreak)
180
+
181
+ ;; An instruction guaranteed to always be undefined and to trigger an illegal instruction at
182
+ ;; runtime.
183
+ (Udf
184
+ (trap_code TrapCode))
185
+ ;; a jump and link register operation
186
+ (Jalr
187
+ ;;Plain unconditional jumps (assembler pseudo-op J) are encoded as a JAL with rd=x0.
188
+ (rd WritableReg)
189
+ (base Reg)
190
+ (offset Imm12))
191
+
192
+ ;; atomic operations.
193
+ (Atomic
194
+ (op AtomicOP)
195
+ (rd WritableReg)
196
+ (addr Reg)
197
+ (src Reg)
198
+ (amo AMO))
199
+ ;; an atomic store
200
+ (AtomicStore
201
+ (src Reg)
202
+ (ty Type)
203
+ (p Reg))
204
+ ;; an atomic load.
205
+ (AtomicLoad
206
+ (rd WritableReg)
207
+ (ty Type)
208
+ (p Reg))
209
+
210
+ ;; an atomic nand need using loop to implement.
211
+ (AtomicRmwLoop
212
+ (offset Reg)
213
+ (op AtomicRmwOp)
214
+ (dst WritableReg)
215
+ (ty Type)
216
+ (p Reg)
217
+ (x Reg)
218
+ (t0 WritableReg))
219
+
220
+ ;; select x or y base on condition
221
+ (Select
222
+ (dst WritableValueRegs)
223
+ (condition IntegerCompare)
224
+ (x ValueRegs)
225
+ (y ValueRegs))
226
+
227
+ (BrTable
228
+ (index Reg)
229
+ (tmp1 WritableReg)
230
+ (tmp2 WritableReg)
231
+ (targets VecMachLabel))
232
+
233
+ ;; atomic compare and set operation
234
+ (AtomicCas
235
+ (offset Reg)
236
+ (t0 WritableReg)
237
+ (dst WritableReg)
238
+ (e Reg)
239
+ (addr Reg)
240
+ (v Reg)
241
+ (ty Type))
242
+
243
+ (RawData (data VecU8))
244
+
245
+ ;; An unwind pseudo-instruction.
246
+ (Unwind
247
+ (inst UnwindInst))
248
+
249
+ ;; A dummy use, useful to keep a value alive.
250
+ (DummyUse
251
+ (reg Reg))
252
+
253
+ ;; popcnt if target doesn't support extension B
254
+ ;; use iteration to implement.
255
+ (Popcnt
256
+ (sum WritableReg)
257
+ (step WritableReg)
258
+ (tmp WritableReg)
259
+ (rs Reg)
260
+ (ty Type))
261
+
262
+ ;;; counting leading or trailing zeros.
263
+ (Cltz
264
+ ;; leading or trailing.
265
+ (leading bool)
266
+ (sum WritableReg)
267
+ (step WritableReg)
268
+ (tmp WritableReg)
269
+ (rs Reg)
270
+ (ty Type))
271
+
272
+ (Brev8
273
+ (rs Reg)
274
+ (ty Type)
275
+ (step WritableReg)
276
+ (tmp WritableReg)
277
+ (tmp2 WritableReg)
278
+ (rd WritableReg))
279
+ (StackProbeLoop
280
+ (guard_size u32)
281
+ (probe_count u32)
282
+ (tmp WritableReg))
283
+
284
+ (VecAluRRRR
285
+ (op VecAluOpRRRR)
286
+ (vd WritableReg)
287
+ (vd_src Reg)
288
+ (vs2 Reg)
289
+ (vs1 Reg)
290
+ (mask VecOpMasking)
291
+ (vstate VState))
292
+
293
+ (VecAluRRRImm5
294
+ (op VecAluOpRRRImm5)
295
+ (vd WritableReg)
296
+ (vd_src Reg)
297
+ (vs2 Reg)
298
+ (imm Imm5)
299
+ (mask VecOpMasking)
300
+ (vstate VState))
301
+
302
+ (VecAluRRR
303
+ (op VecAluOpRRR)
304
+ (vd WritableReg)
305
+ (vs2 Reg)
306
+ (vs1 Reg)
307
+ (mask VecOpMasking)
308
+ (vstate VState))
309
+
310
+ (VecAluRRImm5
311
+ (op VecAluOpRRImm5)
312
+ (vd WritableReg)
313
+ (vs2 Reg)
314
+ (imm Imm5)
315
+ (mask VecOpMasking)
316
+ (vstate VState))
317
+
318
+ (VecAluRR
319
+ (op VecAluOpRR)
320
+ (vd WritableReg)
321
+ (vs Reg)
322
+ (mask VecOpMasking)
323
+ (vstate VState))
324
+
325
+ (VecAluRImm5
326
+ (op VecAluOpRImm5)
327
+ (vd WritableReg)
328
+ (imm Imm5)
329
+ (mask VecOpMasking)
330
+ (vstate VState))
331
+
332
+ (VecSetState
333
+ (rd WritableReg)
334
+ (vstate VState))
335
+
336
+ (VecLoad
337
+ (eew VecElementWidth)
338
+ (to WritableReg)
339
+ (from VecAMode)
340
+ (flags MemFlags)
341
+ (mask VecOpMasking)
342
+ (vstate VState))
343
+
344
+ (VecStore
345
+ (eew VecElementWidth)
346
+ (to VecAMode)
347
+ (from Reg)
348
+ (flags MemFlags)
349
+ (mask VecOpMasking)
350
+ (vstate VState))
351
+ ))
352
+
353
+ (type AtomicOP (enum
354
+ (LrW)
355
+ (ScW)
356
+ (AmoswapW)
357
+ (AmoaddW)
358
+ (AmoxorW)
359
+ (AmoandW)
360
+ (AmoorW)
361
+ (AmominW)
362
+ (AmomaxW)
363
+ (AmominuW)
364
+ (AmomaxuW)
365
+ (LrD)
366
+ (ScD)
367
+ (AmoswapD)
368
+ (AmoaddD)
369
+ (AmoxorD)
370
+ (AmoandD)
371
+ (AmoorD)
372
+ (AmominD)
373
+ (AmomaxD)
374
+ (AmominuD)
375
+ (AmomaxuD)
376
+ ))
377
+
378
+ (type FpuOPRRRR (enum
379
+ ;; float32
380
+ (FmaddS)
381
+ (FmsubS)
382
+ (FnmsubS)
383
+ (FnmaddS)
384
+ ;; float64
385
+ (FmaddD)
386
+ (FmsubD)
387
+ (FnmsubD)
388
+ (FnmaddD)
389
+ ))
390
+
391
+ (type FClassResult (enum
392
+ ;;0 rs1 is −∞.
393
+ (NegInfinite)
394
+ ;; 1 rs1 is a negative normal number.
395
+ (NegNormal)
396
+ ;; 2 rs1 is a negative subnormal number.
397
+ (NegSubNormal)
398
+ ;; 3 rs1 is −0.
399
+ (NegZero)
400
+ ;; 4 rs1 is +0.
401
+ (PosZero)
402
+ ;; 5 rs1 is a positive subnormal number.
403
+ (PosSubNormal)
404
+ ;; 6 rs1 is a positive normal number.
405
+ (PosNormal)
406
+ ;; 7 rs1 is +∞.
407
+ (PosInfinite)
408
+ ;; 8 rs1 is a signaling NaN.
409
+ (SNaN)
410
+ ;; 9 rs1 is a quiet NaN.
411
+ (QNaN)
412
+ ))
413
+
414
+ (type FpuOPRR (enum
415
+ ;; RV32F Standard Extension
416
+ (FsqrtS)
417
+ (FcvtWS)
418
+ (FcvtWuS)
419
+ (FmvXW)
420
+ (FclassS)
421
+ (FcvtSw)
422
+ (FcvtSwU)
423
+ (FmvWX)
424
+
425
+
426
+ ;; RV64F Standard Extension (in addition to RV32F)
427
+ (FcvtLS)
428
+ (FcvtLuS)
429
+ (FcvtSL)
430
+ (FcvtSLU)
431
+
432
+
433
+ ;; RV64D Standard Extension (in addition to RV32D)
434
+ (FcvtLD)
435
+ (FcvtLuD)
436
+ (FmvXD)
437
+ (FcvtDL)
438
+ (FcvtDLu)
439
+ (FmvDX)
440
+
441
+ ;; RV32D Standard Extension
442
+ (FsqrtD)
443
+ (FcvtSD)
444
+ (FcvtDS)
445
+ (FclassD)
446
+ (FcvtWD)
447
+ (FcvtWuD)
448
+ (FcvtDW)
449
+ (FcvtDWU)
450
+ ;; bitmapip
451
+
452
+ ))
453
+
454
+ (type LoadOP (enum
455
+ (Lb)
456
+ (Lh)
457
+ (Lw)
458
+ (Lbu)
459
+ (Lhu)
460
+ (Lwu)
461
+ (Ld)
462
+ (Flw)
463
+ (Fld)
464
+ ))
465
+
466
+ (type StoreOP (enum
467
+ (Sb)
468
+ (Sh)
469
+ (Sw)
470
+ (Sd)
471
+ (Fsw)
472
+ (Fsd)
473
+ ))
474
+
475
+ (type AluOPRRR (enum
476
+ ;; base set
477
+ (Add)
478
+ (Sub)
479
+ (Sll)
480
+ (Slt)
481
+ (SltU)
482
+ (Sgt)
483
+ (Sgtu)
484
+ (Xor)
485
+ (Srl)
486
+ (Sra)
487
+ (Or)
488
+ (And)
489
+
490
+ ;; RV64I Base Instruction Set (in addition to RV32I)
491
+ (Addw)
492
+ (Subw)
493
+ (Sllw)
494
+ (Srlw)
495
+ (Sraw)
496
+
497
+
498
+ ;;RV32M Standard Extension
499
+ (Mul)
500
+ (Mulh)
501
+ (Mulhsu)
502
+ (Mulhu)
503
+ (Div)
504
+ (DivU)
505
+ (Rem)
506
+ (RemU)
507
+
508
+ ;; RV64M Standard Extension (in addition to RV32M)
509
+ (Mulw)
510
+ (Divw)
511
+ (Divuw)
512
+ (Remw)
513
+ (Remuw)
514
+
515
+ ;; Zba: Address Generation Instructions
516
+ (Adduw)
517
+ (Sh1add)
518
+ (Sh1adduw)
519
+ (Sh2add)
520
+ (Sh2adduw)
521
+ (Sh3add)
522
+ (Sh3adduw)
523
+
524
+ ;; Zbb: Bit Manipulation Instructions
525
+ (Andn)
526
+ (Orn)
527
+ (Xnor)
528
+ (Max)
529
+ (Maxu)
530
+ (Min)
531
+ (Minu)
532
+ (Rol)
533
+ (Rolw)
534
+ (Ror)
535
+ (Rorw)
536
+
537
+ ;; Zbs: Single-bit instructions
538
+ (Bclr)
539
+ (Bext)
540
+ (Binv)
541
+ (Bset)
542
+
543
+ ;; Zbc: Carry-less multiplication
544
+ (Clmul)
545
+ (Clmulh)
546
+ (Clmulr)
547
+
548
+ ;; Zbkb: Bit-manipulation for Cryptography
549
+ (Pack)
550
+ (Packw)
551
+ (Packh)
552
+ ))
553
+
554
+
555
+ (type FpuOPRRR (enum
556
+ ;; RV32F Standard Extension
557
+ (FaddS)
558
+ (FsubS)
559
+ (FmulS)
560
+ (FdivS)
561
+
562
+ (FsgnjS)
563
+ (FsgnjnS)
564
+ (FsgnjxS)
565
+ (FminS)
566
+ (FmaxS)
567
+ (FeqS)
568
+ (FltS)
569
+ (FleS)
570
+
571
+ ;; RV32D Standard Extension
572
+ (FaddD)
573
+ (FsubD)
574
+ (FmulD)
575
+ (FdivD)
576
+ (FsgnjD)
577
+ (FsgnjnD)
578
+ (FsgnjxD)
579
+ (FminD)
580
+ (FmaxD)
581
+ (FeqD)
582
+ (FltD)
583
+ (FleD)
584
+
585
+ ;; Zfa Extension
586
+ (FminmS)
587
+ (FmaxmS)
588
+ (FminmD)
589
+ (FmaxmD)
590
+ ))
591
+
592
+
593
+
594
+ (type AluOPRRI (enum
595
+ ;; Base ISA
596
+ (Addi)
597
+ (Slti)
598
+ (SltiU)
599
+ (Xori)
600
+ (Ori)
601
+ (Andi)
602
+ (Slli)
603
+ (Srli)
604
+ (Srai)
605
+ (Addiw)
606
+ (Slliw)
607
+ (SrliW)
608
+ (Sraiw)
609
+
610
+ ;; Zba: Address Generation Instructions
611
+ (SlliUw)
612
+
613
+ ;; Zbb: Bit Manipulation Instructions
614
+ (Clz)
615
+ (Clzw)
616
+ (Ctz)
617
+ (Ctzw)
618
+ (Cpop)
619
+ (Cpopw)
620
+ (Sextb)
621
+ (Sexth)
622
+ (Zexth)
623
+ (Rori)
624
+ (Roriw)
625
+ (Rev8)
626
+ (Brev8)
627
+ (Orcb)
628
+
629
+ ;; Zbs: Single-bit instructions
630
+ (Bclri)
631
+ (Bexti)
632
+ (Binvi)
633
+ (Bseti)
634
+ ))
635
+
636
+ (type COpcodeSpace (enum
637
+ (C0)
638
+ (C1)
639
+ (C2)
640
+ ))
641
+
642
+ ;; Opcodes for the CR compressed instruction format
643
+ (type CrOp (enum
644
+ (CMv)
645
+ (CAdd)
646
+ (CJr)
647
+ (CJalr)
648
+ ;; c.ebreak technically isn't a CR format instruction, but it's encoding
649
+ ;; lines up with this format.
650
+ (CEbreak)
651
+ ))
652
+
653
+ ;; Opcodes for the CA compressed instruction format
654
+ (type CaOp (enum
655
+ (CAnd)
656
+ (COr)
657
+ (CXor)
658
+ (CSub)
659
+ (CAddw)
660
+ (CSubw)
661
+ (CMul)
662
+ ))
663
+
664
+ ;; Opcodes for the CJ compressed instruction format
665
+ (type CjOp (enum
666
+ (CJ)
667
+ ))
668
+
669
+ ;; Opcodes for the CI compressed instruction format
670
+ (type CiOp (enum
671
+ (CAddi)
672
+ (CAddiw)
673
+ (CAddi16sp)
674
+ (CSlli)
675
+ (CLi)
676
+ (CLui)
677
+ (CLwsp)
678
+ (CLdsp)
679
+ (CFldsp)
680
+ ))
681
+
682
+ ;; Opcodes for the CIW compressed instruction format
683
+ (type CiwOp (enum
684
+ (CAddi4spn)
685
+ ))
686
+
687
+ ;; Opcodes for the CB compressed instruction format
688
+ (type CbOp (enum
689
+ (CSrli)
690
+ (CSrai)
691
+ (CAndi)
692
+ ))
693
+
694
+ ;; Opcodes for the CSS compressed instruction format
695
+ (type CssOp (enum
696
+ (CSwsp)
697
+ (CSdsp)
698
+ (CFsdsp)
699
+ ))
700
+
701
+ ;; Opcodes for the CS compressed instruction format
702
+ (type CsOp (enum
703
+ (CSw)
704
+ (CSd)
705
+ (CFsd)
706
+ ))
707
+
708
+ ;; Opcodes for the CL compressed instruction format
709
+ (type ClOp (enum
710
+ (CLw)
711
+ (CLd)
712
+ (CFld)
713
+ ))
714
+
715
+ ;; Opcodes for the CSZN compressed instruction format
716
+ (type CsznOp (enum
717
+ (CNot)
718
+ (CZextb)
719
+ (CZexth)
720
+ (CZextw)
721
+ (CSextb)
722
+ (CSexth)
723
+ ))
724
+
725
+ ;; This is a mix of all Zcb memory adressing instructions
726
+ ;;
727
+ ;; Technically they are split across 4 different formats.
728
+ ;; But they are all very similar, so we just group them all together.
729
+ (type ZcbMemOp (enum
730
+ (CLbu)
731
+ (CLhu)
732
+ (CLh)
733
+ (CSb)
734
+ (CSh)
735
+ ))
736
+
737
+
738
+ (type CsrRegOP (enum
739
+ ;; Atomic Read/Write CSR
740
+ (CsrRW)
741
+ ;; Atomic Read and Set Bits in CSR
742
+ (CsrRS)
743
+ ;; Atomic Read and Clear Bits in CSR
744
+ (CsrRC)
745
+ ))
746
+
747
+ (type CsrImmOP (enum
748
+ ;; Atomic Read/Write CSR (Immediate Source)
749
+ (CsrRWI)
750
+ ;; Atomic Read and Set Bits in CSR (Immediate Source)
751
+ (CsrRSI)
752
+ ;; Atomic Read and Clear Bits in CSR (Immediate Source)
753
+ (CsrRCI)
754
+ ))
755
+
756
+ ;; Enum of the known CSR registers
757
+ (type CSR (enum
758
+ ;; Floating-Point Dynamic Rounding Mode
759
+ (Frm)
760
+ ))
761
+
762
+
763
+ (type FRM (enum
764
+ ;; Round to Nearest, ties to Even
765
+ (RNE)
766
+ ;; Round towards Zero
767
+ (RTZ)
768
+ ;; Round Down (towards −∞)
769
+ (RDN)
770
+ ;; Round Up (towards +∞)
771
+ (RUP)
772
+ ;; Round to Nearest, ties to Max Magnitude
773
+ (RMM)
774
+ ;; In instruction’s rm field, selects dynamic rounding mode;
775
+ ;;In Rounding Mode register, Invalid.
776
+ (Fcsr)
777
+ ))
778
+
779
+ (decl pure frm_bits (FRM) UImm5)
780
+ (extern constructor frm_bits frm_bits)
781
+ (convert FRM UImm5 frm_bits)
782
+
783
+ (type FFlagsException (enum
784
+ ;; Invalid Operation
785
+ (NV)
786
+ ;; Divide by Zero
787
+ (DZ)
788
+ ;; Overflow
789
+ (OF)
790
+ ;; Underflow
791
+ (UF)
792
+ ;; Inexact
793
+ (NX)
794
+ ))
795
+
796
+ ;;;; input output read write
797
+ ;;;; SI SO SR SW
798
+ ;;;; PI PO PR PW
799
+ ;;;; lowest four bit are used.
800
+ (type FenceReq (primitive u8))
801
+
802
+ (type BoxCallInfo (primitive BoxCallInfo))
803
+ (type BoxCallIndInfo (primitive BoxCallIndInfo))
804
+ (type BoxReturnCallInfo (primitive BoxReturnCallInfo))
805
+ (type IntegerCompare (primitive IntegerCompare))
806
+ (type AMode (primitive AMode))
807
+ (type OptionReg (primitive OptionReg))
808
+ (type OptionImm12 (primitive OptionImm12))
809
+ (type OptionUimm5 (primitive OptionUimm5))
810
+ (type Imm12 (primitive Imm12))
811
+ (type UImm5 (primitive UImm5))
812
+ (type Imm5 (primitive Imm5))
813
+ (type Imm20 (primitive Imm20))
814
+ (type Imm3 (primitive Imm3))
815
+ (type CondBrTarget (primitive CondBrTarget))
816
+ (type VecU8 (primitive VecU8))
817
+ (type AMO (primitive AMO))
818
+ (type VecMachLabel extern (enum))
819
+
820
+
821
+ ;;;; Newtypes for Different Register Classes ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
822
+
823
+ (type XReg (primitive XReg))
824
+ (type WritableXReg (primitive WritableXReg))
825
+ (type FReg (primitive FReg))
826
+ (type WritableFReg (primitive WritableFReg))
827
+ (type VReg (primitive VReg))
828
+ (type WritableVReg (primitive WritableVReg))
829
+
830
+ ;; Construct a new `XReg` from a `Reg`.
831
+ ;;
832
+ ;; Asserts that the register has a Integer RegClass.
833
+ (decl xreg_new (Reg) XReg)
834
+ (extern constructor xreg_new xreg_new)
835
+ (convert Reg XReg xreg_new)
836
+
837
+ ;; Construct a new `WritableXReg` from a `WritableReg`.
838
+ ;;
839
+ ;; Asserts that the register has a Integer RegClass.
840
+ (decl writable_xreg_new (WritableReg) WritableXReg)
841
+ (extern constructor writable_xreg_new writable_xreg_new)
842
+ (convert WritableReg WritableXReg writable_xreg_new)
843
+
844
+ ;; Put a value into a XReg.
845
+ ;;
846
+ ;; Asserts that the value goes into a XReg.
847
+ (decl put_in_xreg (Value) XReg)
848
+ (rule (put_in_xreg val) (xreg_new (put_in_reg val)))
849
+ (convert Value XReg put_in_xreg)
850
+
851
+ ;; Construct an `InstOutput` out of a single XReg register.
852
+ (decl output_xreg (XReg) InstOutput)
853
+ (rule (output_xreg x) (output_reg x))
854
+ (convert XReg InstOutput output_xreg)
855
+
856
+ ;; Convert a `WritableXReg` to an `XReg`.
857
+ (decl pure writable_xreg_to_xreg (WritableXReg) XReg)
858
+ (extern constructor writable_xreg_to_xreg writable_xreg_to_xreg)
859
+ (convert WritableXReg XReg writable_xreg_to_xreg)
860
+
861
+ ;; Convert a `WritableXReg` to an `WritableReg`.
862
+ (decl pure writable_xreg_to_writable_reg (WritableXReg) WritableReg)
863
+ (extern constructor writable_xreg_to_writable_reg writable_xreg_to_writable_reg)
864
+ (convert WritableXReg WritableReg writable_xreg_to_writable_reg)
865
+
866
+ ;; Convert a `WritableXReg` to an `Reg`.
867
+ (decl pure writable_xreg_to_reg (WritableXReg) Reg)
868
+ (rule (writable_xreg_to_reg x) (writable_xreg_to_writable_reg x))
869
+ (convert WritableXReg Reg writable_xreg_to_reg)
870
+
871
+ ;; Convert an `XReg` to a `Reg`.
872
+ (decl pure xreg_to_reg (XReg) Reg)
873
+ (extern constructor xreg_to_reg xreg_to_reg)
874
+ (convert XReg Reg xreg_to_reg)
875
+
876
+ ;; Convert a `XReg` to a `ValueRegs`.
877
+ (decl xreg_to_value_regs (XReg) ValueRegs)
878
+ (rule (xreg_to_value_regs x) (value_reg x))
879
+ (convert XReg ValueRegs xreg_to_reg)
880
+
881
+ ;; Convert a `WritableXReg` to a `ValueRegs`.
882
+ (decl writable_xreg_to_value_regs (WritableXReg) ValueRegs)
883
+ (rule (writable_xreg_to_value_regs x) (value_reg x))
884
+ (convert WritableXReg ValueRegs writable_xreg_to_value_regs)
885
+
886
+ ;; Allocates a new `WritableXReg`.
887
+ (decl temp_writable_xreg () WritableXReg)
888
+ (rule (temp_writable_xreg) (temp_writable_reg $I64))
889
+
890
+
891
+ ;; Construct a new `FReg` from a `Reg`.
892
+ ;;
893
+ ;; Asserts that the register has a Float RegClass.
894
+ (decl freg_new (Reg) FReg)
895
+ (extern constructor freg_new freg_new)
896
+ (convert Reg FReg freg_new)
897
+
898
+ ;; Construct a new `WritableFReg` from a `WritableReg`.
899
+ ;;
900
+ ;; Asserts that the register has a Float RegClass.
901
+ (decl writable_freg_new (WritableReg) WritableFReg)
902
+ (extern constructor writable_freg_new writable_freg_new)
903
+ (convert WritableReg WritableFReg writable_freg_new)
904
+
905
+ ;; Put a value into a FReg.
906
+ ;;
907
+ ;; Asserts that the value goes into a FReg.
908
+ (decl put_in_freg (Value) FReg)
909
+ (rule (put_in_freg val) (freg_new (put_in_reg val)))
910
+ (convert Value FReg put_in_freg)
911
+
912
+ ;; Construct an `InstOutput` out of a single FReg register.
913
+ (decl output_freg (FReg) InstOutput)
914
+ (rule (output_freg x) (output_reg x))
915
+ (convert FReg InstOutput output_freg)
916
+
917
+ ;; Convert a `WritableFReg` to an `FReg`.
918
+ (decl pure writable_freg_to_freg (WritableFReg) FReg)
919
+ (extern constructor writable_freg_to_freg writable_freg_to_freg)
920
+ (convert WritableFReg FReg writable_freg_to_freg)
921
+
922
+ ;; Convert a `WritableFReg` to an `WritableReg`.
923
+ (decl pure writable_freg_to_writable_reg (WritableFReg) WritableReg)
924
+ (extern constructor writable_freg_to_writable_reg writable_freg_to_writable_reg)
925
+ (convert WritableFReg WritableReg writable_freg_to_writable_reg)
926
+
927
+ ;; Convert a `WritableFReg` to an `Reg`.
928
+ (decl pure writable_freg_to_reg (WritableFReg) Reg)
929
+ (rule (writable_freg_to_reg x) (writable_freg_to_writable_reg x))
930
+ (convert WritableFReg Reg writable_freg_to_reg)
931
+
932
+ ;; Convert an `FReg` to a `Reg`.
933
+ (decl pure freg_to_reg (FReg) Reg)
934
+ (extern constructor freg_to_reg freg_to_reg)
935
+ (convert FReg Reg freg_to_reg)
936
+
937
+ ;; Convert a `FReg` to a `ValueRegs`.
938
+ (decl freg_to_value_regs (FReg) ValueRegs)
939
+ (rule (freg_to_value_regs x) (value_reg x))
940
+ (convert FReg ValueRegs xreg_to_reg)
941
+
942
+ ;; Convert a `WritableFReg` to a `ValueRegs`.
943
+ (decl writable_freg_to_value_regs (WritableFReg) ValueRegs)
944
+ (rule (writable_freg_to_value_regs x) (value_reg x))
945
+ (convert WritableFReg ValueRegs writable_freg_to_value_regs)
946
+
947
+ ;; Allocates a new `WritableFReg`.
948
+ (decl temp_writable_freg () WritableFReg)
949
+ (rule (temp_writable_freg) (temp_writable_reg $F64))
950
+
951
+
952
+
953
+ ;; Construct a new `VReg` from a `Reg`.
954
+ ;;
955
+ ;; Asserts that the register has a Vector RegClass.
956
+ (decl vreg_new (Reg) VReg)
957
+ (extern constructor vreg_new vreg_new)
958
+ (convert Reg VReg vreg_new)
959
+
960
+ ;; Construct a new `WritableVReg` from a `WritableReg`.
961
+ ;;
962
+ ;; Asserts that the register has a Vector RegClass.
963
+ (decl writable_vreg_new (WritableReg) WritableVReg)
964
+ (extern constructor writable_vreg_new writable_vreg_new)
965
+ (convert WritableReg WritableVReg writable_vreg_new)
966
+
967
+ ;; Put a value into a VReg.
968
+ ;;
969
+ ;; Asserts that the value goes into a VReg.
970
+ (decl put_in_vreg (Value) VReg)
971
+ (rule (put_in_vreg val) (vreg_new (put_in_reg val)))
972
+ (convert Value VReg put_in_vreg)
973
+
974
+ ;; Construct an `InstOutput` out of a single VReg register.
975
+ (decl output_vreg (VReg) InstOutput)
976
+ (rule (output_vreg x) (output_reg x))
977
+ (convert VReg InstOutput output_vreg)
978
+
979
+ ;; Convert a `WritableVReg` to an `VReg`.
980
+ (decl pure writable_vreg_to_vreg (WritableVReg) VReg)
981
+ (extern constructor writable_vreg_to_vreg writable_vreg_to_vreg)
982
+ (convert WritableVReg VReg writable_vreg_to_vreg)
983
+
984
+ ;; Convert a `WritableVReg` to an `WritableReg`.
985
+ (decl pure writable_vreg_to_writable_reg (WritableVReg) WritableReg)
986
+ (extern constructor writable_vreg_to_writable_reg writable_vreg_to_writable_reg)
987
+ (convert WritableVReg WritableReg writable_vreg_to_writable_reg)
988
+
989
+ ;; Convert a `WritableVReg` to an `Reg`.
990
+ (decl pure writable_vreg_to_reg (WritableVReg) Reg)
991
+ (rule (writable_vreg_to_reg x) (writable_vreg_to_writable_reg x))
992
+ (convert WritableVReg Reg writable_vreg_to_reg)
993
+
994
+ ;; Convert an `VReg` to a `Reg`.
995
+ (decl pure vreg_to_reg (VReg) Reg)
996
+ (extern constructor vreg_to_reg vreg_to_reg)
997
+ (convert VReg Reg vreg_to_reg)
998
+
999
+ ;; Convert a `VReg` to a `ValueRegs`.
1000
+ (decl vreg_to_value_regs (VReg) ValueRegs)
1001
+ (rule (vreg_to_value_regs x) (value_reg x))
1002
+ (convert VReg ValueRegs xreg_to_reg)
1003
+
1004
+ ;; Convert a `WritableVReg` to a `ValueRegs`.
1005
+ (decl writable_vreg_to_value_regs (WritableVReg) ValueRegs)
1006
+ (rule (writable_vreg_to_value_regs x) (value_reg x))
1007
+ (convert WritableVReg ValueRegs writable_vreg_to_value_regs)
1008
+
1009
+ ;; Allocates a new `WritableVReg`.
1010
+ (decl temp_writable_vreg () WritableVReg)
1011
+ (rule (temp_writable_vreg) (temp_writable_reg $I8X16))
1012
+
1013
+
1014
+ ;; Converters
1015
+
1016
+ (convert u8 i32 u8_as_i32)
1017
+ (decl u8_as_i32 (u8) i32)
1018
+ (extern constructor u8_as_i32 u8_as_i32)
1019
+
1020
+ ;; ISA Extension helpers
1021
+
1022
+ (decl pure has_m () bool)
1023
+ (extern constructor has_m has_m)
1024
+
1025
+ (decl pure has_v () bool)
1026
+ (extern constructor has_v has_v)
1027
+
1028
+ (decl pure has_zfa () bool)
1029
+ (extern constructor has_zfa has_zfa)
1030
+
1031
+ (decl pure has_zbkb () bool)
1032
+ (extern constructor has_zbkb has_zbkb)
1033
+
1034
+ (decl pure has_zba () bool)
1035
+ (extern constructor has_zba has_zba)
1036
+
1037
+ (decl pure has_zbb () bool)
1038
+ (extern constructor has_zbb has_zbb)
1039
+
1040
+ (decl pure has_zbc () bool)
1041
+ (extern constructor has_zbc has_zbc)
1042
+
1043
+ (decl pure has_zbs () bool)
1044
+ (extern constructor has_zbs has_zbs)
1045
+
1046
+
1047
+ ;;;; Instruction Helpers ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1048
+
1049
+ ;; RV32I Base Integer Instruction Set
1050
+
1051
+ ;; Helper for emitting the `add` instruction.
1052
+ ;; rd ← rs1 + rs2
1053
+ (decl rv_add (XReg XReg) XReg)
1054
+ (rule (rv_add rs1 rs2)
1055
+ (alu_rrr (AluOPRRR.Add) rs1 rs2))
1056
+
1057
+ ;; Helper for emitting the `addi` ("Add Immediate") instruction.
1058
+ ;; rd ← rs1 + sext(imm)
1059
+ (decl rv_addi (XReg Imm12) XReg)
1060
+ (rule (rv_addi rs1 imm)
1061
+ (alu_rr_imm12 (AluOPRRI.Addi) rs1 imm))
1062
+
1063
+ ;; Helper for emitting the `sub` instruction.
1064
+ ;; rd ← rs1 - rs2
1065
+ (decl rv_sub (XReg XReg) XReg)
1066
+ (rule (rv_sub rs1 rs2)
1067
+ (alu_rrr (AluOPRRR.Sub) rs1 rs2))
1068
+
1069
+ ;; Helper for emitting the `neg` instruction.
1070
+ ;; This instruction is a mnemonic for `sub rd, zero, rs1`.
1071
+ (decl rv_neg (XReg) XReg)
1072
+ (rule (rv_neg rs1)
1073
+ (alu_rrr (AluOPRRR.Sub) (zero_reg) rs1))
1074
+
1075
+ ;; Helper for emitting the `sll` ("Shift Left Logical") instruction.
1076
+ ;; rd ← rs1 << rs2
1077
+ (decl rv_sll (XReg XReg) XReg)
1078
+ (rule (rv_sll rs1 rs2)
1079
+ (alu_rrr (AluOPRRR.Sll) rs1 rs2))
1080
+
1081
+ ;; Helper for emitting the `slli` ("Shift Left Logical Immediate") instruction.
1082
+ ;; rd ← rs1 << uext(imm)
1083
+ (decl rv_slli (XReg Imm12) XReg)
1084
+ (rule (rv_slli rs1 imm)
1085
+ (alu_rr_imm12 (AluOPRRI.Slli) rs1 imm))
1086
+
1087
+ ;; Helper for emitting the `srl` ("Shift Right Logical") instruction.
1088
+ ;; rd ← rs1 >> rs2
1089
+ (decl rv_srl (XReg XReg) XReg)
1090
+ (rule (rv_srl rs1 rs2)
1091
+ (alu_rrr (AluOPRRR.Srl) rs1 rs2))
1092
+
1093
+ ;; Helper for emitting the `srli` ("Shift Right Logical Immediate") instruction.
1094
+ ;; rd ← rs1 >> uext(imm)
1095
+ (decl rv_srli (XReg Imm12) XReg)
1096
+ (rule (rv_srli rs1 imm)
1097
+ (alu_rr_imm12 (AluOPRRI.Srli) rs1 imm))
1098
+
1099
+ ;; Helper for emitting the `sra` ("Shift Right Arithmetic") instruction.
1100
+ ;; rd ← rs1 >> rs2
1101
+ (decl rv_sra (XReg XReg) XReg)
1102
+ (rule (rv_sra rs1 rs2)
1103
+ (alu_rrr (AluOPRRR.Sra) rs1 rs2))
1104
+
1105
+ ;; Helper for emitting the `srai` ("Shift Right Arithmetic Immediate") instruction.
1106
+ ;; rd ← rs1 >> uext(imm)
1107
+ (decl rv_srai (XReg Imm12) XReg)
1108
+ (rule (rv_srai rs1 imm)
1109
+ (alu_rr_imm12 (AluOPRRI.Srai) rs1 imm))
1110
+
1111
+ ;; Helper for emitting the `or` instruction.
1112
+ ;; rd ← rs1 ∨ rs2
1113
+ (decl rv_or (XReg XReg) XReg)
1114
+ (rule (rv_or rs1 rs2)
1115
+ (alu_rrr (AluOPRRR.Or) rs1 rs2))
1116
+
1117
+ ;; Helper for emitting the `ori` ("Or Immediate") instruction.
1118
+ ;; rd ← rs1 ∨ uext(imm)
1119
+ (decl rv_ori (XReg Imm12) XReg)
1120
+ (rule (rv_ori rs1 imm)
1121
+ (alu_rr_imm12 (AluOPRRI.Ori) rs1 imm))
1122
+
1123
+ ;; Helper for emitting the `xor` instruction.
1124
+ ;; rd ← rs1 ⊕ rs2
1125
+ (decl rv_xor (XReg XReg) XReg)
1126
+ (rule (rv_xor rs1 rs2)
1127
+ (alu_rrr (AluOPRRR.Xor) rs1 rs2))
1128
+
1129
+ ;; Helper for emitting the `xori` ("Exlusive Or Immediate") instruction.
1130
+ ;; rd ← rs1 ⊕ uext(imm)
1131
+ (decl rv_xori (XReg Imm12) XReg)
1132
+ (rule (rv_xori rs1 imm)
1133
+ (alu_rr_imm12 (AluOPRRI.Xori) rs1 imm))
1134
+
1135
+ ;; Helper for emitting the `not` instruction.
1136
+ ;; This instruction is a mnemonic for `xori rd, rs1, -1`.
1137
+ (decl rv_not (XReg) XReg)
1138
+ (rule (rv_not rs1)
1139
+ (rv_xori rs1 (imm12_const -1)))
1140
+
1141
+ ;; Helper for emitting the `and` instruction.
1142
+ ;; rd ← rs1 ∧ rs2
1143
+ (decl rv_and (XReg XReg) XReg)
1144
+ (rule (rv_and rs1 rs2)
1145
+ (alu_rrr (AluOPRRR.And) rs1 rs2))
1146
+
1147
+ ;; Helper for emitting the `andi` ("And Immediate") instruction.
1148
+ ;; rd ← rs1 ∧ uext(imm)
1149
+ (decl rv_andi (XReg Imm12) XReg)
1150
+ (rule (rv_andi rs1 imm)
1151
+ (alu_rr_imm12 (AluOPRRI.Andi) rs1 imm))
1152
+
1153
+ ;; Helper for emitting the `slt` ("Set Less Than") instruction.
1154
+ ;; rd ← rs1 < rs2
1155
+ (decl rv_slt (XReg XReg) XReg)
1156
+ (rule (rv_slt rs1 rs2)
1157
+ (alu_rrr (AluOPRRR.Slt) rs1 rs2))
1158
+
1159
+ ;; Helper for emitting the `sltu` ("Set Less Than Unsigned") instruction.
1160
+ ;; rd ← rs1 < rs2
1161
+ (decl rv_sltu (XReg XReg) XReg)
1162
+ (rule (rv_sltu rs1 rs2)
1163
+ (alu_rrr (AluOPRRR.SltU) rs1 rs2))
1164
+
1165
+ ;; Helper for emitting the `snez` instruction.
1166
+ ;; This instruction is a mnemonic for `sltu rd, zero, rs`.
1167
+ (decl rv_snez (XReg) XReg)
1168
+ (rule (rv_snez rs1)
1169
+ (rv_sltu (zero_reg) rs1))
1170
+
1171
+ ;; Helper for emiting the `slti` ("Set Less Than Immediate") instruction.
1172
+ ;; rd ← rs1 < imm
1173
+ (decl rv_slti (XReg Imm12) XReg)
1174
+ (rule (rv_slti rs1 imm)
1175
+ (alu_rr_imm12 (AluOPRRI.Slti) rs1 imm))
1176
+
1177
+ ;; Helper for emiting the `sltiu` ("Set Less Than Immediate Unsigned") instruction.
1178
+ ;; rd ← rs1 < imm
1179
+ (decl rv_sltiu (XReg Imm12) XReg)
1180
+ (rule (rv_sltiu rs1 imm)
1181
+ (alu_rr_imm12 (AluOPRRI.SltiU) rs1 imm))
1182
+
1183
+ ;; Helper for emitting the `seqz` instruction.
1184
+ ;; This instruction is a mnemonic for `sltiu rd, rs, 1`.
1185
+ (decl rv_seqz (XReg) XReg)
1186
+ (rule (rv_seqz rs1)
1187
+ (rv_sltiu rs1 (imm12_const 1)))
1188
+
1189
+
1190
+ ;; RV64I Base Integer Instruction Set
1191
+ ;; Unlike RV32I instructions these are only present in the 64bit ISA
1192
+
1193
+ ;; Helper for emitting the `addw` ("Add Word") instruction.
1194
+ ;; rd ← sext32(rs1) + sext32(rs2)
1195
+ (decl rv_addw (XReg XReg) XReg)
1196
+ (rule (rv_addw rs1 rs2)
1197
+ (alu_rrr (AluOPRRR.Addw) rs1 rs2))
1198
+
1199
+ ;; Helper for emitting the `addiw` ("Add Word Immediate") instruction.
1200
+ ;; rd ← sext32(rs1) + imm
1201
+ (decl rv_addiw (XReg Imm12) XReg)
1202
+ (rule (rv_addiw rs1 imm)
1203
+ (alu_rr_imm12 (AluOPRRI.Addiw) rs1 imm))
1204
+
1205
+ ;; Helper for emitting the `sext.w` ("Sign Extend Word") instruction.
1206
+ ;; This instruction is a mnemonic for `addiw rd, rs, zero`.
1207
+ (decl rv_sextw (XReg) XReg)
1208
+ (rule (rv_sextw rs1)
1209
+ (rv_addiw rs1 (imm12_const 0)))
1210
+
1211
+ ;; Helper for emitting the `subw` ("Subtract Word") instruction.
1212
+ ;; rd ← sext32(rs1) - sext32(rs2)
1213
+ (decl rv_subw (XReg XReg) XReg)
1214
+ (rule (rv_subw rs1 rs2)
1215
+ (alu_rrr (AluOPRRR.Subw) rs1 rs2))
1216
+
1217
+ ;; Helper for emitting the `sllw` ("Shift Left Logical Word") instruction.
1218
+ ;; rd ← sext32(uext32(rs1) << rs2)
1219
+ (decl rv_sllw (XReg XReg) XReg)
1220
+ (rule (rv_sllw rs1 rs2)
1221
+ (alu_rrr (AluOPRRR.Sllw) rs1 rs2))
1222
+
1223
+ ;; Helper for emitting the `slliw` ("Shift Left Logical Immediate Word") instruction.
1224
+ ;; rd ← sext32(uext32(rs1) << imm)
1225
+ (decl rv_slliw (XReg Imm12) XReg)
1226
+ (rule (rv_slliw rs1 imm)
1227
+ (alu_rr_imm12 (AluOPRRI.Slliw) rs1 imm))
1228
+
1229
+ ;; Helper for emitting the `srlw` ("Shift Right Logical Word") instruction.
1230
+ ;; rd ← sext32(uext32(rs1) >> rs2)
1231
+ (decl rv_srlw (XReg XReg) XReg)
1232
+ (rule (rv_srlw rs1 rs2)
1233
+ (alu_rrr (AluOPRRR.Srlw) rs1 rs2))
1234
+
1235
+ ;; Helper for emitting the `srliw` ("Shift Right Logical Immediate Word") instruction.
1236
+ ;; rd ← sext32(uext32(rs1) >> imm)
1237
+ (decl rv_srliw (XReg Imm12) XReg)
1238
+ (rule (rv_srliw rs1 imm)
1239
+ (alu_rr_imm12 (AluOPRRI.SrliW) rs1 imm))
1240
+
1241
+ ;; Helper for emitting the `sraw` ("Shift Right Arithmetic Word") instruction.
1242
+ ;; rd ← sext32(rs1 >> rs2)
1243
+ (decl rv_sraw (XReg XReg) XReg)
1244
+ (rule (rv_sraw rs1 rs2)
1245
+ (alu_rrr (AluOPRRR.Sraw) rs1 rs2))
1246
+
1247
+ ;; Helper for emitting the `sraiw` ("Shift Right Arithmetic Immediate Word") instruction.
1248
+ ;; rd ← sext32(rs1 >> imm)
1249
+ (decl rv_sraiw (XReg Imm12) XReg)
1250
+ (rule (rv_sraiw rs1 imm)
1251
+ (alu_rr_imm12 (AluOPRRI.Sraiw) rs1 imm))
1252
+
1253
+
1254
+ ;; RV32M Extension
1255
+ ;; TODO: Enable these instructions only when we have the M extension
1256
+
1257
+ ;; Helper for emitting the `mul` instruction.
1258
+ ;; rd ← rs1 × rs2
1259
+ (decl rv_mul (XReg XReg) XReg)
1260
+ (rule (rv_mul rs1 rs2)
1261
+ (alu_rrr (AluOPRRR.Mul) rs1 rs2))
1262
+
1263
+ ;; Helper for emitting the `mulh` ("Multiply High Signed Signed") instruction.
1264
+ ;; rd ← (sext(rs1) × sext(rs2)) » xlen
1265
+ (decl rv_mulh (XReg XReg) XReg)
1266
+ (rule (rv_mulh rs1 rs2)
1267
+ (alu_rrr (AluOPRRR.Mulh) rs1 rs2))
1268
+
1269
+ ;; Helper for emitting the `mulhu` ("Multiply High Unsigned Unsigned") instruction.
1270
+ ;; rd ← (uext(rs1) × uext(rs2)) » xlen
1271
+ (decl rv_mulhu (XReg XReg) XReg)
1272
+ (rule (rv_mulhu rs1 rs2)
1273
+ (alu_rrr (AluOPRRR.Mulhu) rs1 rs2))
1274
+
1275
+ ;; Helper for emitting the `div` instruction.
1276
+ ;; rd ← rs1 ÷ rs2
1277
+ (decl rv_div (XReg XReg) XReg)
1278
+ (rule (rv_div rs1 rs2)
1279
+ (alu_rrr (AluOPRRR.Div) rs1 rs2))
1280
+
1281
+ ;; Helper for emitting the `divu` ("Divide Unsigned") instruction.
1282
+ ;; rd ← rs1 ÷ rs2
1283
+ (decl rv_divu (XReg XReg) XReg)
1284
+ (rule (rv_divu rs1 rs2)
1285
+ (alu_rrr (AluOPRRR.DivU) rs1 rs2))
1286
+
1287
+ ;; Helper for emitting the `rem` instruction.
1288
+ ;; rd ← rs1 mod rs2
1289
+ (decl rv_rem (XReg XReg) XReg)
1290
+ (rule (rv_rem rs1 rs2)
1291
+ (alu_rrr (AluOPRRR.Rem) rs1 rs2))
1292
+
1293
+ ;; Helper for emitting the `remu` ("Remainder Unsigned") instruction.
1294
+ ;; rd ← rs1 mod rs2
1295
+ (decl rv_remu (XReg XReg) XReg)
1296
+ (rule (rv_remu rs1 rs2)
1297
+ (alu_rrr (AluOPRRR.RemU) rs1 rs2))
1298
+
1299
+ ;; RV64M Extension
1300
+ ;; TODO: Enable these instructions only when we have the M extension
1301
+
1302
+ ;; Helper for emitting the `mulw` ("Multiply Word") instruction.
1303
+ ;; rd ← uext32(rs1) × uext32(rs2)
1304
+ (decl rv_mulw (XReg XReg) XReg)
1305
+ (rule (rv_mulw rs1 rs2)
1306
+ (alu_rrr (AluOPRRR.Mulw) rs1 rs2))
1307
+
1308
+ ;; Helper for emitting the `divw` ("Divide Word") instruction.
1309
+ ;; rd ← sext32(rs1) ÷ sext32(rs2)
1310
+ (decl rv_divw (XReg XReg) XReg)
1311
+ (rule (rv_divw rs1 rs2)
1312
+ (alu_rrr (AluOPRRR.Divw) rs1 rs2))
1313
+
1314
+ ;; Helper for emitting the `divuw` ("Divide Unsigned Word") instruction.
1315
+ ;; rd ← uext32(rs1) ÷ uext32(rs2)
1316
+ (decl rv_divuw (XReg XReg) XReg)
1317
+ (rule (rv_divuw rs1 rs2)
1318
+ (alu_rrr (AluOPRRR.Divuw) rs1 rs2))
1319
+
1320
+ ;; Helper for emitting the `remw` ("Remainder Word") instruction.
1321
+ ;; rd ← sext32(rs1) mod sext32(rs2)
1322
+ (decl rv_remw (XReg XReg) XReg)
1323
+ (rule (rv_remw rs1 rs2)
1324
+ (alu_rrr (AluOPRRR.Remw) rs1 rs2))
1325
+
1326
+ ;; Helper for emitting the `remuw` ("Remainder Unsigned Word") instruction.
1327
+ ;; rd ← uext32(rs1) mod uext32(rs2)
1328
+ (decl rv_remuw (XReg XReg) XReg)
1329
+ (rule (rv_remuw rs1 rs2)
1330
+ (alu_rrr (AluOPRRR.Remuw) rs1 rs2))
1331
+
1332
+
1333
+ ;; F and D Extensions
1334
+ ;; TODO: Enable these instructions only when we have the F or D extensions
1335
+
1336
+ ;; Helper for emitting the `fadd` instruction.
1337
+ (decl rv_fadd (Type FRM FReg FReg) FReg)
1338
+ (rule (rv_fadd $F32 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FaddS) $F32 frm rs1 rs2))
1339
+ (rule (rv_fadd $F64 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FaddD) $F64 frm rs1 rs2))
1340
+
1341
+ ;; Helper for emitting the `fsub` instruction.
1342
+ (decl rv_fsub (Type FRM FReg FReg) FReg)
1343
+ (rule (rv_fsub $F32 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FsubS) $F32 frm rs1 rs2))
1344
+ (rule (rv_fsub $F64 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FsubD) $F64 frm rs1 rs2))
1345
+
1346
+ ;; Helper for emitting the `fmul` instruction.
1347
+ (decl rv_fmul (Type FRM FReg FReg) FReg)
1348
+ (rule (rv_fmul $F32 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FmulS) $F32 frm rs1 rs2))
1349
+ (rule (rv_fmul $F64 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FmulD) $F64 frm rs1 rs2))
1350
+
1351
+ ;; Helper for emitting the `fdiv` instruction.
1352
+ (decl rv_fdiv (Type FRM FReg FReg) FReg)
1353
+ (rule (rv_fdiv $F32 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FdivS) $F32 frm rs1 rs2))
1354
+ (rule (rv_fdiv $F64 frm rs1 rs2) (fpu_rrr (FpuOPRRR.FdivD) $F64 frm rs1 rs2))
1355
+
1356
+ ;; Helper for emitting the `fsqrt` instruction.
1357
+ (decl rv_fsqrt (Type FRM FReg) FReg)
1358
+ (rule (rv_fsqrt $F32 frm rs1) (fpu_rr (FpuOPRR.FsqrtS) $F32 frm rs1))
1359
+ (rule (rv_fsqrt $F64 frm rs1) (fpu_rr (FpuOPRR.FsqrtD) $F64 frm rs1))
1360
+
1361
+ ;; Helper for emitting the `fmadd` instruction.
1362
+ (decl rv_fmadd (Type FRM FReg FReg FReg) FReg)
1363
+ (rule (rv_fmadd $F32 frm rs1 rs2 rs3) (fpu_rrrr (FpuOPRRRR.FmaddS) $F32 frm rs1 rs2 rs3))
1364
+ (rule (rv_fmadd $F64 frm rs1 rs2 rs3) (fpu_rrrr (FpuOPRRRR.FmaddD) $F64 frm rs1 rs2 rs3))
1365
+
1366
+ ;; Helper for emitting the `fmv.x.w` instruction.
1367
+ (decl rv_fmvxw (FReg) XReg)
1368
+ (rule (rv_fmvxw r) (fpu_rr (FpuOPRR.FmvXW) $I32 (FRM.RNE) r))
1369
+
1370
+ ;; Helper for emitting the `fmv.x.d` instruction.
1371
+ (decl rv_fmvxd (FReg) XReg)
1372
+ (rule (rv_fmvxd r) (fpu_rr (FpuOPRR.FmvXD) $I64 (FRM.RNE) r))
1373
+
1374
+ ;; Helper for emitting the `fmv.w.x` instruction.
1375
+ (decl rv_fmvwx (XReg) FReg)
1376
+ (rule (rv_fmvwx r) (fpu_rr (FpuOPRR.FmvWX) $F32 (FRM.RNE) r))
1377
+
1378
+ ;; Helper for emitting the `fmv.d.x` instruction.
1379
+ (decl rv_fmvdx (XReg) FReg)
1380
+ (rule (rv_fmvdx r) (fpu_rr (FpuOPRR.FmvDX) $F64 (FRM.RNE) r))
1381
+
1382
+ ;; Helper for emitting the `fcvt.d.s` ("Float Convert Double to Single") instruction.
1383
+ (decl rv_fcvtds (FReg) FReg)
1384
+ (rule (rv_fcvtds rs1) (fpu_rr (FpuOPRR.FcvtDS) $F32 (FRM.RNE) rs1))
1385
+
1386
+ ;; Helper for emitting the `fcvt.s.d` ("Float Convert Single to Double") instruction.
1387
+ (decl rv_fcvtsd (FRM FReg) FReg)
1388
+ (rule (rv_fcvtsd frm rs1) (fpu_rr (FpuOPRR.FcvtSD) $F64 frm rs1))
1389
+
1390
+ ;; Helper for emitting the `fcvt.s.w` instruction.
1391
+ (decl rv_fcvtsw (FRM XReg) FReg)
1392
+ (rule (rv_fcvtsw frm rs1) (fpu_rr (FpuOPRR.FcvtSw) $F32 frm rs1))
1393
+
1394
+ ;; Helper for emitting the `fcvt.s.wu` instruction.
1395
+ (decl rv_fcvtswu (FRM XReg) FReg)
1396
+ (rule (rv_fcvtswu frm rs1) (fpu_rr (FpuOPRR.FcvtSwU) $F32 frm rs1))
1397
+
1398
+ ;; Helper for emitting the `fcvt.d.w` instruction.
1399
+ (decl rv_fcvtdw (XReg) FReg)
1400
+ (rule (rv_fcvtdw rs1) (fpu_rr (FpuOPRR.FcvtDW) $F32 (FRM.RNE) rs1))
1401
+
1402
+ ;; Helper for emitting the `fcvt.d.wu` instruction.
1403
+ (decl rv_fcvtdwu (XReg) FReg)
1404
+ (rule (rv_fcvtdwu rs1) (fpu_rr (FpuOPRR.FcvtDWU) $F32 (FRM.RNE) rs1))
1405
+
1406
+ ;; Helper for emitting the `fcvt.s.l` instruction.
1407
+ (decl rv_fcvtsl (FRM XReg) FReg)
1408
+ (rule (rv_fcvtsl frm rs1) (fpu_rr (FpuOPRR.FcvtSL) $F32 frm rs1))
1409
+
1410
+ ;; Helper for emitting the `fcvt.s.lu` instruction.
1411
+ (decl rv_fcvtslu (FRM XReg) FReg)
1412
+ (rule (rv_fcvtslu frm rs1) (fpu_rr (FpuOPRR.FcvtSLU) $F32 frm rs1))
1413
+
1414
+ ;; Helper for emitting the `fcvt.d.l` instruction.
1415
+ (decl rv_fcvtdl (FRM XReg) FReg)
1416
+ (rule (rv_fcvtdl frm rs1) (fpu_rr (FpuOPRR.FcvtDL) $F32 frm rs1))
1417
+
1418
+ ;; Helper for emitting the `fcvt.d.lu` instruction.
1419
+ (decl rv_fcvtdlu (FRM XReg) FReg)
1420
+ (rule (rv_fcvtdlu frm rs1) (fpu_rr (FpuOPRR.FcvtDLu) $F32 frm rs1))
1421
+
1422
+ ;; Helper for emitting the `fcvt.w.s` instruction.
1423
+ (decl rv_fcvtws (FRM FReg) XReg)
1424
+ (rule (rv_fcvtws frm rs1) (fpu_rr (FpuOPRR.FcvtWS) $I64 frm rs1))
1425
+
1426
+ ;; Helper for emitting the `fcvt.l.s` instruction.
1427
+ (decl rv_fcvtls (FRM FReg) XReg)
1428
+ (rule (rv_fcvtls frm rs1) (fpu_rr (FpuOPRR.FcvtLS) $I64 frm rs1))
1429
+
1430
+ ;; Helper for emitting the `fcvt.wu.s` instruction.
1431
+ (decl rv_fcvtwus (FRM FReg) XReg)
1432
+ (rule (rv_fcvtwus frm rs1) (fpu_rr (FpuOPRR.FcvtWuS) $I64 frm rs1))
1433
+
1434
+ ;; Helper for emitting the `fcvt.lu.s` instruction.
1435
+ (decl rv_fcvtlus (FRM FReg) XReg)
1436
+ (rule (rv_fcvtlus frm rs1) (fpu_rr (FpuOPRR.FcvtLuS) $I64 frm rs1))
1437
+
1438
+ ;; Helper for emitting the `fcvt.w.d` instruction.
1439
+ (decl rv_fcvtwd (FRM FReg) XReg)
1440
+ (rule (rv_fcvtwd frm rs1) (fpu_rr (FpuOPRR.FcvtWD) $I64 frm rs1))
1441
+
1442
+ ;; Helper for emitting the `fcvt.l.d` instruction.
1443
+ (decl rv_fcvtld (FRM FReg) XReg)
1444
+ (rule (rv_fcvtld frm rs1) (fpu_rr (FpuOPRR.FcvtLD) $I64 frm rs1))
1445
+
1446
+ ;; Helper for emitting the `fcvt.wu.d` instruction.
1447
+ (decl rv_fcvtwud (FRM FReg) XReg)
1448
+ (rule (rv_fcvtwud frm rs1) (fpu_rr (FpuOPRR.FcvtWuD) $I64 frm rs1))
1449
+
1450
+ ;; Helper for emitting the `fcvt.lu.d` instruction.
1451
+ (decl rv_fcvtlud (FRM FReg) XReg)
1452
+ (rule (rv_fcvtlud frm rs1) (fpu_rr (FpuOPRR.FcvtLuD) $I64 frm rs1))
1453
+
1454
+ ;; Helper for emitting the `fcvt.w.*` instructions.
1455
+ (decl rv_fcvtw (Type FRM FReg) XReg)
1456
+ (rule (rv_fcvtw $F32 frm rs1) (rv_fcvtws frm rs1))
1457
+ (rule (rv_fcvtw $F64 frm rs1) (rv_fcvtwd frm rs1))
1458
+
1459
+ ;; Helper for emitting the `fcvt.l.*` instructions.
1460
+ (decl rv_fcvtl (Type FRM FReg) XReg)
1461
+ (rule (rv_fcvtl $F32 frm rs1) (rv_fcvtls frm rs1))
1462
+ (rule (rv_fcvtl $F64 frm rs1) (rv_fcvtld frm rs1))
1463
+
1464
+ ;; Helper for emitting the `fcvt.wu.*` instructions.
1465
+ (decl rv_fcvtwu (Type FRM FReg) XReg)
1466
+ (rule (rv_fcvtwu $F32 frm rs1) (rv_fcvtwus frm rs1))
1467
+ (rule (rv_fcvtwu $F64 frm rs1) (rv_fcvtwud frm rs1))
1468
+
1469
+ ;; Helper for emitting the `fcvt.lu.*` instructions.
1470
+ (decl rv_fcvtlu (Type FRM FReg) XReg)
1471
+ (rule (rv_fcvtlu $F32 frm rs1) (rv_fcvtlus frm rs1))
1472
+ (rule (rv_fcvtlu $F64 frm rs1) (rv_fcvtlud frm rs1))
1473
+
1474
+ ;; Helper for emitting the `fsgnj` ("Floating Point Sign Injection") instruction.
1475
+ ;; The output of this instruction is `rs1` with the sign bit from `rs2`
1476
+ ;; This implements the `copysign` operation
1477
+ (decl rv_fsgnj (Type FReg FReg) FReg)
1478
+ (rule (rv_fsgnj $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FsgnjS) $F32 (FRM.RNE) rs1 rs2))
1479
+ (rule (rv_fsgnj $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FsgnjD) $F64 (FRM.RNE) rs1 rs2))
1480
+
1481
+ ;; Helper for emitting the `fsgnjn` ("Floating Point Sign Injection Negated") instruction.
1482
+ ;; The output of this instruction is `rs1` with the negated sign bit from `rs2`
1483
+ ;; When `rs1 == rs2` this implements the `neg` operation
1484
+ (decl rv_fsgnjn (Type FReg FReg) FReg)
1485
+ (rule (rv_fsgnjn $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FsgnjnS) $F32 (FRM.RTZ) rs1 rs2))
1486
+ (rule (rv_fsgnjn $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FsgnjnD) $F64 (FRM.RTZ) rs1 rs2))
1487
+
1488
+ ;; Helper for emitting the `fneg` ("Floating Point Negate") instruction.
1489
+ ;; This instruction is a mnemonic for `fsgnjn rd, rs1, rs1`
1490
+ (decl rv_fneg (Type FReg) FReg)
1491
+ (rule (rv_fneg ty rs1) (rv_fsgnjn ty rs1 rs1))
1492
+
1493
+ ;; Helper for emitting the `fsgnjx` ("Floating Point Sign Injection Exclusive") instruction.
1494
+ ;; The output of this instruction is `rs1` with the XOR of the sign bits from `rs1` and `rs2`.
1495
+ ;; When `rs1 == rs2` this implements `fabs`
1496
+ (decl rv_fsgnjx (Type FReg FReg) FReg)
1497
+ (rule (rv_fsgnjx $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FsgnjxS) $F32 (FRM.RDN) rs1 rs2))
1498
+ (rule (rv_fsgnjx $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FsgnjxD) $F64 (FRM.RDN) rs1 rs2))
1499
+
1500
+ ;; Helper for emitting the `fabs` ("Floating Point Absolute") instruction.
1501
+ ;; This instruction is a mnemonic for `fsgnjx rd, rs1, rs1`
1502
+ (decl rv_fabs (Type FReg) FReg)
1503
+ (rule (rv_fabs ty rs1) (rv_fsgnjx ty rs1 rs1))
1504
+
1505
+ ;; Helper for emitting the `feq` ("Float Equal") instruction.
1506
+ (decl rv_feq (Type FReg FReg) XReg)
1507
+ (rule (rv_feq $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FeqS) $I64 (FRM.RDN) rs1 rs2))
1508
+ (rule (rv_feq $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FeqD) $I64 (FRM.RDN) rs1 rs2))
1509
+
1510
+ ;; Helper for emitting the `flt` ("Float Less Than") instruction.
1511
+ (decl rv_flt (Type FReg FReg) XReg)
1512
+ (rule (rv_flt $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FltS) $I64 (FRM.RTZ) rs1 rs2))
1513
+ (rule (rv_flt $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FltD) $I64 (FRM.RTZ) rs1 rs2))
1514
+
1515
+ ;; Helper for emitting the `fle` ("Float Less Than or Equal") instruction.
1516
+ (decl rv_fle (Type FReg FReg) XReg)
1517
+ (rule (rv_fle $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FleS) $I64 (FRM.RNE) rs1 rs2))
1518
+ (rule (rv_fle $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FleD) $I64 (FRM.RNE) rs1 rs2))
1519
+
1520
+ ;; Helper for emitting the `fgt` ("Float Greater Than") instruction.
1521
+ ;; Note: The arguments are reversed
1522
+ (decl rv_fgt (Type FReg FReg) XReg)
1523
+ (rule (rv_fgt ty rs1 rs2) (rv_flt ty rs2 rs1))
1524
+
1525
+ ;; Helper for emitting the `fge` ("Float Greater Than or Equal") instruction.
1526
+ ;; Note: The arguments are reversed
1527
+ (decl rv_fge (Type FReg FReg) XReg)
1528
+ (rule (rv_fge ty rs1 rs2) (rv_fle ty rs2 rs1))
1529
+
1530
+ ;; Helper for emitting the `fmin` instruction.
1531
+ (decl rv_fmin (Type FReg FReg) FReg)
1532
+ (rule (rv_fmin $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FminS) $F32 (FRM.RNE) rs1 rs2))
1533
+ (rule (rv_fmin $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FminD) $F64 (FRM.RNE) rs1 rs2))
1534
+
1535
+ ;; Helper for emitting the `fmax` instruction.
1536
+ (decl rv_fmax (Type FReg FReg) FReg)
1537
+ (rule (rv_fmax $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FmaxS) $F32 (FRM.RTZ) rs1 rs2))
1538
+ (rule (rv_fmax $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FmaxD) $F64 (FRM.RTZ) rs1 rs2))
1539
+
1540
+ ;; `Zfa` Extension Instructions
1541
+
1542
+ ;; Helper for emitting the `fminm` instruction.
1543
+ (decl rv_fminm (Type FReg FReg) FReg)
1544
+ (rule (rv_fminm $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FminmS) $F32 (FRM.RDN) rs1 rs2))
1545
+ (rule (rv_fminm $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FminmD) $F64 (FRM.RDN) rs1 rs2))
1546
+
1547
+ ;; Helper for emitting the `fmaxm` instruction.
1548
+ (decl rv_fmaxm (Type FReg FReg) FReg)
1549
+ (rule (rv_fmaxm $F32 rs1 rs2) (fpu_rrr (FpuOPRRR.FmaxmS) $F32 (FRM.RUP) rs1 rs2))
1550
+ (rule (rv_fmaxm $F64 rs1 rs2) (fpu_rrr (FpuOPRRR.FmaxmD) $F64 (FRM.RUP) rs1 rs2))
1551
+
1552
+ ;; `Zba` Extension Instructions
1553
+
1554
+ ;; Helper for emitting the `adduw` ("Add Unsigned Word") instruction.
1555
+ ;; rd ← uext32(rs1) + uext32(rs2)
1556
+ (decl rv_adduw (XReg XReg) XReg)
1557
+ (rule (rv_adduw rs1 rs2)
1558
+ (alu_rrr (AluOPRRR.Adduw) rs1 rs2))
1559
+
1560
+ ;; Helper for emitting the `zext.w` ("Zero Extend Word") instruction.
1561
+ ;; This instruction is a mnemonic for `adduw rd, rs1, zero`.
1562
+ ;; rd ← uext32(rs1)
1563
+ (decl rv_zextw (XReg) XReg)
1564
+ (rule (rv_zextw rs1)
1565
+ (rv_adduw rs1 (zero_reg)))
1566
+
1567
+ ;; Helper for emitting the `slli.uw` ("Shift Left Logical Immediate Unsigned Word") instruction.
1568
+ ;; rd ← uext32(rs1) << imm
1569
+ (decl rv_slliuw (XReg Imm12) XReg)
1570
+ (rule (rv_slliuw rs1 imm)
1571
+ (alu_rr_imm12 (AluOPRRI.SlliUw) rs1 imm))
1572
+
1573
+
1574
+ ;; `Zbb` Extension Instructions
1575
+
1576
+ ;; Helper for emitting the `andn` ("And Negated") instruction.
1577
+ ;; rd ← rs1 ∧ ~(rs2)
1578
+ (decl rv_andn (XReg XReg) XReg)
1579
+ (rule (rv_andn rs1 rs2)
1580
+ (if-let $true (has_zbb))
1581
+ (alu_rrr (AluOPRRR.Andn) rs1 rs2))
1582
+ (rule (rv_andn rs1 rs2)
1583
+ (if-let $false (has_zbb))
1584
+ (rv_and rs1 (rv_not rs2)))
1585
+
1586
+ ;; Helper for emitting the `orn` ("Or Negated") instruction.
1587
+ ;; rd ← rs1 ∨ ~(rs2)
1588
+ (decl rv_orn (XReg XReg) XReg)
1589
+ (rule (rv_orn rs1 rs2)
1590
+ (alu_rrr (AluOPRRR.Orn) rs1 rs2))
1591
+
1592
+ ;; Helper for emitting the `xnor` ("Exclusive NOR") instruction.
1593
+ ;; rd ← ~(rs1 ^ rs2)
1594
+ (decl rv_xnor (XReg XReg) XReg)
1595
+ (rule (rv_xnor rs1 rs2)
1596
+ (alu_rrr (AluOPRRR.Xnor) rs1 rs2))
1597
+
1598
+ ;; Helper for emitting the `clz` ("Count Leading Zero Bits") instruction.
1599
+ (decl rv_clz (XReg) XReg)
1600
+ (rule (rv_clz rs1)
1601
+ (alu_rr_funct12 (AluOPRRI.Clz) rs1))
1602
+
1603
+ ;; Helper for emitting the `clzw` ("Count Leading Zero Bits in Word") instruction.
1604
+ (decl rv_clzw (XReg) XReg)
1605
+ (rule (rv_clzw rs1)
1606
+ (alu_rr_funct12 (AluOPRRI.Clzw) rs1))
1607
+
1608
+ ;; Helper for emitting the `ctz` ("Count Trailing Zero Bits") instruction.
1609
+ (decl rv_ctz (XReg) XReg)
1610
+ (rule (rv_ctz rs1)
1611
+ (alu_rr_funct12 (AluOPRRI.Ctz) rs1))
1612
+
1613
+ ;; Helper for emitting the `ctzw` ("Count Trailing Zero Bits in Word") instruction.
1614
+ (decl rv_ctzw (XReg) XReg)
1615
+ (rule (rv_ctzw rs1)
1616
+ (alu_rr_funct12 (AluOPRRI.Ctzw) rs1))
1617
+
1618
+ ;; Helper for emitting the `cpop` ("Count Population") instruction.
1619
+ (decl rv_cpop (XReg) XReg)
1620
+ (rule (rv_cpop rs1)
1621
+ (alu_rr_funct12 (AluOPRRI.Cpop) rs1))
1622
+
1623
+ ;; Helper for emitting the `cpopw` ("Count Population") instruction.
1624
+ (decl rv_cpopw (XReg) XReg)
1625
+ (rule (rv_cpopw rs1)
1626
+ (alu_rr_funct12 (AluOPRRI.Cpopw) rs1))
1627
+
1628
+ ;; Helper for emitting the `max` instruction.
1629
+ (decl rv_max (XReg XReg) XReg)
1630
+ (rule (rv_max rs1 rs2)
1631
+ (alu_rrr (AluOPRRR.Max) rs1 rs2))
1632
+
1633
+ ;; Helper for emitting the `maxu` instruction.
1634
+ (decl rv_maxu (XReg XReg) XReg)
1635
+ (rule (rv_maxu rs1 rs2)
1636
+ (alu_rrr (AluOPRRR.Maxu) rs1 rs2))
1637
+
1638
+ ;; Helper for emitting the `min` instruction.
1639
+ (decl rv_min (XReg XReg) XReg)
1640
+ (rule (rv_min rs1 rs2)
1641
+ (alu_rrr (AluOPRRR.Min) rs1 rs2))
1642
+
1643
+ ;; Helper for emitting the `minu` instruction.
1644
+ (decl rv_minu (XReg XReg) XReg)
1645
+ (rule (rv_minu rs1 rs2)
1646
+ (alu_rrr (AluOPRRR.Minu) rs1 rs2))
1647
+
1648
+ ;; Helper for emitting the `sext.b` instruction.
1649
+ (decl rv_sextb (XReg) XReg)
1650
+ (rule (rv_sextb rs1)
1651
+ (alu_rr_imm12 (AluOPRRI.Sextb) rs1 (imm12_const 0)))
1652
+
1653
+ ;; Helper for emitting the `sext.h` instruction.
1654
+ (decl rv_sexth (XReg) XReg)
1655
+ (rule (rv_sexth rs1)
1656
+ (alu_rr_imm12 (AluOPRRI.Sexth) rs1 (imm12_const 0)))
1657
+
1658
+ ;; Helper for emitting the `zext.h` instruction.
1659
+ (decl rv_zexth (XReg) XReg)
1660
+ (rule (rv_zexth rs1)
1661
+ (alu_rr_imm12 (AluOPRRI.Zexth) rs1 (imm12_const 0)))
1662
+
1663
+ ;; Helper for emitting the `rol` ("Rotate Left") instruction.
1664
+ (decl rv_rol (XReg XReg) XReg)
1665
+ (rule (rv_rol rs1 rs2)
1666
+ (alu_rrr (AluOPRRR.Rol) rs1 rs2))
1667
+
1668
+ ;; Helper for emitting the `rolw` ("Rotate Left Word") instruction.
1669
+ (decl rv_rolw (XReg XReg) XReg)
1670
+ (rule (rv_rolw rs1 rs2)
1671
+ (alu_rrr (AluOPRRR.Rolw) rs1 rs2))
1672
+
1673
+ ;; Helper for emitting the `ror` ("Rotate Right") instruction.
1674
+ (decl rv_ror (XReg XReg) XReg)
1675
+ (rule (rv_ror rs1 rs2)
1676
+ (alu_rrr (AluOPRRR.Ror) rs1 rs2))
1677
+
1678
+ ;; Helper for emitting the `rorw` ("Rotate Right Word") instruction.
1679
+ (decl rv_rorw (XReg XReg) XReg)
1680
+ (rule (rv_rorw rs1 rs2)
1681
+ (alu_rrr (AluOPRRR.Rorw) rs1 rs2))
1682
+
1683
+ ;; Helper for emitting the `rori` ("Rotate Right") instruction.
1684
+ (decl rv_rori (XReg Imm12) XReg)
1685
+ (rule (rv_rori rs1 rs2)
1686
+ (alu_rr_imm12 (AluOPRRI.Rori) rs1 rs2))
1687
+
1688
+ ;; Helper for emitting the `roriw` ("Rotate Right Word") instruction.
1689
+ (decl rv_roriw (XReg Imm12) XReg)
1690
+ (rule (rv_roriw rs1 rs2)
1691
+ (alu_rr_imm12 (AluOPRRI.Roriw) rs1 rs2))
1692
+
1693
+ ;; Helper for emitting the `rev8` ("Byte Reverse") instruction.
1694
+ (decl rv_rev8 (XReg) XReg)
1695
+ (rule (rv_rev8 rs1)
1696
+ (alu_rr_funct12 (AluOPRRI.Rev8) rs1))
1697
+
1698
+ ;; Helper for emitting the `brev8` ("Bit Reverse Inside Bytes") instruction.
1699
+ ;; TODO: This instruction is mentioned in some older versions of the
1700
+ ;; spec, but has since disappeared, we should follow up on this.
1701
+ ;; It probably was renamed to `rev.b` which seems to be the closest match.
1702
+ (decl rv_brev8 (XReg) XReg)
1703
+ (rule (rv_brev8 rs1)
1704
+ (alu_rr_funct12 (AluOPRRI.Brev8) rs1))
1705
+
1706
+ ;; `Zbs` Extension Instructions
1707
+
1708
+ (decl rv_bclr (XReg XReg) XReg)
1709
+ (rule (rv_bclr rs1 rs2)
1710
+ (alu_rrr (AluOPRRR.Bclr) rs1 rs2))
1711
+
1712
+ (decl rv_bclri (XReg Imm12) XReg)
1713
+ (rule (rv_bclri rs1 imm)
1714
+ (alu_rr_imm12 (AluOPRRI.Bclri) rs1 imm))
1715
+
1716
+ (decl rv_bext (XReg XReg) XReg)
1717
+ (rule (rv_bext rs1 rs2)
1718
+ (alu_rrr (AluOPRRR.Bext) rs1 rs2))
1719
+
1720
+ (decl rv_bexti (XReg Imm12) XReg)
1721
+ (rule (rv_bexti rs1 imm)
1722
+ (alu_rr_imm12 (AluOPRRI.Bexti) rs1 imm))
1723
+
1724
+ (decl rv_binv (XReg XReg) XReg)
1725
+ (rule (rv_binv rs1 rs2)
1726
+ (alu_rrr (AluOPRRR.Binv) rs1 rs2))
1727
+
1728
+ (decl rv_binvi (XReg Imm12) XReg)
1729
+ (rule (rv_binvi rs1 imm)
1730
+ (alu_rr_imm12 (AluOPRRI.Binvi) rs1 imm))
1731
+
1732
+ (decl rv_bset (XReg XReg) XReg)
1733
+ (rule (rv_bset rs1 rs2)
1734
+ (alu_rrr (AluOPRRR.Bset) rs1 rs2))
1735
+
1736
+ ;; Helper for emitting the `bseti` ("Single-Bit Set Immediate") instruction.
1737
+ (decl rv_bseti (XReg Imm12) XReg)
1738
+ (rule (rv_bseti rs1 imm)
1739
+ (alu_rr_imm12 (AluOPRRI.Bseti) rs1 imm))
1740
+
1741
+ ;; `Zbkb` Extension Instructions
1742
+
1743
+ ;; Helper for emitting the `pack` ("Pack low halves of registers") instruction.
1744
+ (decl rv_pack (XReg XReg) XReg)
1745
+ (rule (rv_pack rs1 rs2)
1746
+ (alu_rrr (AluOPRRR.Pack) rs1 rs2))
1747
+
1748
+ ;; Helper for emitting the `packw` ("Pack low 16-bits of registers") instruction.
1749
+ (decl rv_packw (XReg XReg) XReg)
1750
+ (rule (rv_packw rs1 rs2)
1751
+ (alu_rrr (AluOPRRR.Packw) rs1 rs2))
1752
+
1753
+
1754
+ ;; `Zicsr` Extension Instructions
1755
+
1756
+ ;; Helper for emitting the `csrrwi` instruction.
1757
+ (decl rv_csrrwi (CSR UImm5) XReg)
1758
+ (rule (rv_csrrwi csr imm)
1759
+ (csr_imm (CsrImmOP.CsrRWI) csr imm))
1760
+
1761
+ ;; This is a special case of `csrrwi` when the CSR is the `frm` CSR.
1762
+ (decl rv_fsrmi (FRM) XReg)
1763
+ (rule (rv_fsrmi frm) (rv_csrrwi (CSR.Frm) frm))
1764
+
1765
+
1766
+ ;; Helper for emitting the `csrw` instruction. This is a special case of
1767
+ ;; `csrrw` where the destination register is always `x0`.
1768
+ (decl rv_csrw (CSR XReg) Unit)
1769
+ (rule (rv_csrw csr rs)
1770
+ (csr_reg_dst_zero (CsrRegOP.CsrRW) csr rs))
1771
+
1772
+ ;; This is a special case of `csrw` when the CSR is the `frm` CSR.
1773
+ (decl rv_fsrm (XReg) Unit)
1774
+ (rule (rv_fsrm rs) (rv_csrw (CSR.Frm) rs))
1775
+
1776
+
1777
+
1778
+
1779
+
1780
+
1781
+ ;; Helper for generating a i64 from a pair of Imm20 and Imm12 constants
1782
+ (decl i64_generate_imm (Imm20 Imm12) i64)
1783
+ (extern extractor i64_generate_imm i64_generate_imm)
1784
+
1785
+ ;; Helper for generating a i64 from a shift of a Imm20 constant with LUI
1786
+ (decl i64_shift_for_lui (u64 Imm12) i64)
1787
+ (extern extractor i64_shift_for_lui i64_shift_for_lui)
1788
+
1789
+ ;; Helper for generating a i64 from a shift of a Imm20 constant
1790
+ (decl i64_shift (i64 Imm12) i64)
1791
+ (extern extractor i64_shift i64_shift)
1792
+
1793
+ ;; Immediate Loading rules
1794
+ ;; TODO: Loading the zero reg directly causes a bunch of regalloc errors, we should look into it.
1795
+ ;; TODO: Load floats using `fld` instead of `ld`
1796
+ (decl imm (Type u64) Reg)
1797
+
1798
+ ;; Refs get loaded as integers.
1799
+ (rule 5 (imm $R32 c) (imm $I32 c))
1800
+ (rule 5 (imm $R64 c) (imm $I64 c))
1801
+
1802
+ ;; Floats get loaded as integers and then moved into an F register.
1803
+ (rule 5 (imm $F32 c) (gen_bitcast (imm $I32 c) $I32 $F32))
1804
+ (rule 5 (imm $F64 c) (gen_bitcast (imm $I64 c) $I64 $F64))
1805
+
1806
+ ;; Try to match just an imm12
1807
+ (rule 4 (imm (ty_int ty) c)
1808
+ (if-let (i64_generate_imm (imm20_is_zero) imm12) (i64_sextend_u64 ty c))
1809
+ (rv_addi (zero_reg) imm12))
1810
+
1811
+ ;; We can also try to load using a single LUI.
1812
+ ;; LUI takes a 20 bit immediate, places it on bits 13 to 32 of the register.
1813
+ ;; In RV64 this value is then sign extended to 64bits.
1814
+ (rule 3 (imm (ty_int ty) c)
1815
+ (if-let (i64_generate_imm imm20 (imm12_is_zero)) (i64_sextend_u64 ty c))
1816
+ (rv_lui imm20))
1817
+
1818
+ ;; We can combo addi + lui to represent all 32-bit immediates
1819
+ ;; And some 64-bit immediates as well.
1820
+ (rule 2 (imm (ty_int ty) c)
1821
+ (if-let (i64_generate_imm imm20 imm12) (i64_sextend_u64 ty c))
1822
+ (rv_addi (rv_lui imm20) imm12))
1823
+
1824
+ ;; If the non-zero bits of the immediate fit in 20 bits, we can use LUI + shift
1825
+ (rule 1 (imm (ty_int ty) c)
1826
+ (if-let (i64_shift_for_lui (imm20_from_u64 base) shift) (i64_sextend_u64 ty c))
1827
+ (rv_slli (rv_lui base) shift))
1828
+
1829
+ ;; Combine one of the above rules with a shift-left if possible, This chops off
1830
+ ;; all trailing zeros from the input constant and then attempts if the resulting
1831
+ ;; constant can itself use one of the above rules via the `i64_generate_imm`
1832
+ ;; matcher. This will then recurse on the above rules to materialize a smaller
1833
+ ;; constant which is then shifted left to create the desired constant.
1834
+ (rule 0 (imm (ty_int ty) c)
1835
+ (if-let (i64_shift c_shifted shift) (i64_sextend_u64 ty c)) ;; constant to make
1836
+ (if-let (i64_generate_imm _ _) c_shifted) ;; can the smaller constant be made?
1837
+ (rv_slli (imm ty (i64_as_u64 c_shifted)) shift))
1838
+
1839
+ ;; Otherwise we fall back to loading the immediate from the constant pool.
1840
+ (rule -1 (imm (ty_int ty) c)
1841
+ (gen_load
1842
+ (gen_const_amode (emit_u64_le_const c))
1843
+ (LoadOP.Ld)
1844
+ (mem_flags_trusted)))
1845
+
1846
+ ;; Imm12 Rules
1847
+
1848
+ (decl pure imm12_zero () Imm12)
1849
+ (rule (imm12_zero) (imm12_const 0))
1850
+
1851
+ (decl pure imm12_const (i32) Imm12)
1852
+ (extern constructor imm12_const imm12_const)
1853
+
1854
+ (decl load_imm12 (i32) Reg)
1855
+ (rule
1856
+ (load_imm12 x)
1857
+ (rv_addi (zero_reg) (imm12_const x)))
1858
+
1859
+ ;; for load immediate
1860
+ (decl imm_from_bits (u64) Imm12)
1861
+ (extern constructor imm_from_bits imm_from_bits)
1862
+
1863
+ (decl imm_from_neg_bits (i64) Imm12)
1864
+ (extern constructor imm_from_neg_bits imm_from_neg_bits)
1865
+
1866
+ (decl imm12_const_add (i32 i32) Imm12)
1867
+ (extern constructor imm12_const_add imm12_const_add)
1868
+
1869
+ ;; Performs a fallible add of the `Imm12` value and the 32-bit value provided.
1870
+ (decl pure partial imm12_add (Imm12 i32) Imm12)
1871
+ (extern constructor imm12_add imm12_add)
1872
+
1873
+ (decl imm12_and (Imm12 u64) Imm12)
1874
+ (extern constructor imm12_and imm12_and)
1875
+
1876
+ ;; Imm12 Extractors
1877
+
1878
+ ;; Helper to go directly from a `Value`, when it's an `iconst`, to an `Imm12`.
1879
+ (decl imm12_from_value (Imm12) Value)
1880
+ (extractor (imm12_from_value n) (i64_from_iconst (imm12_from_i64 n)))
1881
+
1882
+ ;; Conceptually the same as `imm12_from_value`, but tries negating the constant
1883
+ ;; value (first sign-extending to handle narrow widths).
1884
+ (decl pure partial imm12_from_negated_value (Value) Imm12)
1885
+ (rule
1886
+ (imm12_from_negated_value (has_type ty (iconst n)))
1887
+ (if-let (imm12_from_u64 imm) (i64_as_u64 (i64_neg (i64_sextend_imm64 ty n))))
1888
+ imm)
1889
+
1890
+ (decl imm12_from_u64 (Imm12) u64)
1891
+ (extern extractor imm12_from_u64 imm12_from_u64)
1892
+
1893
+ (decl imm12_from_i64 (Imm12) i64)
1894
+ (extern extractor imm12_from_i64 imm12_from_i64)
1895
+
1896
+ (decl pure partial u64_to_imm12 (u64) Imm12)
1897
+ (rule (u64_to_imm12 (imm12_from_u64 n)) n)
1898
+
1899
+ (decl pure imm12_is_zero () Imm12)
1900
+ (extern extractor imm12_is_zero imm12_is_zero)
1901
+
1902
+ ;; Imm20
1903
+
1904
+ ;; Extractor that matches if a Imm20 is zero
1905
+ (decl pure imm20_is_zero () Imm20)
1906
+ (extern extractor imm20_is_zero imm20_is_zero)
1907
+
1908
+ (decl imm20_from_u64 (Imm20) u64)
1909
+ (extern extractor imm20_from_u64 imm20_from_u64)
1910
+
1911
+ (decl imm20_from_i64 (Imm20) i64)
1912
+ (extern extractor imm20_from_i64 imm20_from_i64)
1913
+
1914
+
1915
+ ;; Imm5 Extractors
1916
+
1917
+ (decl imm5_from_u64 (Imm5) u64)
1918
+ (extern extractor imm5_from_u64 imm5_from_u64)
1919
+
1920
+ (decl imm5_from_i64 (Imm5) i64)
1921
+ (extern extractor imm5_from_i64 imm5_from_i64)
1922
+
1923
+ ;; Construct a Imm5 from an i8
1924
+ (decl pure partial i8_to_imm5 (i8) Imm5)
1925
+ (extern constructor i8_to_imm5 i8_to_imm5)
1926
+
1927
+ ;; Helper to go directly from a `Value` to an `Imm5`.
1928
+ (decl imm5_from_value (Imm5) Value)
1929
+ (extractor (imm5_from_value n) (i64_from_iconst (imm5_from_i64 n)))
1930
+
1931
+ ;; Like imm5_from_value, but first negates the `Value`.
1932
+ (decl pure partial imm5_from_negated_value (Value) Imm5)
1933
+ (rule (imm5_from_negated_value (has_type ty (iconst n)))
1934
+ (if-let (imm5_from_i64 imm) (i64_neg (i64_sextend_imm64 ty n)))
1935
+ imm)
1936
+
1937
+ ;; Constructor that matches a `Value` equivalent to a replicated Imm5 on all lanes.
1938
+ (decl pure partial replicated_imm5 (Value) Imm5)
1939
+ (rule (replicated_imm5 (splat (imm5_from_value n))) n)
1940
+ (rule (replicated_imm5 (vconst (u128_from_constant n128)))
1941
+ (if-let (u128_replicated_u64 n64) n128)
1942
+ (if-let (u64_replicated_u32 n32) n64)
1943
+ (if-let (u32_replicated_u16 n16) n32)
1944
+ (if-let (u16_replicated_u8 n8) n16)
1945
+ (if-let n (i8_to_imm5 (u8_as_i8 n8)))
1946
+ n)
1947
+
1948
+ ;; Like replicated_imm5, but first negates the `Value`.
1949
+ (decl pure partial negated_replicated_imm5 (Value) Imm5)
1950
+ (rule (negated_replicated_imm5 (splat n))
1951
+ (if-let imm5 (imm5_from_negated_value n))
1952
+ imm5)
1953
+ (rule (negated_replicated_imm5 (vconst (u128_from_constant n128)))
1954
+ (if-let (u128_replicated_u64 n64) n128)
1955
+ (if-let (u64_replicated_u32 n32) n64)
1956
+ (if-let (u32_replicated_u16 n16) n32)
1957
+ (if-let (u16_replicated_u8 n8) n16)
1958
+ (if-let n (i8_to_imm5 (i8_neg (u8_as_i8 n8))))
1959
+ n)
1960
+
1961
+ ;; UImm5 Helpers
1962
+
1963
+ ;; Constructor that matches a `Value` equivalent to a replicated UImm5 on all lanes.
1964
+ (decl pure partial replicated_uimm5 (Value) UImm5)
1965
+ (rule (replicated_uimm5 (splat (uimm5_from_value n))) n)
1966
+ (rule 1 (replicated_uimm5 (vconst (u128_from_constant n128)))
1967
+ (if-let (u128_replicated_u64 n64) n128)
1968
+ (if-let (u64_replicated_u32 n32) n64)
1969
+ (if-let (u32_replicated_u16 n16) n32)
1970
+ (if-let (u16_replicated_u8 n8) n16)
1971
+ (if-let (uimm5_from_u8 n) n8)
1972
+ n)
1973
+
1974
+ ;; Helper to go directly from a `Value`, when it's an `iconst`, to an `UImm5`.
1975
+ (decl uimm5_from_value (UImm5) Value)
1976
+ (extractor (uimm5_from_value n)
1977
+ (iconst (u64_from_imm64 (uimm5_from_u64 n))))
1978
+
1979
+ ;; Extract a `UImm5` from an `u8`.
1980
+ (decl pure partial uimm5_from_u8 (UImm5) u8)
1981
+ (extern extractor uimm5_from_u8 uimm5_from_u8)
1982
+
1983
+ ;; Extract a `UImm5` from an `u64`.
1984
+ (decl pure partial uimm5_from_u64 (UImm5) u64)
1985
+ (extern extractor uimm5_from_u64 uimm5_from_u64)
1986
+
1987
+ ;; Convert a `u64` into an `UImm5`
1988
+ (decl pure partial u64_to_uimm5 (u64) UImm5)
1989
+ (rule (u64_to_uimm5 (uimm5_from_u64 n)) n)
1990
+
1991
+ (decl uimm5_bitcast_to_imm5 (UImm5) Imm5)
1992
+ (extern constructor uimm5_bitcast_to_imm5 uimm5_bitcast_to_imm5)
1993
+
1994
+ ;; Float Helpers
1995
+
1996
+ ;; Returns the bitpattern of the Canonical NaN for the given type.
1997
+ (decl pure canonical_nan_u64 (Type) u64)
1998
+ (rule (canonical_nan_u64 $F32) 0x7fc00000)
1999
+ (rule (canonical_nan_u64 $F64) 0x7ff8000000000000)
2000
+
2001
+ ;; Helper for emitting `MInst.FpuRR` instructions.
2002
+ (decl fpu_rr (FpuOPRR Type FRM Reg) Reg)
2003
+ (rule (fpu_rr op ty frm src)
2004
+ (let ((dst WritableReg (temp_writable_reg ty))
2005
+ (_ Unit (emit (MInst.FpuRR op frm dst src))))
2006
+ dst))
2007
+
2008
+ ;; Helper for emitting `MInst.AluRRR` instructions.
2009
+ (decl alu_rrr (AluOPRRR Reg Reg) Reg)
2010
+ (rule (alu_rrr op src1 src2)
2011
+ (let ((dst WritableXReg (temp_writable_xreg))
2012
+ (_ Unit (emit (MInst.AluRRR op dst src1 src2))))
2013
+ dst))
2014
+
2015
+ ;; Helper for emitting `MInst.AluRRR` instructions.
2016
+ (decl fpu_rrr (FpuOPRRR Type FRM Reg Reg) Reg)
2017
+ (rule (fpu_rrr op ty frm src1 src2)
2018
+ (let ((dst WritableReg (temp_writable_reg ty))
2019
+ (_ Unit (emit (MInst.FpuRRR op frm dst src1 src2))))
2020
+ dst))
2021
+
2022
+ ;; Helper for emitting `MInst.FpuRRRR` instructions.
2023
+ (decl fpu_rrrr (FpuOPRRRR Type FRM Reg Reg Reg) Reg)
2024
+ (rule (fpu_rrrr op ty frm src1 src2 src3)
2025
+ (let ((dst WritableReg (temp_writable_reg ty))
2026
+ (_ Unit (emit (MInst.FpuRRRR op frm dst src1 src2 src3))))
2027
+ dst))
2028
+
2029
+
2030
+ ;; Helper for emitting `MInst.AluRRImm12` instructions.
2031
+ (decl alu_rr_imm12 (AluOPRRI Reg Imm12) Reg)
2032
+ (rule (alu_rr_imm12 op src imm)
2033
+ (let ((dst WritableXReg (temp_writable_xreg))
2034
+ (_ Unit (emit (MInst.AluRRImm12 op dst src imm))))
2035
+ dst))
2036
+
2037
+ ;; some instruction use imm12 as funct12.
2038
+ ;; so we don't need the imm12 paramter.
2039
+ (decl alu_rr_funct12 (AluOPRRI Reg) Reg)
2040
+ (rule (alu_rr_funct12 op src)
2041
+ (let ((dst WritableXReg (temp_writable_xreg))
2042
+ (_ Unit (emit (MInst.AluRRImm12 op dst src (imm12_zero)))))
2043
+ dst))
2044
+
2045
+ ;; Helper for emitting the `Lui` instruction.
2046
+ ;; TODO: This should be something like `emit_u_type`. And should share the
2047
+ ;; `MInst` with `auipc` since these instructions share the U-Type format.
2048
+ (decl rv_lui (Imm20) XReg)
2049
+ (rule (rv_lui imm)
2050
+ (let ((dst WritableXReg (temp_writable_xreg))
2051
+ (_ Unit (emit (MInst.Lui dst imm))))
2052
+ dst))
2053
+
2054
+ ;; Helper for emitting `MInst.CsrImm` instructions.
2055
+ (decl csr_imm (CsrImmOP CSR UImm5) XReg)
2056
+ (rule (csr_imm op csr imm)
2057
+ (let ((dst WritableXReg (temp_writable_xreg))
2058
+ (_ Unit (emit (MInst.CsrImm op dst imm csr))))
2059
+ dst))
2060
+
2061
+ ;; Helper for emitting a `MInst.CsrReg` instruction that writes the result to x0.
2062
+ (decl csr_reg_dst_zero (CsrRegOP CSR XReg) Unit)
2063
+ (rule (csr_reg_dst_zero op csr rs)
2064
+ (emit (MInst.CsrReg op (writable_zero_reg) rs csr)))
2065
+
2066
+
2067
+
2068
+ (decl select_addi (Type) AluOPRRI)
2069
+ (rule 1 (select_addi (fits_in_32 ty)) (AluOPRRI.Addiw))
2070
+ (rule (select_addi (fits_in_64 ty)) (AluOPRRI.Addi))
2071
+
2072
+
2073
+ (decl gen_andi (XReg u64) XReg)
2074
+ (rule 1 (gen_andi x (imm12_from_u64 y))
2075
+ (rv_andi x y))
2076
+
2077
+ (rule 0 (gen_andi x y)
2078
+ (rv_and x (imm $I64 y)))
2079
+
2080
+
2081
+ (decl gen_or (Type ValueRegs ValueRegs) ValueRegs)
2082
+ (rule 1 (gen_or $I128 x y)
2083
+ (value_regs
2084
+ (rv_or (value_regs_get x 0) (value_regs_get y 0))
2085
+ (rv_or (value_regs_get x 1) (value_regs_get y 1))))
2086
+
2087
+ (rule 0 (gen_or (fits_in_64 _) x y)
2088
+ (rv_or (value_regs_get x 0) (value_regs_get y 0)))
2089
+
2090
+
2091
+ (decl lower_ctz (Type Reg) Reg)
2092
+ (rule (lower_ctz ty x)
2093
+ (gen_cltz $false x ty))
2094
+
2095
+ (rule 1 (lower_ctz (fits_in_16 ty) x)
2096
+ (if-let $true (has_zbb))
2097
+ (let ((tmp Reg (gen_bseti x (ty_bits ty))))
2098
+ (rv_ctzw tmp)))
2099
+
2100
+ (rule 2 (lower_ctz $I32 x)
2101
+ (if-let $true (has_zbb))
2102
+ (rv_ctzw x))
2103
+
2104
+ (rule 2 (lower_ctz $I64 x)
2105
+ (if-let $true (has_zbb))
2106
+ (rv_ctz x))
2107
+
2108
+ ;; Count leading zeros from a i128 bit value.
2109
+ ;; We count both halves separately and conditionally add them if it makes sense.
2110
+
2111
+ (decl gen_cltz (bool XReg Type) XReg)
2112
+ (rule (gen_cltz leading rs ty)
2113
+ (let ((tmp WritableXReg (temp_writable_xreg))
2114
+ (step WritableXReg (temp_writable_xreg))
2115
+ (sum WritableXReg (temp_writable_xreg))
2116
+ (_ Unit (emit (MInst.Cltz leading sum step tmp rs ty))))
2117
+ sum))
2118
+
2119
+ ;; Performs a zero extension of the given value
2120
+ (decl zext (Value) XReg)
2121
+
2122
+ ;; In the most generic case, we shift left and then shift right.
2123
+ (rule 0 (zext val @ (value_type (fits_in_32 ty)))
2124
+ (let ((shift Imm12 (imm_from_bits (u64_sub 64 (ty_bits ty)))))
2125
+ (rv_srli (rv_slli val shift) shift)))
2126
+
2127
+ ;; If we are zero extending a U8 we can use a `andi` instruction.
2128
+ (rule 1 (zext val @ (value_type $I8))
2129
+ (rv_andi val (imm12_const 0xff)))
2130
+
2131
+ ;; No point in trying to use `packh` here to zero extend 8 bit values
2132
+ ;; since we can just use `andi` instead which is part of the base ISA.
2133
+
2134
+ ;; If we have the `zbkb` extension `packw` can be used to zero extend 16 bit values
2135
+ (rule 1 (zext val @ (value_type $I16))
2136
+ (if-let $true (has_zbkb))
2137
+ (rv_packw val (zero_reg)))
2138
+
2139
+ ;; If we have the `zbkb` extension `pack` can be used to zero extend 32 bit registers
2140
+ (rule 1 (zext val @ (value_type $I32))
2141
+ (if-let $true (has_zbkb))
2142
+ (rv_pack val (zero_reg)))
2143
+
2144
+ ;; If we have the `zbb` extension we can use the dedicated `zext.h` instruction.
2145
+ (rule 2 (zext val @ (value_type $I16))
2146
+ (if-let $true (has_zbb))
2147
+ (rv_zexth val))
2148
+
2149
+ ;; With `zba` we have a `zext.w` instruction
2150
+ (rule 2 (zext val @ (value_type $I32))
2151
+ (if-let $true (has_zba))
2152
+ (rv_zextw val))
2153
+
2154
+ ;; Ignore sign extensions for values whose representation is already the full
2155
+ ;; register width.
2156
+ (rule 3 (zext val)
2157
+ (if (val_already_extended (ExtendOp.Zero) val))
2158
+ val)
2159
+
2160
+ ;; Performs a signed extension of the given value
2161
+ (decl sext (Value) XReg)
2162
+
2163
+ ;; Same base case as `zext`, shift left-then-right.
2164
+ (rule 0 (sext val @ (value_type (fits_in_32 ty)))
2165
+ (let ((shift Imm12 (imm_from_bits (u64_sub 64 (ty_bits ty)))))
2166
+ (rv_srai (rv_slli val shift) shift)))
2167
+
2168
+ ;; If we have the `zbb` extension we can use the dedicated `sext.b` instruction.
2169
+ (rule 1 (sext val @ (value_type $I8))
2170
+ (if-let $true (has_zbb))
2171
+ (rv_sextb val))
2172
+
2173
+ ;; If we have the `zbb` extension we can use the dedicated `sext.h` instruction.
2174
+ (rule 1 (sext val @ (value_type $I16))
2175
+ (if-let $true (has_zbb))
2176
+ (rv_sexth val))
2177
+
2178
+ ;; When signed extending from 32 to 64 bits we can use a
2179
+ ;; `addiw val 0`. Also known as a `sext.w`
2180
+ (rule 1 (sext val @ (value_type $I32))
2181
+ (rv_sextw val))
2182
+
2183
+ ;; Ignore sign extensions for values whose representation is already the full
2184
+ ;; register width.
2185
+ (rule 2 (sext val)
2186
+ (if (val_already_extended (ExtendOp.Signed) val))
2187
+ val)
2188
+
2189
+ ;; Helper matcher for when a value's representation is already sign or zero
2190
+ ;; extended to the full 64-bit register representation. This is used by `zext`
2191
+ ;; and `sext` above to skip the extension instruction entirely in some
2192
+ ;; circumstances.
2193
+ (decl pure partial val_already_extended (ExtendOp Value) bool)
2194
+ (rule 0 (val_already_extended _ v @ (value_type $I64)) $true)
2195
+
2196
+ ;; When extending our backend always extends to the full register width, so
2197
+ ;; there's no need to extend-an-extend.
2198
+ (rule 1 (val_already_extended (ExtendOp.Zero) (uextend _)) $true)
2199
+ (rule 1 (val_already_extended (ExtendOp.Signed) (sextend _)) $true)
2200
+
2201
+ ;; The result of `icmp`/`fcmp` is zero or one, meaning that it's already sign
2202
+ ;; extended to the full register width.
2203
+ (rule 1 (val_already_extended _ (icmp _ _ _)) $true)
2204
+ (rule 1 (val_already_extended _ (fcmp _ _ _)) $true)
2205
+
2206
+ ;; The lowering for these operations always sign-extend their results due to the
2207
+ ;; use of the `*w` instructions in RV64I. Note that this requires that the
2208
+ ;; extension is from 32 to 64, 16/8-bit operations are explicitly excluded here.
2209
+ ;; There are no native instructions for the 16/8 bit operations so they must
2210
+ ;; fall through to actual sign extension above.
2211
+ (rule 1 (val_already_extended (ExtendOp.Signed) (has_type $I32 (ishl _ _))) $true)
2212
+ (rule 1 (val_already_extended (ExtendOp.Signed) (has_type $I32 (ushr _ _))) $true)
2213
+ (rule 1 (val_already_extended (ExtendOp.Signed) (has_type $I32 (sshr _ _))) $true)
2214
+ (rule 1 (val_already_extended (ExtendOp.Signed) (has_type $I32 (iadd _ _))) $true)
2215
+ (rule 1 (val_already_extended (ExtendOp.Signed) (has_type $I32 (isub _ _))) $true)
2216
+
2217
+ (type ExtendOp
2218
+ (enum
2219
+ (Zero)
2220
+ (Signed)))
2221
+
2222
+ (decl lower_b128_binary (AluOPRRR ValueRegs ValueRegs) ValueRegs)
2223
+ (rule
2224
+ (lower_b128_binary op a b)
2225
+ (let
2226
+ ( ;; low part.
2227
+ (low XReg (alu_rrr op (value_regs_get a 0) (value_regs_get b 0)))
2228
+ ;; high part.
2229
+ (high XReg (alu_rrr op (value_regs_get a 1) (value_regs_get b 1))))
2230
+ (value_regs low high)))
2231
+
2232
+ (decl lower_smlhi (Type XReg XReg) XReg)
2233
+ (rule 1
2234
+ (lower_smlhi $I64 rs1 rs2)
2235
+ (rv_mulh rs1 rs2))
2236
+
2237
+ (rule
2238
+ (lower_smlhi ty rs1 rs2)
2239
+ (let
2240
+ ((tmp XReg (rv_mul rs1 rs2)))
2241
+ (rv_srli tmp (imm12_const (ty_bits ty)))))
2242
+
2243
+ ;;;; construct shift amount.rotl on i128 will use shift to implement. So can call this function.
2244
+ ;;;; this will return shift amount and (ty_bits - "shift amount")
2245
+ ;;;; if ty_bits is greater than 64 like i128, then shmat will fallback to 64.because We are 64 bit platform.
2246
+ (decl gen_shamt (Type XReg) ValueRegs)
2247
+ (extern constructor gen_shamt gen_shamt)
2248
+
2249
+ ;; bseti: Set a single bit in a register, indexed by a constant.
2250
+ (decl gen_bseti (Reg u64) Reg)
2251
+ (rule (gen_bseti val bit)
2252
+ (if-let $false (has_zbs))
2253
+ (if-let $false (u64_le bit 12))
2254
+ (let ((const XReg (imm $I64 (u64_shl 1 bit))))
2255
+ (rv_or val const)))
2256
+
2257
+ (rule (gen_bseti val bit)
2258
+ (if-let $false (has_zbs))
2259
+ (if-let $true (u64_le bit 12))
2260
+ (rv_ori val (imm12_const (u64_as_i32 (u64_shl 1 bit)))))
2261
+
2262
+ (rule (gen_bseti val bit)
2263
+ (if-let $true (has_zbs))
2264
+ (rv_bseti val (imm12_const (u64_as_i32 bit))))
2265
+
2266
+
2267
+ (decl gen_popcnt (XReg) Reg)
2268
+ (rule (gen_popcnt rs)
2269
+ (let
2270
+ ((tmp WritableXReg (temp_writable_xreg))
2271
+ (step WritableXReg (temp_writable_xreg))
2272
+ (sum WritableXReg (temp_writable_xreg))
2273
+ (_ Unit (emit (MInst.Popcnt sum step tmp rs $I64))))
2274
+ (writable_reg_to_reg sum)))
2275
+
2276
+ ;; Generates a AMode that points to a register plus an offset.
2277
+ (decl gen_reg_offset_amode (Reg i64) AMode)
2278
+ (extern constructor gen_reg_offset_amode gen_reg_offset_amode)
2279
+
2280
+ ;; Generates a AMode that an offset from the stack pointer.
2281
+ (decl gen_sp_offset_amode (i64) AMode)
2282
+ (extern constructor gen_sp_offset_amode gen_sp_offset_amode)
2283
+
2284
+ ;; Generates a AMode that an offset from the frame pointer.
2285
+ (decl gen_fp_offset_amode (i64) AMode)
2286
+ (extern constructor gen_fp_offset_amode gen_fp_offset_amode)
2287
+
2288
+ ;; Generates an AMode that points to a stack slot + offset.
2289
+ (decl gen_stack_slot_amode (StackSlot i64) AMode)
2290
+ (extern constructor gen_stack_slot_amode gen_stack_slot_amode)
2291
+
2292
+ ;; Generates a AMode that points to a constant in the constant pool.
2293
+ (decl gen_const_amode (VCodeConstant) AMode)
2294
+ (extern constructor gen_const_amode gen_const_amode)
2295
+
2296
+
2297
+
2298
+ ;; Tries to match a Value + Offset into an AMode
2299
+ (decl amode (Value i32) AMode)
2300
+ (rule 0 (amode addr offset) (amode_inner addr offset))
2301
+
2302
+ ;; If we are adding a constant offset with an iadd we can instead make that
2303
+ ;; offset part of the amode offset.
2304
+ ;;
2305
+ ;; We can't recurse into `amode` again since that could cause stack overflows.
2306
+ ;; See: https://github.com/bytecodealliance/wasmtime/pull/6968
2307
+ (rule 1 (amode (iadd addr (iconst (simm32 y))) offset)
2308
+ (if-let new_offset (s32_add_fallible y offset))
2309
+ (amode_inner addr new_offset))
2310
+ (rule 2 (amode (iadd (iconst (simm32 x)) addr) offset)
2311
+ (if-let new_offset (s32_add_fallible x offset))
2312
+ (amode_inner addr new_offset))
2313
+
2314
+
2315
+ ;; These are the normal rules for generating an AMode.
2316
+ (decl amode_inner (Value i32) AMode)
2317
+
2318
+ ;; In the simplest case we just lower into a Reg+Offset
2319
+ (rule 0 (amode_inner r @ (value_type (ty_addr64 _)) offset)
2320
+ (gen_reg_offset_amode r offset))
2321
+
2322
+ ;; If the value is a `get_frame_pointer`, we can just use the offset from that.
2323
+ (rule 1 (amode_inner (get_frame_pointer) offset)
2324
+ (gen_fp_offset_amode offset))
2325
+
2326
+ ;; If the value is a `get_stack_pointer`, we can just use the offset from that.
2327
+ (rule 1 (amode_inner (get_stack_pointer) offset)
2328
+ (gen_sp_offset_amode offset))
2329
+
2330
+ ;; Similarly if the value is a `stack_addr` we can also turn that into an sp offset.
2331
+ (rule 1 (amode_inner (stack_addr ss ss_offset) amode_offset)
2332
+ (if-let combined_offset (s32_add_fallible ss_offset amode_offset))
2333
+ (gen_stack_slot_amode ss combined_offset))
2334
+
2335
+
2336
+
2337
+
2338
+ ;; Returns a canonical type for a LoadOP. We only return I64 or F64.
2339
+ (decl load_op_reg_type (LoadOP) Type)
2340
+ (rule 1 (load_op_reg_type (LoadOP.Fld)) $F64)
2341
+ (rule 1 (load_op_reg_type (LoadOP.Flw)) $F64)
2342
+ (rule 0 (load_op_reg_type _) $I64)
2343
+
2344
+ ;; helper function to load from memory.
2345
+ (decl gen_load (AMode LoadOP MemFlags) Reg)
2346
+ (rule (gen_load amode op flags)
2347
+ (let ((dst WritableReg (temp_writable_reg (load_op_reg_type op)))
2348
+ (_ Unit (emit (MInst.Load dst op flags amode))))
2349
+ dst))
2350
+
2351
+ ;; helper function to store to memory.
2352
+ (decl gen_store (AMode StoreOP MemFlags Reg) InstOutput)
2353
+ (rule (gen_store amode op flags src)
2354
+ (side_effect (SideEffectNoResult.Inst (MInst.Store amode op flags src))))
2355
+
2356
+
2357
+
2358
+
2359
+ (decl valid_atomic_transaction (Type) Type)
2360
+ (extern extractor valid_atomic_transaction valid_atomic_transaction)
2361
+
2362
+ ;;helper function.
2363
+ ;;construct an atomic instruction.
2364
+ (decl gen_atomic (AtomicOP Reg Reg AMO) Reg)
2365
+ (rule
2366
+ (gen_atomic op addr src amo)
2367
+ (let
2368
+ ((tmp WritableXReg (temp_writable_xreg))
2369
+ (_ Unit (emit (MInst.Atomic op tmp addr src amo))))
2370
+ tmp))
2371
+
2372
+ ;; helper function
2373
+ (decl get_atomic_rmw_op (Type AtomicRmwOp) AtomicOP)
2374
+ (rule
2375
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Add))
2376
+ (AtomicOP.AmoaddW))
2377
+ (rule
2378
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Add))
2379
+ (AtomicOP.AmoaddD))
2380
+
2381
+ (rule
2382
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.And))
2383
+ (AtomicOP.AmoandW))
2384
+
2385
+ (rule
2386
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.And))
2387
+ (AtomicOP.AmoandD))
2388
+
2389
+ (rule
2390
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Or))
2391
+ (AtomicOP.AmoorW))
2392
+
2393
+ (rule
2394
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Or))
2395
+ (AtomicOP.AmoorD))
2396
+
2397
+ (rule
2398
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Smax))
2399
+ (AtomicOP.AmomaxW))
2400
+
2401
+ (rule
2402
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Smax))
2403
+ (AtomicOP.AmomaxD))
2404
+
2405
+ (rule
2406
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Smin))
2407
+ (AtomicOP.AmominW))
2408
+
2409
+ (rule
2410
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Smin))
2411
+ (AtomicOP.AmominD))
2412
+
2413
+ (rule
2414
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Umax))
2415
+ (AtomicOP.AmomaxuW)
2416
+ )
2417
+
2418
+ (rule
2419
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Umax))
2420
+ (AtomicOP.AmomaxuD))
2421
+
2422
+ (rule
2423
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Umin))
2424
+ (AtomicOP.AmominuW))
2425
+
2426
+ (rule
2427
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Umin))
2428
+ (AtomicOP.AmominuD))
2429
+
2430
+ (rule
2431
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Xchg))
2432
+ (AtomicOP.AmoswapW))
2433
+
2434
+ (rule
2435
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Xchg))
2436
+ (AtomicOP.AmoswapD))
2437
+
2438
+ (rule
2439
+ (get_atomic_rmw_op $I32 (AtomicRmwOp.Xor))
2440
+ (AtomicOP.AmoxorW))
2441
+
2442
+ (rule
2443
+ (get_atomic_rmw_op $I64 (AtomicRmwOp.Xor))
2444
+ (AtomicOP.AmoxorD))
2445
+
2446
+ (decl atomic_amo () AMO)
2447
+ (extern constructor atomic_amo atomic_amo)
2448
+
2449
+
2450
+ (decl gen_atomic_load (Reg Type) Reg)
2451
+ (rule
2452
+ (gen_atomic_load p ty)
2453
+ (let
2454
+ ((tmp WritableXReg (temp_writable_xreg))
2455
+ (_ Unit (emit (MInst.AtomicLoad tmp ty p))))
2456
+ (writable_reg_to_reg tmp)))
2457
+
2458
+ ;;;
2459
+ (decl gen_atomic_store (Reg Type Reg) InstOutput)
2460
+ (rule
2461
+ (gen_atomic_store p ty src)
2462
+ (side_effect (SideEffectNoResult.Inst (MInst.AtomicStore src ty p)))
2463
+ )
2464
+
2465
+
2466
+ ;; Rounds a FReg by converting the value into an integer and back with a specified
2467
+ ;; float rounding mode.
2468
+ (decl float_round_fcvt (Type FRM FReg) FReg)
2469
+ (rule (float_round_fcvt $F32 frm rs) (rv_fcvtsw frm (rv_fcvtws frm rs)))
2470
+ (rule (float_round_fcvt $F64 frm rs) (rv_fcvtdl frm (rv_fcvtld frm rs)))
2471
+
2472
+ (decl gen_float_round (FRM FReg Type) FReg)
2473
+ (rule (gen_float_round frm rs ty)
2474
+ (let (;; if rs is NaN/+-Infinity/+-Zero or if the exponent is larger than # of bits
2475
+ ;; in mantissa, the result is the same as src, check for these cases first.
2476
+ (max FReg (imm ty (float_int_max ty)))
2477
+ (abs FReg (rv_fabs ty rs))
2478
+ (exact XReg (rv_flt ty abs max))
2479
+
2480
+ ;; Manually round the value using the fcvt instructions
2481
+ ;; to move the value to an integer register and back.
2482
+ (fcvt FReg (float_round_fcvt ty frm rs))
2483
+ ;; Restore the sign bit from the initial value.
2484
+ (rounded FReg (rv_fsgnj ty fcvt rs))
2485
+
2486
+ ;; We want to return a arithmetic nan if the input is a canonical nan.
2487
+ ;; Convert them by adding 0.0 to the input.
2488
+ (float_zero FReg (gen_bitcast (zero_reg) (float_int_of_same_size ty) ty))
2489
+ (corrected_nan FReg (rv_fadd ty (FRM.RNE) rs float_zero)))
2490
+
2491
+ ;; Check if the value cannot be rounded exactly and return the source input if so
2492
+ (gen_select_freg (cmp_eqz exact) corrected_nan rounded)))
2493
+
2494
+
2495
+
2496
+
2497
+ (decl gen_stack_addr (StackSlot Offset32) Reg)
2498
+ (extern constructor gen_stack_addr gen_stack_addr)
2499
+
2500
+ (decl gen_select_xreg (IntegerCompare XReg XReg) XReg)
2501
+
2502
+ (rule 1 (gen_select_xreg (int_compare_decompose cc x y) x y)
2503
+ (if-let (IntCC.UnsignedLessThan) (intcc_without_eq cc))
2504
+ (if-let $true (has_zbb))
2505
+ (rv_minu x y))
2506
+
2507
+ (rule 1 (gen_select_xreg (int_compare_decompose cc x y) x y)
2508
+ (if-let (IntCC.SignedLessThan) (intcc_without_eq cc))
2509
+ (if-let $true (has_zbb))
2510
+ (rv_min x y))
2511
+
2512
+ (rule 1 (gen_select_xreg (int_compare_decompose cc x y) x y)
2513
+ (if-let (IntCC.UnsignedGreaterThan) (intcc_without_eq cc))
2514
+ (if-let $true (has_zbb))
2515
+ (rv_maxu x y))
2516
+
2517
+ (rule 1 (gen_select_xreg (int_compare_decompose cc x y) x y)
2518
+ (if-let (IntCC.SignedGreaterThan) (intcc_without_eq cc))
2519
+ (if-let $true (has_zbb))
2520
+ (rv_max x y))
2521
+
2522
+ (rule 0 (gen_select_xreg c x y)
2523
+ (let
2524
+ ((dst WritableReg (temp_writable_xreg))
2525
+ (_ Unit (emit (MInst.Select dst c x y))))
2526
+ (writable_reg_to_reg dst)))
2527
+
2528
+
2529
+ (decl gen_select_vreg (IntegerCompare VReg VReg) VReg)
2530
+ (rule (gen_select_vreg c x y)
2531
+ (let
2532
+ ((dst WritableReg (temp_writable_vreg))
2533
+ (_ Unit (emit (MInst.Select dst c (vreg_to_reg x) (vreg_to_reg y)))))
2534
+ (writable_reg_to_reg dst)))
2535
+ (decl gen_select_freg (IntegerCompare FReg FReg) FReg)
2536
+ (rule (gen_select_freg c x y)
2537
+ (let
2538
+ ((dst WritableReg (temp_writable_freg))
2539
+ (_ Unit (emit (MInst.Select dst c (freg_to_reg x) (freg_to_reg y)))))
2540
+ (writable_reg_to_reg dst)))
2541
+ (decl gen_select_regs (IntegerCompare ValueRegs ValueRegs) ValueRegs)
2542
+ (rule (gen_select_regs c x y)
2543
+ (let
2544
+ ((dst1 WritableReg (temp_writable_xreg))
2545
+ (dst2 WritableReg (temp_writable_xreg))
2546
+ (_ Unit (emit (MInst.Select (writable_value_regs dst1 dst2) c x y))))
2547
+ (value_regs dst1 dst2)))
2548
+
2549
+ (decl udf (TrapCode) InstOutput)
2550
+ (rule
2551
+ (udf code)
2552
+ (side_effect (SideEffectNoResult.Inst (MInst.Udf code))))
2553
+
2554
+ (decl load_op (Type) LoadOP)
2555
+ (extern constructor load_op load_op)
2556
+
2557
+ (decl store_op (Type) StoreOP)
2558
+ (extern constructor store_op store_op)
2559
+
2560
+
2561
+ ;;;; load extern name
2562
+ (decl load_ext_name (ExternalName i64) Reg)
2563
+ (extern constructor load_ext_name load_ext_name)
2564
+
2565
+ (decl elf_tls_get_addr (ExternalName) Reg)
2566
+ (rule (elf_tls_get_addr name)
2567
+ (let ((dst WritableReg (temp_writable_reg $I64))
2568
+ (_ Unit (emit (MInst.ElfTlsGetAddr dst name))))
2569
+ dst))
2570
+
2571
+ ;;; some float binary operation
2572
+ ;;; 1. need move into x reister.
2573
+ ;;; 2. do the operation.
2574
+ ;;; 3. move back.
2575
+ (decl lower_float_binary (AluOPRRR FReg FReg Type) FReg)
2576
+ (rule
2577
+ (lower_float_binary op rs1 rs2 ty)
2578
+ (let ((x_rs1 XReg (move_f_to_x rs1 ty))
2579
+ (x_rs2 XReg (move_f_to_x rs2 ty))
2580
+ (tmp XReg (alu_rrr op x_rs1 x_rs2)))
2581
+ (move_x_to_f tmp (float_int_of_same_size ty))))
2582
+
2583
+
2584
+ (decl i128_sub (ValueRegs ValueRegs) ValueRegs)
2585
+ (rule
2586
+ (i128_sub x y )
2587
+ (let
2588
+ (;; low part.
2589
+ (low XReg (rv_sub (value_regs_get x 0) (value_regs_get y 0)))
2590
+ ;; compute borrow.
2591
+ (borrow XReg (rv_sltu (value_regs_get x 0) low))
2592
+ ;;
2593
+ (high_tmp XReg (rv_sub (value_regs_get x 1) (value_regs_get y 1)))
2594
+ ;;
2595
+ (high XReg (rv_sub high_tmp borrow)))
2596
+ (value_regs low high)))
2597
+
2598
+ ;; Consume a CmpResult, producing a branch on its result.
2599
+ (decl cond_br (IntegerCompare CondBrTarget CondBrTarget) SideEffectNoResult)
2600
+ (rule (cond_br cmp then else)
2601
+ (SideEffectNoResult.Inst
2602
+ (MInst.CondBr then else cmp)))
2603
+
2604
+ ;; Helper for emitting the `j` mnemonic, an unconditional jump to label.
2605
+ (decl rv_j (MachLabel) SideEffectNoResult)
2606
+ (rule (rv_j label)
2607
+ (SideEffectNoResult.Inst (MInst.Jal label)))
2608
+
2609
+ ;; Construct an IntegerCompare value.
2610
+ (decl int_compare (IntCC XReg XReg) IntegerCompare)
2611
+ (extern constructor int_compare int_compare)
2612
+
2613
+ ;; Extract the components of an `IntegerCompare`
2614
+ (decl int_compare_decompose (IntCC XReg XReg) IntegerCompare)
2615
+ (extern extractor infallible int_compare_decompose int_compare_decompose)
2616
+
2617
+ (decl label_to_br_target (MachLabel) CondBrTarget)
2618
+ (extern constructor label_to_br_target label_to_br_target)
2619
+ (convert MachLabel CondBrTarget label_to_br_target)
2620
+
2621
+ (decl cmp_eqz (XReg) IntegerCompare)
2622
+ (rule (cmp_eqz r) (int_compare (IntCC.Equal) r (zero_reg)))
2623
+
2624
+ (decl cmp_nez (XReg) IntegerCompare)
2625
+ (rule (cmp_nez r) (int_compare (IntCC.NotEqual) r (zero_reg)))
2626
+
2627
+ (decl cmp_eq (XReg XReg) IntegerCompare)
2628
+ (rule (cmp_eq rs1 rs2) (int_compare (IntCC.Equal) rs1 rs2))
2629
+
2630
+ (decl cmp_ne (XReg XReg) IntegerCompare)
2631
+ (rule (cmp_ne rs1 rs2) (int_compare (IntCC.NotEqual) rs1 rs2))
2632
+
2633
+ (decl cmp_lt (XReg XReg) IntegerCompare)
2634
+ (rule (cmp_lt rs1 rs2) (int_compare (IntCC.SignedLessThan) rs1 rs2))
2635
+
2636
+ (decl cmp_ltz (XReg) IntegerCompare)
2637
+ (rule (cmp_ltz rs) (int_compare (IntCC.SignedLessThan) rs (zero_reg)))
2638
+
2639
+ (decl cmp_gt (XReg XReg) IntegerCompare)
2640
+ (rule (cmp_gt rs1 rs2) (int_compare (IntCC.SignedGreaterThan) rs1 rs2))
2641
+
2642
+ (decl cmp_ge (XReg XReg) IntegerCompare)
2643
+ (rule (cmp_ge rs1 rs2) (int_compare (IntCC.SignedGreaterThanOrEqual) rs1 rs2))
2644
+
2645
+ (decl cmp_le (XReg XReg) IntegerCompare)
2646
+ (rule (cmp_le rs1 rs2) (int_compare (IntCC.SignedLessThanOrEqual) rs1 rs2))
2647
+
2648
+ (decl cmp_gtu (XReg XReg) IntegerCompare)
2649
+ (rule (cmp_gtu rs1 rs2) (int_compare (IntCC.UnsignedGreaterThan) rs1 rs2))
2650
+
2651
+ (decl cmp_geu (XReg XReg) IntegerCompare)
2652
+ (rule (cmp_geu rs1 rs2) (int_compare (IntCC.UnsignedGreaterThanOrEqual) rs1 rs2))
2653
+
2654
+ (decl cmp_ltu (XReg XReg) IntegerCompare)
2655
+ (rule (cmp_ltu rs1 rs2) (int_compare (IntCC.UnsignedLessThan) rs1 rs2))
2656
+
2657
+ (decl cmp_leu (XReg XReg) IntegerCompare)
2658
+ (rule (cmp_leu rs1 rs2) (int_compare (IntCC.UnsignedLessThanOrEqual) rs1 rs2))
2659
+
2660
+ ;; Helper to generate an `IntegerCompare` which represents the "truthy" value of
2661
+ ;; the input provided.
2662
+ ;;
2663
+ ;; This is used in `Select` and `brif` for example to generate conditional
2664
+ ;; branches. The returned comparison, when taken, represents that `Value` is
2665
+ ;; nonzero. When not taken the input `Value` is zero.
2666
+ (decl is_nonzero_cmp (Value) IntegerCompare)
2667
+
2668
+ ;; Base case - convert to a "truthy" value and compare it against zero.
2669
+ ;;
2670
+ ;; Note that non-64-bit types need to be extended since the upper bits from
2671
+ ;; Cranelift's point of view are undefined. Favor a zero extension for 8-bit
2672
+ ;; types because that's a single `andi` instruction, but favor sign-extension
2673
+ ;; for 16 and 32-bit types because many RISC-V which operate on the low 32-bits.
2674
+ ;; Additionally the base 64-bit ISA has a single instruction for sign-extending
2675
+ ;; from 32 to 64-bits which makes that a bit cheaper if used.
2676
+ ;; of registers sign-extend the results.
2677
+ (rule 0 (is_nonzero_cmp val @ (value_type (fits_in_64 _)))
2678
+ (cmp_nez (sext val)))
2679
+ (rule 1 (is_nonzero_cmp val @ (value_type $I8))
2680
+ (cmp_nez (zext val)))
2681
+ (rule 1 (is_nonzero_cmp val @ (value_type $I128))
2682
+ (cmp_nez (rv_or (value_regs_get val 0) (value_regs_get val 1))))
2683
+
2684
+ ;; If the input value is itself an `icmp` or `fcmp` we can avoid generating the
2685
+ ;; result of the comparison and instead move the comparison directly into the
2686
+ ;; `IntegerCompare` that's returned.
2687
+ (rule 2 (is_nonzero_cmp (maybe_uextend (icmp cc a b @ (value_type (fits_in_64 _)))))
2688
+ (icmp_to_int_compare cc a b))
2689
+ (rule 2 (is_nonzero_cmp (maybe_uextend (fcmp cc a @ (value_type ty) b)))
2690
+ (fcmp_to_float_compare cc ty a b))
2691
+
2692
+ ;; Creates an `IntegerCompare` from an `icmp` node's parts. This will extend
2693
+ ;; values as necessary to their full register width to perform the
2694
+ ;; comparison. The returned `IntegerCompare` is suitable to use in conditional
2695
+ ;; branches for example.
2696
+ ;;
2697
+ ;; Note that this should ideally only be used when the `IntegerCompare` returned
2698
+ ;; is fed into a branch. If `IntegerCompare` is materialized this will miss out
2699
+ ;; on optimizations to compare against constants using some native instructions.
2700
+ (decl icmp_to_int_compare (IntCC Value Value) IntegerCompare)
2701
+ (rule 0 (icmp_to_int_compare cc a b @ (value_type (fits_in_64 in_ty)))
2702
+ (int_compare cc (put_value_in_reg_for_icmp cc a) (put_value_in_reg_for_icmp cc b)))
2703
+ (rule 1 (icmp_to_int_compare cc a b @ (value_type $I128))
2704
+ (cmp_nez (lower_icmp_i128 cc a b)))
2705
+
2706
+ ;; Places a `Value` into a full register width to prepare for a comparison
2707
+ ;; using `IntCC`.
2708
+ ;;
2709
+ ;; This is largely a glorified means of choosing sign-extension or
2710
+ ;; zero-extension for the `Value` input.
2711
+ (decl put_value_in_reg_for_icmp (IntCC Value) XReg)
2712
+
2713
+ ;; Base cases, use the `cc` to determine whether to zero or sign extend.
2714
+ (rule 0 (put_value_in_reg_for_icmp cc val)
2715
+ (zext val))
2716
+ (rule 1 (put_value_in_reg_for_icmp cc val)
2717
+ (if (signed_cond_code cc))
2718
+ (sext val))
2719
+
2720
+ ;; For equality and inequality favor sign extension since it's generally
2721
+ ;; easier to perform sign extension on RV64 via native instructions. For 8-bit
2722
+ ;; types though use zero-extension since that's a single instruction `and`.
2723
+ (rule 2 (put_value_in_reg_for_icmp (IntCC.Equal) val @ (value_type (fits_in_64 _)))
2724
+ (sext val))
2725
+ (rule 2 (put_value_in_reg_for_icmp (IntCC.NotEqual) val @ (value_type (fits_in_64 _)))
2726
+ (sext val))
2727
+ (rule 3 (put_value_in_reg_for_icmp (IntCC.Equal) val @ (value_type $I8))
2728
+ (zext val))
2729
+ (rule 3 (put_value_in_reg_for_icmp (IntCC.NotEqual) val @ (value_type $I8))
2730
+ (zext val))
2731
+
2732
+ ;; As a special case use `x0` directly if a constant is 0.
2733
+ (rule 4 (put_value_in_reg_for_icmp _ (i64_from_iconst 0))
2734
+ (zero_reg))
2735
+
2736
+
2737
+ (decl partial lower_branch (Inst MachLabelSlice) Unit)
2738
+ (rule (lower_branch (jump _) (single_target label))
2739
+ (emit_side_effect (rv_j label)))
2740
+
2741
+ (rule (lower_branch (brif v _ _) (two_targets then else))
2742
+ (emit_side_effect (cond_br (is_nonzero_cmp v) then else)))
2743
+
2744
+ (decl lower_br_table (Reg MachLabelSlice) Unit)
2745
+ (extern constructor lower_br_table lower_br_table)
2746
+
2747
+ (rule (lower_branch (br_table index _) targets)
2748
+ (lower_br_table index targets))
2749
+
2750
+ (decl load_ra () Reg)
2751
+ (extern constructor load_ra load_ra)
2752
+
2753
+
2754
+ ;; Generates a bitcast instruction.
2755
+ ;; Args are: src, src_ty, dst_ty
2756
+ (decl gen_bitcast (Reg Type Type) Reg)
2757
+ (rule 1 (gen_bitcast r $F32 $I32) (rv_fmvxw r))
2758
+ (rule 1 (gen_bitcast r $F64 $I64) (rv_fmvxd r))
2759
+ (rule 1 (gen_bitcast r $I32 $F32) (rv_fmvwx r))
2760
+ (rule 1 (gen_bitcast r $I64 $F64) (rv_fmvdx r))
2761
+ (rule 1 (gen_bitcast r $I64 $R64) (copy_reg r $I64))
2762
+ (rule 1 (gen_bitcast r $R64 $I64) (copy_reg r $I64))
2763
+ (rule (gen_bitcast r _ _) r)
2764
+
2765
+ (decl move_f_to_x (FReg Type) XReg)
2766
+ (rule (move_f_to_x r $F32) (gen_bitcast r $F32 $I32))
2767
+ (rule (move_f_to_x r $F64) (gen_bitcast r $F64 $I64))
2768
+
2769
+ (decl move_x_to_f (XReg Type) FReg)
2770
+ (rule (move_x_to_f r $I32) (gen_bitcast r $I32 $F32))
2771
+ (rule (move_x_to_f r $I64) (gen_bitcast r $I64 $F64))
2772
+
2773
+ (decl float_int_of_same_size (Type) Type)
2774
+ (rule (float_int_of_same_size $F32) $I32)
2775
+ (rule (float_int_of_same_size $F64) $I64)
2776
+
2777
+
2778
+ (decl gen_brev8 (Reg Type) Reg)
2779
+ (rule 1
2780
+ (gen_brev8 rs _)
2781
+ (if-let $true (has_zbkb))
2782
+ (rv_brev8 rs))
2783
+ (rule
2784
+ (gen_brev8 rs ty)
2785
+ (if-let $false (has_zbkb))
2786
+ (let
2787
+ ((tmp WritableXReg (temp_writable_xreg))
2788
+ (tmp2 WritableXReg (temp_writable_xreg))
2789
+ (step WritableXReg (temp_writable_xreg))
2790
+ (rd WritableXReg (temp_writable_xreg))
2791
+ (_ Unit (emit (MInst.Brev8 rs ty step tmp tmp2 rd))))
2792
+ (writable_reg_to_reg rd)))
2793
+
2794
+ ;; Negates x
2795
+ ;; Equivalent to 0 - x
2796
+ (decl neg (Type ValueRegs) ValueRegs)
2797
+ (rule 1 (neg (fits_in_64 (ty_int ty)) val)
2798
+ (value_reg
2799
+ (rv_neg (value_regs_get val 0))))
2800
+
2801
+ (rule 2 (neg $I128 val)
2802
+ (i128_sub (value_regs_zero) val))
2803
+
2804
+
2805
+ ;; Builds an instruction sequence that traps if the comparision succeeds.
2806
+ (decl gen_trapif (IntCC XReg XReg TrapCode) InstOutput)
2807
+ (rule (gen_trapif cc a b trap_code)
2808
+ (side_effect (SideEffectNoResult.Inst (MInst.TrapIf a b cc trap_code))))
2809
+
2810
+ ;; Builds an instruction sequence that traps if the input is non-zero.
2811
+ (decl gen_trapnz (XReg TrapCode) InstOutput)
2812
+ (rule (gen_trapnz test trap_code)
2813
+ (gen_trapif (IntCC.NotEqual) test (zero_reg) trap_code))
2814
+
2815
+ ;; Builds an instruction sequence that traps if the input is zero.
2816
+ (decl gen_trapz (XReg TrapCode) InstOutput)
2817
+ (rule (gen_trapz test trap_code)
2818
+ (gen_trapif (IntCC.Equal) test (zero_reg) trap_code))
2819
+
2820
+ ;;;; Helpers for Emitting Calls ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2821
+
2822
+ (decl gen_call (SigRef ExternalName RelocDistance ValueSlice) InstOutput)
2823
+ (extern constructor gen_call gen_call)
2824
+
2825
+ (decl gen_call_indirect (SigRef Value ValueSlice) InstOutput)
2826
+ (extern constructor gen_call_indirect gen_call_indirect)
2827
+
2828
+ ;;; this is trying to imitate aarch64 `madd` instruction.
2829
+ (decl madd (XReg XReg XReg) XReg)
2830
+ (rule
2831
+ (madd n m a)
2832
+ (let
2833
+ ((t XReg (rv_mul n m)))
2834
+ (rv_add t a)))
2835
+
2836
+ ;;;; Helpers for bmask ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2837
+
2838
+ ;; Generates either 0 if `Value` is zero or -1 otherwise.
2839
+ (decl gen_bmask (Value) XReg)
2840
+
2841
+ ;; Base cases: use `snez` after a sign extension to ensure that the entire
2842
+ ;; register is defined. For i128 we test both the upper and lower half.
2843
+ (rule 0 (gen_bmask val @ (value_type (fits_in_64 _)))
2844
+ (let ((non_zero XReg (rv_snez (sext val))))
2845
+ (rv_neg non_zero)))
2846
+ (rule 1 (gen_bmask val @ (value_type $I128))
2847
+ (let ((non_zero XReg (rv_snez (rv_or (value_regs_get val 0) (value_regs_get val 1)))))
2848
+ (rv_neg non_zero)))
2849
+
2850
+ ;; If the input value is an `icmp` or an `fcmp` directly then the `snez` can
2851
+ ;; be omitted because the result of the icmp or fcmp is a 0 or 1 directly. This
2852
+ ;; means we can go straight to the `neg` instruction to produce the final
2853
+ ;; result.
2854
+ (rule 2 (gen_bmask val @ (maybe_uextend (icmp _ _ _))) (rv_neg val))
2855
+ (rule 2 (gen_bmask val @ (maybe_uextend (fcmp _ _ _))) (rv_neg val))
2856
+
2857
+ (decl lower_bmask (Value Type) ValueRegs)
2858
+ (rule 0 (lower_bmask val (fits_in_64 _))
2859
+ (value_reg (gen_bmask val)))
2860
+ (rule 1 (lower_bmask val $I128)
2861
+ (let ((bits XReg (gen_bmask val)))
2862
+ (value_regs bits bits)))
2863
+
2864
+ ;;;; Helpers for physical registers ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2865
+
2866
+ (decl gen_mov_from_preg (PReg) Reg)
2867
+
2868
+ (rule
2869
+ (gen_mov_from_preg rm)
2870
+ (let ((rd WritableXReg (temp_writable_xreg))
2871
+ (_ Unit (emit (MInst.MovFromPReg rd rm))))
2872
+ rd))
2873
+
2874
+ ;; Copy a register of the given type to a new register.
2875
+ ;;
2876
+ ;; Generally, regalloc should take care of this kind of thing for us. This is
2877
+ ;; only useful for implementing things like `bitcast` from an `r64` to an `i64`
2878
+ ;; to avoid conflicting constraints on a single aliased value by splitting the
2879
+ ;; value into two parts.
2880
+ (decl copy_reg (XReg Type) XReg)
2881
+ (rule (copy_reg src ty)
2882
+ (let ((dst WritableXReg (temp_writable_xreg))
2883
+ (_ Unit (emit (MInst.Mov dst
2884
+ src
2885
+ ty))))
2886
+ dst))
2887
+
2888
+ (decl fp_reg () PReg)
2889
+ (extern constructor fp_reg fp_reg)
2890
+
2891
+ (decl sp_reg () PReg)
2892
+ (extern constructor sp_reg sp_reg)
2893
+
2894
+ ;; Helper for creating the zero register.
2895
+ (decl zero_reg () XReg)
2896
+ (extern constructor zero_reg zero_reg)
2897
+ (extern extractor zero_reg is_zero_reg)
2898
+
2899
+ (decl value_regs_zero () ValueRegs)
2900
+ (rule (value_regs_zero)
2901
+ (value_regs (imm $I64 0) (imm $I64 0)))
2902
+
2903
+ (decl writable_zero_reg () WritableReg)
2904
+ (extern constructor writable_zero_reg writable_zero_reg)
2905
+
2906
+
2907
+ ;;;; Helpers for floating point comparisons ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2908
+
2909
+ (type FloatCompare (enum
2910
+ ;; The comparison succeeded if `r` is one
2911
+ (One (r XReg))
2912
+ ;; The comparison succeeded if `r` is zero
2913
+ (Zero (r XReg))
2914
+ ))
2915
+
2916
+ (decl float_compare_invert (FloatCompare) FloatCompare)
2917
+ (rule (float_compare_invert (FloatCompare.One r)) (FloatCompare.Zero r))
2918
+ (rule (float_compare_invert (FloatCompare.Zero r)) (FloatCompare.One r))
2919
+
2920
+ (decl float_to_int_compare (FloatCompare) IntegerCompare)
2921
+ (rule (float_to_int_compare (FloatCompare.One r)) (cmp_nez r))
2922
+ (rule (float_to_int_compare (FloatCompare.Zero r)) (cmp_eqz r))
2923
+ (convert FloatCompare IntegerCompare float_to_int_compare)
2924
+
2925
+ ;; Compare two floating point numbers and return a zero/non-zero result.
2926
+ (decl fcmp_to_float_compare (FloatCC Type FReg FReg) FloatCompare)
2927
+
2928
+ ;; Direct codegen for unordered comparisons is not that efficient, so invert
2929
+ ;; the comparison to get an ordered comparison and generate that. Then invert
2930
+ ;; the result to produce the final fcmp result.
2931
+ (rule 0 (fcmp_to_float_compare cc ty a b)
2932
+ (if-let $true (floatcc_unordered cc))
2933
+ (float_compare_invert (fcmp_to_float_compare (floatcc_complement cc) ty a b)))
2934
+
2935
+ ;; a is not nan && b is not nan
2936
+ (rule 1 (fcmp_to_float_compare (FloatCC.Ordered) ty a b)
2937
+ (FloatCompare.One (rv_and (is_not_nan ty a) (is_not_nan ty b))))
2938
+
2939
+ (decl is_not_nan (Type FReg) XReg)
2940
+ (rule (is_not_nan ty a) (rv_feq ty a a))
2941
+
2942
+ ;; a == b
2943
+ (rule 1 (fcmp_to_float_compare (FloatCC.Equal) ty a b)
2944
+ (FloatCompare.One (rv_feq ty a b)))
2945
+
2946
+ ;; a != b
2947
+ ;; == !(a == b)
2948
+ (rule 1 (fcmp_to_float_compare (FloatCC.NotEqual) ty a b)
2949
+ (FloatCompare.Zero (rv_feq ty a b)))
2950
+
2951
+ ;; a < b || a > b
2952
+ (rule 1 (fcmp_to_float_compare (FloatCC.OrderedNotEqual) ty a b)
2953
+ (FloatCompare.One (rv_or (rv_flt ty a b) (rv_fgt ty a b))))
2954
+
2955
+ ;; a < b
2956
+ (rule 1 (fcmp_to_float_compare (FloatCC.LessThan) ty a b)
2957
+ (FloatCompare.One (rv_flt ty a b)))
2958
+
2959
+ ;; a <= b
2960
+ (rule 1 (fcmp_to_float_compare (FloatCC.LessThanOrEqual) ty a b)
2961
+ (FloatCompare.One (rv_fle ty a b)))
2962
+
2963
+ ;; a > b
2964
+ (rule 1 (fcmp_to_float_compare (FloatCC.GreaterThan) ty a b)
2965
+ (FloatCompare.One (rv_fgt ty a b)))
2966
+
2967
+ ;; a >= b
2968
+ (rule 1 (fcmp_to_float_compare (FloatCC.GreaterThanOrEqual) ty a b)
2969
+ (FloatCompare.One (rv_fge ty a b)))