wasmtime 19.0.2 → 20.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2232) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +116 -120
  3. data/ext/Cargo.toml +6 -6
  4. data/ext/cargo-vendor/anyhow-1.0.83/.cargo-checksum.json +1 -0
  5. data/ext/cargo-vendor/anyhow-1.0.83/Cargo.toml +130 -0
  6. data/ext/cargo-vendor/anyhow-1.0.83/README.md +181 -0
  7. data/ext/cargo-vendor/anyhow-1.0.83/build.rs +179 -0
  8. data/ext/cargo-vendor/anyhow-1.0.83/src/backtrace.rs +406 -0
  9. data/ext/cargo-vendor/anyhow-1.0.83/src/chain.rs +102 -0
  10. data/ext/cargo-vendor/anyhow-1.0.83/src/fmt.rs +158 -0
  11. data/ext/cargo-vendor/anyhow-1.0.83/src/kind.rs +121 -0
  12. data/ext/cargo-vendor/anyhow-1.0.83/src/lib.rs +702 -0
  13. data/ext/cargo-vendor/anyhow-1.0.83/src/macros.rs +241 -0
  14. data/ext/cargo-vendor/anyhow-1.0.83/src/wrapper.rs +84 -0
  15. data/ext/cargo-vendor/anyhow-1.0.83/tests/test_ensure.rs +724 -0
  16. data/ext/cargo-vendor/anyhow-1.0.83/tests/test_macros.rs +81 -0
  17. data/ext/cargo-vendor/anyhow-1.0.83/tests/test_repr.rs +30 -0
  18. data/ext/cargo-vendor/anyhow-1.0.83/tests/ui/no-impl.stderr +32 -0
  19. data/ext/cargo-vendor/cranelift-bforest-0.107.2/.cargo-checksum.json +1 -0
  20. data/ext/cargo-vendor/cranelift-bforest-0.107.2/Cargo.toml +40 -0
  21. data/ext/cargo-vendor/cranelift-codegen-0.107.2/.cargo-checksum.json +1 -0
  22. data/ext/cargo-vendor/cranelift-codegen-0.107.2/Cargo.toml +178 -0
  23. data/ext/cargo-vendor/cranelift-codegen-0.107.2/build.rs +396 -0
  24. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/alias_analysis.rs +403 -0
  25. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/binemit/mod.rs +171 -0
  26. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/bitset.rs +187 -0
  27. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/context.rs +386 -0
  28. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/egraph/elaborate.rs +835 -0
  29. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/egraph.rs +838 -0
  30. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/inst_predicates.rs +236 -0
  31. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/constant.rs +462 -0
  32. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/dfg.rs +1777 -0
  33. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/entities.rs +562 -0
  34. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/function.rs +490 -0
  35. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/instructions.rs +1019 -0
  36. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/memflags.rs +452 -0
  37. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/mod.rs +108 -0
  38. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/trapcode.rs +149 -0
  39. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/ir/types.rs +629 -0
  40. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/abi.rs +1707 -0
  41. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/emit.rs +3932 -0
  42. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst/mod.rs +3083 -0
  43. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/inst.isle +4218 -0
  44. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/lower/isle.rs +884 -0
  45. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/lower.isle +2933 -0
  46. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/mod.rs +242 -0
  47. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/aarch64/pcc.rs +565 -0
  48. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/call_conv.rs +127 -0
  49. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/abi.rs +1109 -0
  50. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/args.rs +1968 -0
  51. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/emit.rs +3466 -0
  52. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst/encode.rs +654 -0
  53. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/inst.isle +2944 -0
  54. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/lower/isle.rs +625 -0
  55. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/riscv64/lower.isle +2872 -0
  56. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/abi.rs +1047 -0
  57. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/args.rs +347 -0
  58. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst/emit.rs +3646 -0
  59. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/inst.isle +5033 -0
  60. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/s390x/lower.isle +3995 -0
  61. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/abi.rs +1369 -0
  62. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/encoding/evex.rs +748 -0
  63. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/encoding/rex.rs +596 -0
  64. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/encoding/vex.rs +491 -0
  65. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/args.rs +2289 -0
  66. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/emit.rs +4383 -0
  67. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/emit_state.rs +74 -0
  68. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst/mod.rs +2798 -0
  69. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/inst.isle +5304 -0
  70. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower/isle.rs +1066 -0
  71. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower.isle +4809 -0
  72. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/lower.rs +339 -0
  73. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/mod.rs +234 -0
  74. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/isa/x64/pcc.rs +1003 -0
  75. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/legalizer/mod.rs +348 -0
  76. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/abi.rs +2594 -0
  77. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/buffer.rs +2512 -0
  78. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/inst_common.rs +75 -0
  79. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/isle.rs +914 -0
  80. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/lower.rs +1452 -0
  81. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/mod.rs +555 -0
  82. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/pcc.rs +169 -0
  83. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/machinst/vcode.rs +1807 -0
  84. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/nan_canonicalization.rs +110 -0
  85. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/opts/cprop.isle +281 -0
  86. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/opts/spectre.isle +14 -0
  87. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/opts.rs +295 -0
  88. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/prelude.isle +646 -0
  89. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/result.rs +111 -0
  90. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/settings.rs +591 -0
  91. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/verifier/mod.rs +1957 -0
  92. data/ext/cargo-vendor/cranelift-codegen-0.107.2/src/write.rs +631 -0
  93. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/.cargo-checksum.json +1 -0
  94. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/Cargo.toml +35 -0
  95. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/shared/entities.rs +101 -0
  96. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/shared/formats.rs +205 -0
  97. data/ext/cargo-vendor/cranelift-codegen-meta-0.107.2/src/shared/instructions.rs +3791 -0
  98. data/ext/cargo-vendor/cranelift-codegen-shared-0.107.2/.cargo-checksum.json +1 -0
  99. data/ext/cargo-vendor/cranelift-codegen-shared-0.107.2/Cargo.toml +22 -0
  100. data/ext/cargo-vendor/cranelift-control-0.107.2/.cargo-checksum.json +1 -0
  101. data/ext/cargo-vendor/cranelift-control-0.107.2/Cargo.toml +30 -0
  102. data/ext/cargo-vendor/cranelift-entity-0.107.2/.cargo-checksum.json +1 -0
  103. data/ext/cargo-vendor/cranelift-entity-0.107.2/Cargo.toml +50 -0
  104. data/ext/cargo-vendor/cranelift-frontend-0.107.2/.cargo-checksum.json +1 -0
  105. data/ext/cargo-vendor/cranelift-frontend-0.107.2/Cargo.toml +69 -0
  106. data/ext/cargo-vendor/cranelift-isle-0.107.2/.cargo-checksum.json +1 -0
  107. data/ext/cargo-vendor/cranelift-isle-0.107.2/Cargo.toml +46 -0
  108. data/ext/cargo-vendor/cranelift-native-0.107.2/.cargo-checksum.json +1 -0
  109. data/ext/cargo-vendor/cranelift-native-0.107.2/Cargo.toml +45 -0
  110. data/ext/cargo-vendor/cranelift-wasm-0.107.2/.cargo-checksum.json +1 -0
  111. data/ext/cargo-vendor/cranelift-wasm-0.107.2/Cargo.toml +107 -0
  112. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/code_translator.rs +3683 -0
  113. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/environ/dummy.rs +912 -0
  114. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/environ/mod.rs +8 -0
  115. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/environ/spec.rs +945 -0
  116. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/func_translator.rs +296 -0
  117. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/lib.rs +58 -0
  118. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/state.rs +522 -0
  119. data/ext/cargo-vendor/cranelift-wasm-0.107.2/src/table.rs +104 -0
  120. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.21/.cargo-checksum.json +1 -0
  121. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.21/Cargo.toml +48 -0
  122. data/ext/cargo-vendor/mach2-0.4.2/.cargo-checksum.json +1 -0
  123. data/ext/cargo-vendor/mach2-0.4.2/Cargo.toml +49 -0
  124. data/ext/cargo-vendor/mach2-0.4.2/LICENSE-APACHE +176 -0
  125. data/ext/cargo-vendor/mach2-0.4.2/LICENSE-BSD +23 -0
  126. data/ext/cargo-vendor/mach2-0.4.2/LICENSE-MIT +25 -0
  127. data/ext/cargo-vendor/mach2-0.4.2/README.md +116 -0
  128. data/ext/cargo-vendor/mach2-0.4.2/src/exc.rs +73 -0
  129. data/ext/cargo-vendor/mach2-0.4.2/src/kern_return.rs +59 -0
  130. data/ext/cargo-vendor/mach2-0.4.2/src/lib.rs +59 -0
  131. data/ext/cargo-vendor/mach2-0.4.2/src/mach_port.rs +50 -0
  132. data/ext/cargo-vendor/mach2-0.4.2/src/message.rs +345 -0
  133. data/ext/cargo-vendor/mach2-0.4.2/src/ndr.rs +19 -0
  134. data/ext/cargo-vendor/mach2-0.4.2/src/port.rs +67 -0
  135. data/ext/cargo-vendor/mach2-0.4.2/src/semaphore.rs +22 -0
  136. data/ext/cargo-vendor/mach2-0.4.2/src/structs.rs +66 -0
  137. data/ext/cargo-vendor/mach2-0.4.2/src/sync_policy.rs +9 -0
  138. data/ext/cargo-vendor/mach2-0.4.2/src/task.rs +46 -0
  139. data/ext/cargo-vendor/mach2-0.4.2/src/task_info.rs +49 -0
  140. data/ext/cargo-vendor/mach2-0.4.2/src/thread_act.rs +36 -0
  141. data/ext/cargo-vendor/mach2-0.4.2/src/thread_policy.rs +121 -0
  142. data/ext/cargo-vendor/mach2-0.4.2/src/thread_status.rs +53 -0
  143. data/ext/cargo-vendor/mach2-0.4.2/src/traps.rs +37 -0
  144. data/ext/cargo-vendor/mach2-0.4.2/src/vm.rs +248 -0
  145. data/ext/cargo-vendor/mach2-0.4.2/src/vm_attributes.rs +18 -0
  146. data/ext/cargo-vendor/mach2-0.4.2/src/vm_page_size.rs +40 -0
  147. data/ext/cargo-vendor/mach2-0.4.2/src/vm_prot.rs +13 -0
  148. data/ext/cargo-vendor/mach2-0.4.2/src/vm_purgable.rs +42 -0
  149. data/ext/cargo-vendor/mach2-0.4.2/src/vm_region.rs +238 -0
  150. data/ext/cargo-vendor/mach2-0.4.2/src/vm_statistics.rs +58 -0
  151. data/ext/cargo-vendor/mach2-0.4.2/src/vm_sync.rs +11 -0
  152. data/ext/cargo-vendor/mach2-0.4.2/src/vm_types.rs +19 -0
  153. data/ext/cargo-vendor/object-0.33.0/.cargo-checksum.json +1 -0
  154. data/ext/cargo-vendor/object-0.33.0/CHANGELOG.md +797 -0
  155. data/ext/cargo-vendor/object-0.33.0/Cargo.toml +179 -0
  156. data/ext/cargo-vendor/object-0.33.0/LICENSE-APACHE +201 -0
  157. data/ext/cargo-vendor/object-0.33.0/LICENSE-MIT +25 -0
  158. data/ext/cargo-vendor/object-0.33.0/README.md +56 -0
  159. data/ext/cargo-vendor/object-0.33.0/src/archive.rs +91 -0
  160. data/ext/cargo-vendor/object-0.33.0/src/build/bytes.rs +141 -0
  161. data/ext/cargo-vendor/object-0.33.0/src/build/elf.rs +3033 -0
  162. data/ext/cargo-vendor/object-0.33.0/src/build/error.rs +41 -0
  163. data/ext/cargo-vendor/object-0.33.0/src/build/mod.rs +18 -0
  164. data/ext/cargo-vendor/object-0.33.0/src/build/table.rs +128 -0
  165. data/ext/cargo-vendor/object-0.33.0/src/common.rs +568 -0
  166. data/ext/cargo-vendor/object-0.33.0/src/elf.rs +6291 -0
  167. data/ext/cargo-vendor/object-0.33.0/src/endian.rs +831 -0
  168. data/ext/cargo-vendor/object-0.33.0/src/lib.rs +107 -0
  169. data/ext/cargo-vendor/object-0.33.0/src/macho.rs +3309 -0
  170. data/ext/cargo-vendor/object-0.33.0/src/pe.rs +3056 -0
  171. data/ext/cargo-vendor/object-0.33.0/src/pod.rs +239 -0
  172. data/ext/cargo-vendor/object-0.33.0/src/read/any.rs +1328 -0
  173. data/ext/cargo-vendor/object-0.33.0/src/read/archive.rs +759 -0
  174. data/ext/cargo-vendor/object-0.33.0/src/read/coff/comdat.rs +211 -0
  175. data/ext/cargo-vendor/object-0.33.0/src/read/coff/file.rs +383 -0
  176. data/ext/cargo-vendor/object-0.33.0/src/read/coff/import.rs +223 -0
  177. data/ext/cargo-vendor/object-0.33.0/src/read/coff/mod.rs +66 -0
  178. data/ext/cargo-vendor/object-0.33.0/src/read/coff/relocation.rs +108 -0
  179. data/ext/cargo-vendor/object-0.33.0/src/read/coff/section.rs +585 -0
  180. data/ext/cargo-vendor/object-0.33.0/src/read/coff/symbol.rs +635 -0
  181. data/ext/cargo-vendor/object-0.33.0/src/read/elf/attributes.rs +306 -0
  182. data/ext/cargo-vendor/object-0.33.0/src/read/elf/comdat.rs +162 -0
  183. data/ext/cargo-vendor/object-0.33.0/src/read/elf/compression.rs +56 -0
  184. data/ext/cargo-vendor/object-0.33.0/src/read/elf/dynamic.rs +117 -0
  185. data/ext/cargo-vendor/object-0.33.0/src/read/elf/file.rs +918 -0
  186. data/ext/cargo-vendor/object-0.33.0/src/read/elf/hash.rs +224 -0
  187. data/ext/cargo-vendor/object-0.33.0/src/read/elf/mod.rs +78 -0
  188. data/ext/cargo-vendor/object-0.33.0/src/read/elf/note.rs +271 -0
  189. data/ext/cargo-vendor/object-0.33.0/src/read/elf/relocation.rs +629 -0
  190. data/ext/cargo-vendor/object-0.33.0/src/read/elf/section.rs +1150 -0
  191. data/ext/cargo-vendor/object-0.33.0/src/read/elf/segment.rs +356 -0
  192. data/ext/cargo-vendor/object-0.33.0/src/read/elf/symbol.rs +595 -0
  193. data/ext/cargo-vendor/object-0.33.0/src/read/elf/version.rs +424 -0
  194. data/ext/cargo-vendor/object-0.33.0/src/read/macho/dyld_cache.rs +345 -0
  195. data/ext/cargo-vendor/object-0.33.0/src/read/macho/fat.rs +140 -0
  196. data/ext/cargo-vendor/object-0.33.0/src/read/macho/file.rs +783 -0
  197. data/ext/cargo-vendor/object-0.33.0/src/read/macho/load_command.rs +386 -0
  198. data/ext/cargo-vendor/object-0.33.0/src/read/macho/mod.rs +72 -0
  199. data/ext/cargo-vendor/object-0.33.0/src/read/macho/relocation.rs +149 -0
  200. data/ext/cargo-vendor/object-0.33.0/src/read/macho/section.rs +389 -0
  201. data/ext/cargo-vendor/object-0.33.0/src/read/macho/segment.rs +303 -0
  202. data/ext/cargo-vendor/object-0.33.0/src/read/macho/symbol.rs +492 -0
  203. data/ext/cargo-vendor/object-0.33.0/src/read/mod.rs +880 -0
  204. data/ext/cargo-vendor/object-0.33.0/src/read/pe/data_directory.rs +214 -0
  205. data/ext/cargo-vendor/object-0.33.0/src/read/pe/export.rs +334 -0
  206. data/ext/cargo-vendor/object-0.33.0/src/read/pe/file.rs +1053 -0
  207. data/ext/cargo-vendor/object-0.33.0/src/read/pe/import.rs +339 -0
  208. data/ext/cargo-vendor/object-0.33.0/src/read/pe/mod.rs +68 -0
  209. data/ext/cargo-vendor/object-0.33.0/src/read/pe/relocation.rs +92 -0
  210. data/ext/cargo-vendor/object-0.33.0/src/read/pe/resource.rs +210 -0
  211. data/ext/cargo-vendor/object-0.33.0/src/read/pe/rich.rs +92 -0
  212. data/ext/cargo-vendor/object-0.33.0/src/read/pe/section.rs +440 -0
  213. data/ext/cargo-vendor/object-0.33.0/src/read/read_cache.rs +213 -0
  214. data/ext/cargo-vendor/object-0.33.0/src/read/read_ref.rs +149 -0
  215. data/ext/cargo-vendor/object-0.33.0/src/read/traits.rs +551 -0
  216. data/ext/cargo-vendor/object-0.33.0/src/read/util.rs +425 -0
  217. data/ext/cargo-vendor/object-0.33.0/src/read/wasm.rs +966 -0
  218. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/comdat.rs +134 -0
  219. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/file.rs +697 -0
  220. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/mod.rs +63 -0
  221. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/relocation.rs +134 -0
  222. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/section.rs +433 -0
  223. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/segment.rs +117 -0
  224. data/ext/cargo-vendor/object-0.33.0/src/read/xcoff/symbol.rs +784 -0
  225. data/ext/cargo-vendor/object-0.33.0/src/write/coff/mod.rs +10 -0
  226. data/ext/cargo-vendor/object-0.33.0/src/write/coff/object.rs +678 -0
  227. data/ext/cargo-vendor/object-0.33.0/src/write/coff/writer.rs +518 -0
  228. data/ext/cargo-vendor/object-0.33.0/src/write/elf/mod.rs +9 -0
  229. data/ext/cargo-vendor/object-0.33.0/src/write/elf/object.rs +885 -0
  230. data/ext/cargo-vendor/object-0.33.0/src/write/elf/writer.rs +2309 -0
  231. data/ext/cargo-vendor/object-0.33.0/src/write/macho.rs +1107 -0
  232. data/ext/cargo-vendor/object-0.33.0/src/write/mod.rs +990 -0
  233. data/ext/cargo-vendor/object-0.33.0/src/write/pe.rs +847 -0
  234. data/ext/cargo-vendor/object-0.33.0/src/write/string.rs +186 -0
  235. data/ext/cargo-vendor/object-0.33.0/src/write/util.rs +261 -0
  236. data/ext/cargo-vendor/object-0.33.0/src/write/xcoff.rs +589 -0
  237. data/ext/cargo-vendor/object-0.33.0/src/xcoff.rs +905 -0
  238. data/ext/cargo-vendor/object-0.33.0/tests/integration.rs +2 -0
  239. data/ext/cargo-vendor/object-0.33.0/tests/parse_self.rs +25 -0
  240. data/ext/cargo-vendor/object-0.33.0/tests/read/coff.rs +23 -0
  241. data/ext/cargo-vendor/object-0.33.0/tests/read/elf.rs +47 -0
  242. data/ext/cargo-vendor/object-0.33.0/tests/read/mod.rs +4 -0
  243. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/bss.rs +255 -0
  244. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/coff.rs +58 -0
  245. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/comdat.rs +225 -0
  246. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/common.rs +245 -0
  247. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/elf.rs +289 -0
  248. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/macho.rs +64 -0
  249. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/mod.rs +704 -0
  250. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/section_flags.rs +90 -0
  251. data/ext/cargo-vendor/object-0.33.0/tests/round_trip/tls.rs +316 -0
  252. data/ext/cargo-vendor/wasi-common-20.0.0/.cargo-checksum.json +1 -0
  253. data/ext/cargo-vendor/wasi-common-20.0.0/Cargo.toml +220 -0
  254. data/ext/cargo-vendor/wasi-common-20.0.0/src/ctx.rs +128 -0
  255. data/ext/cargo-vendor/wasi-common-20.0.0/src/lib.rs +193 -0
  256. data/ext/cargo-vendor/wasi-common-20.0.0/src/snapshots/preview_1.rs +1497 -0
  257. data/ext/cargo-vendor/wasi-common-20.0.0/tests/all/async_.rs +293 -0
  258. data/ext/cargo-vendor/wasi-common-20.0.0/tests/all/sync.rs +279 -0
  259. data/ext/cargo-vendor/wasm-encoder-0.202.0/.cargo-checksum.json +1 -0
  260. data/ext/cargo-vendor/wasm-encoder-0.202.0/Cargo.toml +43 -0
  261. data/ext/cargo-vendor/wasm-encoder-0.202.0/src/component/types.rs +792 -0
  262. data/ext/cargo-vendor/wasm-encoder-0.208.1/.cargo-checksum.json +1 -0
  263. data/ext/cargo-vendor/wasm-encoder-0.208.1/Cargo.toml +46 -0
  264. data/ext/cargo-vendor/wasm-encoder-0.208.1/README.md +80 -0
  265. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/aliases.rs +160 -0
  266. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/builder.rs +455 -0
  267. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/canonicals.rs +159 -0
  268. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/components.rs +29 -0
  269. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/exports.rs +124 -0
  270. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/imports.rs +175 -0
  271. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/instances.rs +200 -0
  272. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/modules.rs +29 -0
  273. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/names.rs +149 -0
  274. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/start.rs +52 -0
  275. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component/types.rs +792 -0
  276. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/component.rs +168 -0
  277. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/code.rs +3595 -0
  278. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/custom.rs +73 -0
  279. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/data.rs +186 -0
  280. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/dump.rs +627 -0
  281. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/elements.rs +221 -0
  282. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/exports.rs +98 -0
  283. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/functions.rs +63 -0
  284. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/globals.rs +112 -0
  285. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/imports.rs +157 -0
  286. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/linking.rs +263 -0
  287. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/memories.rs +128 -0
  288. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/names.rs +298 -0
  289. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/producers.rs +181 -0
  290. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/start.rs +39 -0
  291. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/tables.rs +134 -0
  292. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/tags.rs +104 -0
  293. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core/types.rs +678 -0
  294. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/core.rs +168 -0
  295. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/lib.rs +215 -0
  296. data/ext/cargo-vendor/wasm-encoder-0.208.1/src/raw.rs +30 -0
  297. data/ext/cargo-vendor/wasmparser-0.202.0/.cargo-checksum.json +1 -0
  298. data/ext/cargo-vendor/wasmparser-0.202.0/Cargo.lock +744 -0
  299. data/ext/cargo-vendor/wasmparser-0.202.0/Cargo.toml +66 -0
  300. data/ext/cargo-vendor/wasmparser-0.202.0/src/readers/component/types.rs +549 -0
  301. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/operators.rs +4076 -0
  302. data/ext/cargo-vendor/wasmparser-0.202.0/src/validator/types.rs +4449 -0
  303. data/ext/cargo-vendor/wasmprinter-0.202.0/.cargo-checksum.json +1 -0
  304. data/ext/cargo-vendor/wasmprinter-0.202.0/Cargo.toml +45 -0
  305. data/ext/cargo-vendor/wasmprinter-0.202.0/src/lib.rs +3202 -0
  306. data/ext/cargo-vendor/wasmprinter-0.202.0/src/operator.rs +1131 -0
  307. data/ext/cargo-vendor/wasmprinter-0.202.0/tests/all.rs +279 -0
  308. data/ext/cargo-vendor/wasmtime-20.0.0/.cargo-checksum.json +1 -0
  309. data/ext/cargo-vendor/wasmtime-20.0.0/Cargo.toml +268 -0
  310. data/ext/cargo-vendor/wasmtime-20.0.0/src/compile/code_builder.rs +201 -0
  311. data/ext/cargo-vendor/wasmtime-20.0.0/src/compile/runtime.rs +175 -0
  312. data/ext/cargo-vendor/wasmtime-20.0.0/src/compile.rs +897 -0
  313. data/ext/cargo-vendor/wasmtime-20.0.0/src/config.rs +2695 -0
  314. data/ext/cargo-vendor/wasmtime-20.0.0/src/engine/serialization.rs +849 -0
  315. data/ext/cargo-vendor/wasmtime-20.0.0/src/engine.rs +741 -0
  316. data/ext/cargo-vendor/wasmtime-20.0.0/src/lib.rs +303 -0
  317. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/code_memory.rs +335 -0
  318. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/component.rs +661 -0
  319. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/func/host.rs +439 -0
  320. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/func/options.rs +554 -0
  321. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/func/typed.rs +2484 -0
  322. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/func.rs +747 -0
  323. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/instance.rs +804 -0
  324. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/linker.rs +786 -0
  325. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/matching.rs +217 -0
  326. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/mod.rs +756 -0
  327. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/resources.rs +1133 -0
  328. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/types.rs +892 -0
  329. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/component/values.rs +978 -0
  330. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/coredump.rs +336 -0
  331. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/externals/global.rs +300 -0
  332. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/externals/table.rs +480 -0
  333. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/func/typed.rs +898 -0
  334. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/func.rs +2633 -0
  335. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/disabled/anyref.rs +46 -0
  336. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/disabled/externref.rs +50 -0
  337. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/disabled/i31.rs +14 -0
  338. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/disabled/rooting.rs +222 -0
  339. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/disabled.rs +17 -0
  340. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/enabled/anyref.rs +472 -0
  341. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/enabled/externref.rs +644 -0
  342. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/enabled/i31.rs +345 -0
  343. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/enabled/rooting.rs +1543 -0
  344. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc/enabled.rs +12 -0
  345. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/gc.rs +87 -0
  346. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/instance.rs +992 -0
  347. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/instantiate.rs +345 -0
  348. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/linker.rs +1521 -0
  349. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/memory.rs +999 -0
  350. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/module/registry.rs +354 -0
  351. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/module.rs +1295 -0
  352. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/profiling.rs +224 -0
  353. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/store/data.rs +289 -0
  354. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/store.rs +2796 -0
  355. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/trampoline/func.rs +138 -0
  356. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/trampoline/global.rs +68 -0
  357. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/trampoline/memory.rs +286 -0
  358. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/trampoline/table.rs +34 -0
  359. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/trap.rs +641 -0
  360. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/type_registry.rs +632 -0
  361. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/types/matching.rs +367 -0
  362. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/types.rs +1378 -0
  363. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/v128.rs +131 -0
  364. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime/values.rs +945 -0
  365. data/ext/cargo-vendor/wasmtime-20.0.0/src/runtime.rs +112 -0
  366. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.0/.cargo-checksum.json +1 -0
  367. data/ext/cargo-vendor/wasmtime-asm-macros-20.0.0/Cargo.toml +22 -0
  368. data/ext/cargo-vendor/wasmtime-cache-20.0.0/.cargo-checksum.json +1 -0
  369. data/ext/cargo-vendor/wasmtime-cache-20.0.0/Cargo.toml +81 -0
  370. data/ext/cargo-vendor/wasmtime-component-macro-20.0.0/.cargo-checksum.json +1 -0
  371. data/ext/cargo-vendor/wasmtime-component-macro-20.0.0/Cargo.toml +67 -0
  372. data/ext/cargo-vendor/wasmtime-component-macro-20.0.0/src/component.rs +1295 -0
  373. data/ext/cargo-vendor/wasmtime-component-macro-20.0.0/tests/codegen/dead-code.wit +27 -0
  374. data/ext/cargo-vendor/wasmtime-component-macro-20.0.0/tests/codegen.rs +342 -0
  375. data/ext/cargo-vendor/wasmtime-component-util-20.0.0/.cargo-checksum.json +1 -0
  376. data/ext/cargo-vendor/wasmtime-component-util-20.0.0/Cargo.toml +25 -0
  377. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/.cargo-checksum.json +1 -0
  378. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/Cargo.toml +114 -0
  379. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/builder.rs +127 -0
  380. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/compiled_function.rs +225 -0
  381. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/compiler/component.rs +962 -0
  382. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/compiler.rs +1369 -0
  383. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/debug/transform/address_transform.rs +783 -0
  384. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/debug/transform/expression.rs +1252 -0
  385. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/func_environ.rs +2672 -0
  386. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/gc/disabled.rs +116 -0
  387. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/gc/enabled.rs +649 -0
  388. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/gc.rs +198 -0
  389. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/lib.rs +505 -0
  390. data/ext/cargo-vendor/wasmtime-cranelift-20.0.0/src/obj.rs +545 -0
  391. data/ext/cargo-vendor/wasmtime-environ-20.0.0/.cargo-checksum.json +1 -0
  392. data/ext/cargo-vendor/wasmtime-environ-20.0.0/Cargo.lock +782 -0
  393. data/ext/cargo-vendor/wasmtime-environ-20.0.0/Cargo.toml +144 -0
  394. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/address_map.rs +125 -0
  395. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/builtin.rs +184 -0
  396. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/compile/address_map.rs +72 -0
  397. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/compile/mod.rs +389 -0
  398. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/compile/module_artifacts.rs +300 -0
  399. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/compile/trap_encoding.rs +69 -0
  400. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/component/artifacts.rs +72 -0
  401. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/component/compiler.rs +19 -0
  402. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/component/info.rs +672 -0
  403. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/component/translate/adapt.rs +459 -0
  404. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/component/translate/inline.rs +1332 -0
  405. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/component/types.rs +1972 -0
  406. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/component.rs +103 -0
  407. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/fact/trampoline.rs +3233 -0
  408. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/fact/transcode.rs +89 -0
  409. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/fact.rs +711 -0
  410. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/gc.rs +60 -0
  411. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/lib.rs +70 -0
  412. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/module.rs +780 -0
  413. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/module_artifacts.rs +145 -0
  414. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/module_environ.rs +1288 -0
  415. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/obj.rs +173 -0
  416. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/trap_encoding.rs +188 -0
  417. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/tunables.rs +158 -0
  418. data/ext/cargo-vendor/wasmtime-environ-20.0.0/src/vmoffsets.rs +952 -0
  419. data/ext/cargo-vendor/wasmtime-fiber-20.0.0/.cargo-checksum.json +1 -0
  420. data/ext/cargo-vendor/wasmtime-fiber-20.0.0/Cargo.toml +63 -0
  421. data/ext/cargo-vendor/wasmtime-fiber-20.0.0/src/unix.rs +265 -0
  422. data/ext/cargo-vendor/wasmtime-jit-debug-20.0.0/.cargo-checksum.json +1 -0
  423. data/ext/cargo-vendor/wasmtime-jit-debug-20.0.0/Cargo.toml +67 -0
  424. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.0/.cargo-checksum.json +1 -0
  425. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-20.0.0/Cargo.toml +47 -0
  426. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/.cargo-checksum.json +1 -0
  427. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/Cargo.toml +147 -0
  428. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/build.rs +24 -0
  429. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/arch/aarch64.rs +76 -0
  430. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/arch/riscv64.rs +41 -0
  431. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/arch/s390x.S +70 -0
  432. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/arch/s390x.rs +34 -0
  433. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/arch/x86_64.rs +41 -0
  434. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/async_yield.rs +35 -0
  435. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/component/libcalls.rs +571 -0
  436. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/component.rs +860 -0
  437. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/export.rs +108 -0
  438. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/disabled.rs +23 -0
  439. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/enabled/drc.rs +963 -0
  440. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/enabled/externref.rs +115 -0
  441. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/enabled/free_list.rs +767 -0
  442. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/enabled.rs +18 -0
  443. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/gc_ref.rs +486 -0
  444. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/gc_runtime.rs +503 -0
  445. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/host_data.rs +81 -0
  446. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc/i31.rs +86 -0
  447. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/gc.rs +244 -0
  448. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/instance/allocator/on_demand.rs +217 -0
  449. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/instance/allocator/pooling/gc_heap_pool.rs +92 -0
  450. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/instance/allocator/pooling/table_pool.rs +231 -0
  451. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/instance/allocator/pooling.rs +699 -0
  452. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/instance/allocator.rs +780 -0
  453. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/instance.rs +1566 -0
  454. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/lib.rs +289 -0
  455. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/libcalls.rs +777 -0
  456. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/memory.rs +751 -0
  457. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/send_sync_ptr.rs +106 -0
  458. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/sys/custom/mmap.rs +111 -0
  459. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/sys/custom/traphandlers.rs +55 -0
  460. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/sys/miri/mmap.rs +94 -0
  461. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/sys/unix/machports.rs +416 -0
  462. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/sys/unix/mmap.rs +151 -0
  463. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/sys/unix/signals.rs +401 -0
  464. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/sys/windows/traphandlers.rs +104 -0
  465. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/table.rs +851 -0
  466. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/threads/mod.rs +12 -0
  467. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/threads/shared_memory.rs +230 -0
  468. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/threads/shared_memory_disabled.rs +100 -0
  469. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/traphandlers/coredump_disabled.rs +16 -0
  470. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/traphandlers/coredump_enabled.rs +40 -0
  471. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/traphandlers.rs +785 -0
  472. data/ext/cargo-vendor/wasmtime-runtime-20.0.0/src/vmcontext.rs +1293 -0
  473. data/ext/cargo-vendor/wasmtime-slab-20.0.0/.cargo-checksum.json +1 -0
  474. data/ext/cargo-vendor/wasmtime-slab-20.0.0/Cargo.toml +21 -0
  475. data/ext/cargo-vendor/wasmtime-slab-20.0.0/src/lib.rs +493 -0
  476. data/ext/cargo-vendor/wasmtime-types-20.0.2/.cargo-checksum.json +1 -0
  477. data/ext/cargo-vendor/wasmtime-types-20.0.2/Cargo.toml +36 -0
  478. data/ext/cargo-vendor/wasmtime-types-20.0.2/src/lib.rs +832 -0
  479. data/ext/cargo-vendor/wasmtime-versioned-export-macros-20.0.0/.cargo-checksum.json +1 -0
  480. data/ext/cargo-vendor/wasmtime-versioned-export-macros-20.0.0/Cargo.toml +32 -0
  481. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/.cargo-checksum.json +1 -0
  482. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/Cargo.toml +194 -0
  483. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/bindings.rs +283 -0
  484. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/ctx.rs +659 -0
  485. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/filesystem.rs +433 -0
  486. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/host/filesystem/sync.rs +518 -0
  487. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/host/filesystem.rs +1079 -0
  488. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/host/io.rs +367 -0
  489. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/host/network.rs +539 -0
  490. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/host/tcp.rs +306 -0
  491. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/ip_name_lookup.rs +126 -0
  492. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/lib.rs +404 -0
  493. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/network.rs +107 -0
  494. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/pipe.rs +826 -0
  495. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/poll.rs +233 -0
  496. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/preview0.rs +879 -0
  497. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/preview1.rs +2601 -0
  498. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/runtime.rs +175 -0
  499. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/stdio/worker_thread_stdin.rs +177 -0
  500. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/stdio.rs +507 -0
  501. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/tcp.rs +847 -0
  502. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/udp.rs +125 -0
  503. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/src/write_stream.rs +203 -0
  504. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/tests/all/api.rs +194 -0
  505. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/tests/all/async_.rs +397 -0
  506. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/tests/all/main.rs +91 -0
  507. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/tests/all/preview1.rs +251 -0
  508. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/tests/all/sync.rs +333 -0
  509. data/ext/cargo-vendor/wasmtime-wasi-20.0.0/wit/deps/io/poll.wit +41 -0
  510. data/ext/cargo-vendor/wasmtime-winch-20.0.0/.cargo-checksum.json +1 -0
  511. data/ext/cargo-vendor/wasmtime-winch-20.0.0/Cargo.toml +81 -0
  512. data/ext/cargo-vendor/wasmtime-winch-20.0.0/src/builder.rs +85 -0
  513. data/ext/cargo-vendor/wasmtime-winch-20.0.0/src/compiler.rs +257 -0
  514. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.0/.cargo-checksum.json +1 -0
  515. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.0/Cargo.toml +41 -0
  516. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.0/src/lib.rs +2213 -0
  517. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.0/src/rust.rs +421 -0
  518. data/ext/cargo-vendor/wasmtime-wit-bindgen-20.0.0/src/types.rs +202 -0
  519. data/ext/cargo-vendor/wast-208.0.1/.cargo-checksum.json +1 -0
  520. data/ext/cargo-vendor/wast-208.0.1/Cargo.toml +60 -0
  521. data/ext/cargo-vendor/wast-208.0.1/src/component/binary.rs +1000 -0
  522. data/ext/cargo-vendor/wast-208.0.1/src/component/resolve.rs +1007 -0
  523. data/ext/cargo-vendor/wast-208.0.1/src/component/types.rs +999 -0
  524. data/ext/cargo-vendor/wast-208.0.1/src/component/wast.rs +160 -0
  525. data/ext/cargo-vendor/wast-208.0.1/src/core/binary.rs +1396 -0
  526. data/ext/cargo-vendor/wast-208.0.1/src/core/expr.rs +2016 -0
  527. data/ext/cargo-vendor/wast-208.0.1/src/core/func.rs +136 -0
  528. data/ext/cargo-vendor/wast-208.0.1/src/core/memory.rs +284 -0
  529. data/ext/cargo-vendor/wast-208.0.1/src/core/resolve/deinline_import_export.rs +235 -0
  530. data/ext/cargo-vendor/wast-208.0.1/src/core/resolve/names.rs +751 -0
  531. data/ext/cargo-vendor/wast-208.0.1/src/core/resolve/types.rs +267 -0
  532. data/ext/cargo-vendor/wast-208.0.1/src/core/table.rs +302 -0
  533. data/ext/cargo-vendor/wast-208.0.1/src/core/types.rs +901 -0
  534. data/ext/cargo-vendor/wast-208.0.1/src/core/wast.rs +256 -0
  535. data/ext/cargo-vendor/wast-208.0.1/src/lib.rs +551 -0
  536. data/ext/cargo-vendor/wast-208.0.1/src/names.rs +67 -0
  537. data/ext/cargo-vendor/wast-208.0.1/src/parser.rs +1377 -0
  538. data/ext/cargo-vendor/wast-208.0.1/src/token.rs +737 -0
  539. data/ext/cargo-vendor/wast-208.0.1/src/wast.rs +459 -0
  540. data/ext/cargo-vendor/wast-208.0.1/src/wat.rs +71 -0
  541. data/ext/cargo-vendor/wast-208.0.1/tests/annotations.rs +200 -0
  542. data/ext/cargo-vendor/wast-208.0.1/tests/parse-fail.rs +80 -0
  543. data/ext/cargo-vendor/wat-1.208.1/.cargo-checksum.json +1 -0
  544. data/ext/cargo-vendor/wat-1.208.1/Cargo.toml +34 -0
  545. data/ext/cargo-vendor/wiggle-20.0.0/.cargo-checksum.json +1 -0
  546. data/ext/cargo-vendor/wiggle-20.0.0/Cargo.toml +122 -0
  547. data/ext/cargo-vendor/wiggle-20.0.0/src/borrow.rs +113 -0
  548. data/ext/cargo-vendor/wiggle-20.0.0/src/guest_type.rs +237 -0
  549. data/ext/cargo-vendor/wiggle-20.0.0/src/lib.rs +1184 -0
  550. data/ext/cargo-vendor/wiggle-20.0.0/src/wasmtime.rs +97 -0
  551. data/ext/cargo-vendor/wiggle-generate-20.0.0/.cargo-checksum.json +1 -0
  552. data/ext/cargo-vendor/wiggle-generate-20.0.0/Cargo.toml +65 -0
  553. data/ext/cargo-vendor/wiggle-macro-20.0.0/.cargo-checksum.json +1 -0
  554. data/ext/cargo-vendor/wiggle-macro-20.0.0/Cargo.toml +55 -0
  555. data/ext/cargo-vendor/wiggle-macro-20.0.0/LICENSE +220 -0
  556. data/ext/cargo-vendor/winch-codegen-0.18.0/.cargo-checksum.json +1 -0
  557. data/ext/cargo-vendor/winch-codegen-0.18.0/Cargo.toml +81 -0
  558. data/ext/cargo-vendor/winch-codegen-0.18.0/src/abi/mod.rs +671 -0
  559. data/ext/cargo-vendor/winch-codegen-0.18.0/src/codegen/bounds.rs +220 -0
  560. data/ext/cargo-vendor/winch-codegen-0.18.0/src/codegen/builtin.rs +263 -0
  561. data/ext/cargo-vendor/winch-codegen-0.18.0/src/codegen/call.rs +413 -0
  562. data/ext/cargo-vendor/winch-codegen-0.18.0/src/codegen/env.rs +435 -0
  563. data/ext/cargo-vendor/winch-codegen-0.18.0/src/codegen/mod.rs +756 -0
  564. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/aarch64/abi.rs +291 -0
  565. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/aarch64/asm.rs +252 -0
  566. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/aarch64/masm.rs +573 -0
  567. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/aarch64/mod.rs +154 -0
  568. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/aarch64/regs.rs +149 -0
  569. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/mod.rs +223 -0
  570. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/x64/abi.rs +517 -0
  571. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/x64/asm.rs +1423 -0
  572. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/x64/masm.rs +1256 -0
  573. data/ext/cargo-vendor/winch-codegen-0.18.0/src/isa/x64/mod.rs +169 -0
  574. data/ext/cargo-vendor/winch-codegen-0.18.0/src/lib.rs +19 -0
  575. data/ext/cargo-vendor/winch-codegen-0.18.0/src/masm.rs +947 -0
  576. data/ext/cargo-vendor/winch-codegen-0.18.0/src/visitor.rs +2149 -0
  577. data/ext/cargo-vendor/wit-parser-0.202.0/.cargo-checksum.json +1 -0
  578. data/ext/cargo-vendor/wit-parser-0.202.0/Cargo.toml +101 -0
  579. data/ext/cargo-vendor/wit-parser-0.202.0/src/abi.rs +309 -0
  580. data/ext/cargo-vendor/wit-parser-0.202.0/src/ast/lex.rs +747 -0
  581. data/ext/cargo-vendor/wit-parser-0.202.0/src/ast/resolve.rs +1443 -0
  582. data/ext/cargo-vendor/wit-parser-0.202.0/src/ast.rs +1348 -0
  583. data/ext/cargo-vendor/wit-parser-0.202.0/src/decoding.rs +1764 -0
  584. data/ext/cargo-vendor/wit-parser-0.202.0/src/lib.rs +765 -0
  585. data/ext/cargo-vendor/wit-parser-0.202.0/src/resolve.rs +2240 -0
  586. data/ext/cargo-vendor/wit-parser-0.202.0/src/serde_.rs +108 -0
  587. data/ext/cargo-vendor/wit-parser-0.202.0/src/sizealign.rs +179 -0
  588. data/ext/cargo-vendor/wit-parser-0.202.0/tests/all.rs +153 -0
  589. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/functions.wit +14 -0
  590. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/functions.wit.json +166 -0
  591. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/resources-multiple.wit +20 -0
  592. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/resources-multiple.wit.json +281 -0
  593. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/types.wit +60 -0
  594. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/types.wit.json +774 -0
  595. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/union-fuzz-2.wit +12 -0
  596. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/union-fuzz-2.wit.json +72 -0
  597. data/ext/cargo-vendor/wit-parser-0.202.0/tests/ui/wasi.wit +178 -0
  598. data/ext/src/ruby_api/convert.rs +15 -7
  599. data/ext/src/ruby_api/func.rs +2 -2
  600. data/ext/src/ruby_api/global.rs +2 -2
  601. data/ext/src/ruby_api/params.rs +5 -5
  602. data/ext/src/ruby_api/table.rs +3 -3
  603. data/lib/wasmtime/version.rb +1 -1
  604. metadata +1737 -1630
  605. data/ext/cargo-vendor/anyhow-1.0.79/.cargo-checksum.json +0 -1
  606. data/ext/cargo-vendor/anyhow-1.0.79/Cargo.toml +0 -67
  607. data/ext/cargo-vendor/anyhow-1.0.79/README.md +0 -179
  608. data/ext/cargo-vendor/anyhow-1.0.79/build.rs +0 -167
  609. data/ext/cargo-vendor/anyhow-1.0.79/src/backtrace.rs +0 -405
  610. data/ext/cargo-vendor/anyhow-1.0.79/src/chain.rs +0 -102
  611. data/ext/cargo-vendor/anyhow-1.0.79/src/fmt.rs +0 -156
  612. data/ext/cargo-vendor/anyhow-1.0.79/src/kind.rs +0 -119
  613. data/ext/cargo-vendor/anyhow-1.0.79/src/lib.rs +0 -698
  614. data/ext/cargo-vendor/anyhow-1.0.79/src/macros.rs +0 -231
  615. data/ext/cargo-vendor/anyhow-1.0.79/src/wrapper.rs +0 -81
  616. data/ext/cargo-vendor/anyhow-1.0.79/tests/test_ensure.rs +0 -722
  617. data/ext/cargo-vendor/anyhow-1.0.79/tests/test_macros.rs +0 -80
  618. data/ext/cargo-vendor/anyhow-1.0.79/tests/test_repr.rs +0 -31
  619. data/ext/cargo-vendor/anyhow-1.0.79/tests/ui/no-impl.stderr +0 -31
  620. data/ext/cargo-vendor/cranelift-bforest-0.106.2/.cargo-checksum.json +0 -1
  621. data/ext/cargo-vendor/cranelift-bforest-0.106.2/Cargo.toml +0 -40
  622. data/ext/cargo-vendor/cranelift-codegen-0.106.2/.cargo-checksum.json +0 -1
  623. data/ext/cargo-vendor/cranelift-codegen-0.106.2/Cargo.toml +0 -175
  624. data/ext/cargo-vendor/cranelift-codegen-0.106.2/build.rs +0 -395
  625. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/alias_analysis.rs +0 -409
  626. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/binemit/mod.rs +0 -171
  627. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/bitset.rs +0 -165
  628. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/context.rs +0 -384
  629. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/egraph/elaborate.rs +0 -836
  630. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/egraph.rs +0 -702
  631. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/inst_predicates.rs +0 -217
  632. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/constant.rs +0 -462
  633. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/dfg.rs +0 -1734
  634. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/entities.rs +0 -598
  635. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/function.rs +0 -500
  636. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/instructions.rs +0 -1000
  637. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/memflags.rs +0 -310
  638. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/mod.rs +0 -110
  639. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/table.rs +0 -40
  640. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/trapcode.rs +0 -144
  641. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/ir/types.rs +0 -629
  642. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/abi.rs +0 -1707
  643. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/inst/emit.rs +0 -3958
  644. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/inst/mod.rs +0 -3082
  645. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/inst.isle +0 -4197
  646. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/lower/isle.rs +0 -879
  647. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/lower.isle +0 -2917
  648. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/mod.rs +0 -241
  649. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/aarch64/pcc.rs +0 -565
  650. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/call_conv.rs +0 -119
  651. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/riscv64/abi.rs +0 -1097
  652. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/riscv64/inst/args.rs +0 -1974
  653. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/riscv64/inst/emit.rs +0 -3485
  654. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/riscv64/inst/encode.rs +0 -654
  655. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/riscv64/inst.isle +0 -2928
  656. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/riscv64/lower/isle.rs +0 -620
  657. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/riscv64/lower.isle +0 -2864
  658. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/s390x/abi.rs +0 -1041
  659. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/s390x/inst/args.rs +0 -355
  660. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/s390x/inst/emit.rs +0 -3663
  661. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/s390x/inst.isle +0 -5031
  662. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/s390x/lower.isle +0 -3979
  663. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/abi.rs +0 -1303
  664. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/encoding/evex.rs +0 -749
  665. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/encoding/rex.rs +0 -598
  666. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/encoding/vex.rs +0 -492
  667. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/inst/args.rs +0 -2269
  668. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/inst/emit.rs +0 -4390
  669. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/inst/emit_state.rs +0 -72
  670. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/inst/mod.rs +0 -2852
  671. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/inst.isle +0 -5232
  672. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/lower/isle.rs +0 -1065
  673. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/lower.isle +0 -4770
  674. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/lower.rs +0 -353
  675. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/mod.rs +0 -233
  676. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/isa/x64/pcc.rs +0 -939
  677. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/legalizer/mod.rs +0 -356
  678. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/legalizer/table.rs +0 -114
  679. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/abi.rs +0 -2657
  680. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/buffer.rs +0 -2509
  681. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/inst_common.rs +0 -74
  682. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/isle.rs +0 -914
  683. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/lower.rs +0 -1443
  684. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/mod.rs +0 -558
  685. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/pcc.rs +0 -159
  686. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/machinst/vcode.rs +0 -1809
  687. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/nan_canonicalization.rs +0 -106
  688. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/opts/cprop.isle +0 -266
  689. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/opts.rs +0 -284
  690. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/prelude.isle +0 -641
  691. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/result.rs +0 -108
  692. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/settings.rs +0 -602
  693. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/verifier/mod.rs +0 -2033
  694. data/ext/cargo-vendor/cranelift-codegen-0.106.2/src/write.rs +0 -647
  695. data/ext/cargo-vendor/cranelift-codegen-meta-0.106.2/.cargo-checksum.json +0 -1
  696. data/ext/cargo-vendor/cranelift-codegen-meta-0.106.2/Cargo.toml +0 -35
  697. data/ext/cargo-vendor/cranelift-codegen-meta-0.106.2/src/shared/entities.rs +0 -106
  698. data/ext/cargo-vendor/cranelift-codegen-meta-0.106.2/src/shared/formats.rs +0 -213
  699. data/ext/cargo-vendor/cranelift-codegen-meta-0.106.2/src/shared/instructions.rs +0 -3810
  700. data/ext/cargo-vendor/cranelift-codegen-shared-0.106.2/.cargo-checksum.json +0 -1
  701. data/ext/cargo-vendor/cranelift-codegen-shared-0.106.2/Cargo.toml +0 -22
  702. data/ext/cargo-vendor/cranelift-control-0.106.2/.cargo-checksum.json +0 -1
  703. data/ext/cargo-vendor/cranelift-control-0.106.2/Cargo.toml +0 -30
  704. data/ext/cargo-vendor/cranelift-entity-0.106.2/.cargo-checksum.json +0 -1
  705. data/ext/cargo-vendor/cranelift-entity-0.106.2/Cargo.toml +0 -50
  706. data/ext/cargo-vendor/cranelift-frontend-0.106.2/.cargo-checksum.json +0 -1
  707. data/ext/cargo-vendor/cranelift-frontend-0.106.2/Cargo.toml +0 -68
  708. data/ext/cargo-vendor/cranelift-isle-0.106.2/.cargo-checksum.json +0 -1
  709. data/ext/cargo-vendor/cranelift-isle-0.106.2/Cargo.toml +0 -46
  710. data/ext/cargo-vendor/cranelift-native-0.106.2/.cargo-checksum.json +0 -1
  711. data/ext/cargo-vendor/cranelift-native-0.106.2/Cargo.toml +0 -43
  712. data/ext/cargo-vendor/cranelift-wasm-0.106.2/.cargo-checksum.json +0 -1
  713. data/ext/cargo-vendor/cranelift-wasm-0.106.2/Cargo.toml +0 -106
  714. data/ext/cargo-vendor/cranelift-wasm-0.106.2/src/code_translator.rs +0 -3680
  715. data/ext/cargo-vendor/cranelift-wasm-0.106.2/src/environ/dummy.rs +0 -952
  716. data/ext/cargo-vendor/cranelift-wasm-0.106.2/src/environ/mod.rs +0 -12
  717. data/ext/cargo-vendor/cranelift-wasm-0.106.2/src/environ/spec.rs +0 -952
  718. data/ext/cargo-vendor/cranelift-wasm-0.106.2/src/func_translator.rs +0 -432
  719. data/ext/cargo-vendor/cranelift-wasm-0.106.2/src/lib.rs +0 -62
  720. data/ext/cargo-vendor/cranelift-wasm-0.106.2/src/state.rs +0 -542
  721. data/ext/cargo-vendor/cranelift-wasm-0.106.2/tests/wasm_testsuite.rs +0 -153
  722. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/arith.wat +0 -13
  723. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/br_table.wat +0 -30
  724. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/call-simd.wat +0 -14
  725. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/call.wat +0 -10
  726. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/embenchen_fannkuch.wat +0 -12180
  727. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/embenchen_fasta.wat +0 -12056
  728. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/embenchen_ifs.wat +0 -11505
  729. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/embenchen_primes.wat +0 -11185
  730. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/fac-multi-value.wat +0 -19
  731. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/fibonacci.wat +0 -22
  732. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/globals.wat +0 -8
  733. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/icall-simd.wat +0 -7
  734. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/icall.wat +0 -7
  735. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-reachability-translation-0.wat +0 -12
  736. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-reachability-translation-1.wat +0 -12
  737. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-reachability-translation-2.wat +0 -12
  738. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-reachability-translation-3.wat +0 -12
  739. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-reachability-translation-4.wat +0 -12
  740. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-reachability-translation-5.wat +0 -14
  741. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-reachability-translation-6.wat +0 -14
  742. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-unreachable-else-params-2.wat +0 -18
  743. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/if-unreachable-else-params.wat +0 -41
  744. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/issue-1306-name-section-with-u32-max-function-index.wasm +0 -0
  745. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/memory.wat +0 -11
  746. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-0.wat +0 -3
  747. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-1.wat +0 -6
  748. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-10.wat +0 -10
  749. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-11.wat +0 -7
  750. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-12.wat +0 -9
  751. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-13.wat +0 -10
  752. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-14.wat +0 -10
  753. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-15.wat +0 -22
  754. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-16.wat +0 -9
  755. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-17.wat +0 -26
  756. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-2.wat +0 -6
  757. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-3.wat +0 -13
  758. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-4.wat +0 -13
  759. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-5.wat +0 -11
  760. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-6.wat +0 -11
  761. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-7.wat +0 -9
  762. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-8.wat +0 -12
  763. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/multi-9.wat +0 -15
  764. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/nullref.wat +0 -11
  765. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/passive-data.wat +0 -12
  766. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/pr2303.wat +0 -15
  767. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/pr2559.wat +0 -51
  768. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/ref-func-0.wat +0 -12
  769. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/rust_fannkuch.wat +0 -1723
  770. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/select.wat +0 -19
  771. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/simd-store.wat +0 -83
  772. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/simd.wat +0 -29
  773. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/table-copy.wat +0 -22
  774. data/ext/cargo-vendor/cranelift-wasm-0.106.2/wasmtests/unreachable_code.wat +0 -77
  775. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.20/.cargo-checksum.json +0 -1
  776. data/ext/cargo-vendor/deterministic-wasi-ctx-0.1.20/Cargo.toml +0 -49
  777. data/ext/cargo-vendor/mach-0.3.2/.cargo-checksum.json +0 -1
  778. data/ext/cargo-vendor/mach-0.3.2/Cargo.toml +0 -46
  779. data/ext/cargo-vendor/mach-0.3.2/LICENSE.md +0 -23
  780. data/ext/cargo-vendor/mach-0.3.2/README.md +0 -55
  781. data/ext/cargo-vendor/mach-0.3.2/ci/build_fail.sh +0 -7
  782. data/ext/cargo-vendor/mach-0.3.2/ci/deploy_and_run_on_ios_simulator.rs +0 -175
  783. data/ext/cargo-vendor/mach-0.3.2/ci/run.sh +0 -57
  784. data/ext/cargo-vendor/mach-0.3.2/examples/dump_process_registers.rs +0 -136
  785. data/ext/cargo-vendor/mach-0.3.2/src/exc.rs +0 -44
  786. data/ext/cargo-vendor/mach-0.3.2/src/kern_return.rs +0 -58
  787. data/ext/cargo-vendor/mach-0.3.2/src/lib.rs +0 -60
  788. data/ext/cargo-vendor/mach-0.3.2/src/mach_port.rs +0 -29
  789. data/ext/cargo-vendor/mach-0.3.2/src/message.rs +0 -248
  790. data/ext/cargo-vendor/mach-0.3.2/src/port.rs +0 -26
  791. data/ext/cargo-vendor/mach-0.3.2/src/structs.rs +0 -62
  792. data/ext/cargo-vendor/mach-0.3.2/src/task.rs +0 -41
  793. data/ext/cargo-vendor/mach-0.3.2/src/task_info.rs +0 -44
  794. data/ext/cargo-vendor/mach-0.3.2/src/thread_act.rs +0 -23
  795. data/ext/cargo-vendor/mach-0.3.2/src/thread_status.rs +0 -23
  796. data/ext/cargo-vendor/mach-0.3.2/src/traps.rs +0 -35
  797. data/ext/cargo-vendor/mach-0.3.2/src/vm.rs +0 -247
  798. data/ext/cargo-vendor/mach-0.3.2/src/vm_attributes.rs +0 -18
  799. data/ext/cargo-vendor/mach-0.3.2/src/vm_page_size.rs +0 -33
  800. data/ext/cargo-vendor/mach-0.3.2/src/vm_prot.rs +0 -14
  801. data/ext/cargo-vendor/mach-0.3.2/src/vm_purgable.rs +0 -42
  802. data/ext/cargo-vendor/mach-0.3.2/src/vm_region.rs +0 -238
  803. data/ext/cargo-vendor/mach-0.3.2/src/vm_statistics.rs +0 -78
  804. data/ext/cargo-vendor/mach-0.3.2/src/vm_sync.rs +0 -11
  805. data/ext/cargo-vendor/mach-0.3.2/src/vm_types.rs +0 -19
  806. data/ext/cargo-vendor/wasi-common-19.0.2/.cargo-checksum.json +0 -1
  807. data/ext/cargo-vendor/wasi-common-19.0.2/Cargo.toml +0 -221
  808. data/ext/cargo-vendor/wasi-common-19.0.2/src/ctx.rs +0 -128
  809. data/ext/cargo-vendor/wasi-common-19.0.2/src/lib.rs +0 -189
  810. data/ext/cargo-vendor/wasi-common-19.0.2/src/snapshots/preview_1.rs +0 -1491
  811. data/ext/cargo-vendor/wasi-common-19.0.2/tests/all/async_.rs +0 -289
  812. data/ext/cargo-vendor/wasi-common-19.0.2/tests/all/sync.rs +0 -275
  813. data/ext/cargo-vendor/wasm-encoder-0.201.0/.cargo-checksum.json +0 -1
  814. data/ext/cargo-vendor/wasm-encoder-0.201.0/Cargo.toml +0 -43
  815. data/ext/cargo-vendor/wasm-encoder-0.201.0/src/component/types.rs +0 -792
  816. data/ext/cargo-vendor/wasmparser-0.201.0/.cargo-checksum.json +0 -1
  817. data/ext/cargo-vendor/wasmparser-0.201.0/Cargo.lock +0 -744
  818. data/ext/cargo-vendor/wasmparser-0.201.0/Cargo.toml +0 -66
  819. data/ext/cargo-vendor/wasmparser-0.201.0/src/readers/component/types.rs +0 -549
  820. data/ext/cargo-vendor/wasmparser-0.201.0/src/validator/operators.rs +0 -4074
  821. data/ext/cargo-vendor/wasmparser-0.201.0/src/validator/types.rs +0 -4449
  822. data/ext/cargo-vendor/wasmprinter-0.201.0/.cargo-checksum.json +0 -1
  823. data/ext/cargo-vendor/wasmprinter-0.201.0/Cargo.toml +0 -45
  824. data/ext/cargo-vendor/wasmprinter-0.201.0/src/lib.rs +0 -3143
  825. data/ext/cargo-vendor/wasmprinter-0.201.0/src/operator.rs +0 -1110
  826. data/ext/cargo-vendor/wasmprinter-0.201.0/tests/all.rs +0 -279
  827. data/ext/cargo-vendor/wasmtime-19.0.2/.cargo-checksum.json +0 -1
  828. data/ext/cargo-vendor/wasmtime-19.0.2/Cargo.toml +0 -261
  829. data/ext/cargo-vendor/wasmtime-19.0.2/src/compile.rs +0 -835
  830. data/ext/cargo-vendor/wasmtime-19.0.2/src/config.rs +0 -2649
  831. data/ext/cargo-vendor/wasmtime-19.0.2/src/engine/serialization.rs +0 -809
  832. data/ext/cargo-vendor/wasmtime-19.0.2/src/engine.rs +0 -735
  833. data/ext/cargo-vendor/wasmtime-19.0.2/src/lib.rs +0 -293
  834. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/code_memory.rs +0 -335
  835. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/component.rs +0 -586
  836. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/func/host.rs +0 -456
  837. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/func/options.rs +0 -541
  838. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/func/typed.rs +0 -2484
  839. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/func.rs +0 -752
  840. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/instance.rs +0 -818
  841. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/linker.rs +0 -788
  842. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/matching.rs +0 -212
  843. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/mod.rs +0 -678
  844. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/resources.rs +0 -1169
  845. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/types.rs +0 -961
  846. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/component/values.rs +0 -1388
  847. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/coredump.rs +0 -321
  848. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/externals/global.rs +0 -249
  849. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/externals/table.rs +0 -416
  850. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/func/typed.rs +0 -985
  851. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/func.rs +0 -2585
  852. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/instance.rs +0 -981
  853. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/instantiate.rs +0 -423
  854. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/linker.rs +0 -1518
  855. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/memory.rs +0 -997
  856. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/module/registry.rs +0 -360
  857. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/module.rs +0 -1367
  858. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/profiling.rs +0 -222
  859. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/ref/gc_ref.rs +0 -110
  860. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/ref/no_gc_ref.rs +0 -60
  861. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/ref.rs +0 -9
  862. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/store/data.rs +0 -289
  863. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/store.rs +0 -2445
  864. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/trampoline/func.rs +0 -144
  865. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/trampoline/global.rs +0 -70
  866. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/trampoline/memory.rs +0 -268
  867. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/trampoline/table.rs +0 -20
  868. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/trap.rs +0 -641
  869. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/type_registry.rs +0 -640
  870. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/types/matching.rs +0 -334
  871. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/types.rs +0 -1236
  872. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/v128.rs +0 -131
  873. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime/values.rs +0 -771
  874. data/ext/cargo-vendor/wasmtime-19.0.2/src/runtime.rs +0 -112
  875. data/ext/cargo-vendor/wasmtime-asm-macros-19.0.2/.cargo-checksum.json +0 -1
  876. data/ext/cargo-vendor/wasmtime-asm-macros-19.0.2/Cargo.toml +0 -22
  877. data/ext/cargo-vendor/wasmtime-cache-19.0.2/.cargo-checksum.json +0 -1
  878. data/ext/cargo-vendor/wasmtime-cache-19.0.2/Cargo.toml +0 -81
  879. data/ext/cargo-vendor/wasmtime-component-macro-19.0.2/.cargo-checksum.json +0 -1
  880. data/ext/cargo-vendor/wasmtime-component-macro-19.0.2/Cargo.toml +0 -67
  881. data/ext/cargo-vendor/wasmtime-component-macro-19.0.2/src/component.rs +0 -1295
  882. data/ext/cargo-vendor/wasmtime-component-macro-19.0.2/tests/codegen.rs +0 -191
  883. data/ext/cargo-vendor/wasmtime-component-util-19.0.2/.cargo-checksum.json +0 -1
  884. data/ext/cargo-vendor/wasmtime-component-util-19.0.2/Cargo.toml +0 -25
  885. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/.cargo-checksum.json +0 -1
  886. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/Cargo.toml +0 -114
  887. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/src/builder.rs +0 -127
  888. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/src/compiler/component.rs +0 -960
  889. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/src/compiler.rs +0 -1316
  890. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/src/debug/transform/address_transform.rs +0 -784
  891. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/src/debug/transform/expression.rs +0 -1252
  892. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/src/func_environ.rs +0 -2846
  893. data/ext/cargo-vendor/wasmtime-cranelift-19.0.2/src/lib.rs +0 -186
  894. data/ext/cargo-vendor/wasmtime-cranelift-shared-19.0.2/.cargo-checksum.json +0 -1
  895. data/ext/cargo-vendor/wasmtime-cranelift-shared-19.0.2/Cargo.toml +0 -71
  896. data/ext/cargo-vendor/wasmtime-cranelift-shared-19.0.2/src/compiled_function.rs +0 -231
  897. data/ext/cargo-vendor/wasmtime-cranelift-shared-19.0.2/src/lib.rs +0 -130
  898. data/ext/cargo-vendor/wasmtime-cranelift-shared-19.0.2/src/obj.rs +0 -564
  899. data/ext/cargo-vendor/wasmtime-environ-19.0.2/.cargo-checksum.json +0 -1
  900. data/ext/cargo-vendor/wasmtime-environ-19.0.2/Cargo.lock +0 -782
  901. data/ext/cargo-vendor/wasmtime-environ-19.0.2/Cargo.toml +0 -141
  902. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/address_map.rs +0 -191
  903. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/builtin.rs +0 -155
  904. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/compilation.rs +0 -402
  905. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/component/artifacts.rs +0 -45
  906. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/component/compiler.rs +0 -47
  907. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/component/info.rs +0 -594
  908. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/component/translate/adapt.rs +0 -457
  909. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/component/translate/inline.rs +0 -1332
  910. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/component/types.rs +0 -1933
  911. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/component.rs +0 -97
  912. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/fact/trampoline.rs +0 -3229
  913. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/fact/transcode.rs +0 -168
  914. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/fact.rs +0 -713
  915. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/lib.rs +0 -66
  916. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/module.rs +0 -1117
  917. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/module_artifacts.rs +0 -377
  918. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/module_environ.rs +0 -903
  919. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/obj.rs +0 -172
  920. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/trap_encoding.rs +0 -245
  921. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/tunables.rs +0 -154
  922. data/ext/cargo-vendor/wasmtime-environ-19.0.2/src/vmoffsets.rs +0 -918
  923. data/ext/cargo-vendor/wasmtime-fiber-19.0.2/.cargo-checksum.json +0 -1
  924. data/ext/cargo-vendor/wasmtime-fiber-19.0.2/Cargo.toml +0 -63
  925. data/ext/cargo-vendor/wasmtime-fiber-19.0.2/src/unix.rs +0 -265
  926. data/ext/cargo-vendor/wasmtime-jit-debug-19.0.2/.cargo-checksum.json +0 -1
  927. data/ext/cargo-vendor/wasmtime-jit-debug-19.0.2/Cargo.toml +0 -67
  928. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-19.0.2/.cargo-checksum.json +0 -1
  929. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-19.0.2/Cargo.toml +0 -46
  930. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/.cargo-checksum.json +0 -1
  931. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/Cargo.toml +0 -140
  932. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/build.rs +0 -28
  933. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/arch/aarch64.rs +0 -120
  934. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/arch/riscv64.rs +0 -88
  935. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/arch/s390x.S +0 -70
  936. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/arch/s390x.rs +0 -61
  937. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/arch/x86_64.rs +0 -104
  938. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/component/libcalls.rs +0 -572
  939. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/component.rs +0 -864
  940. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/export.rs +0 -105
  941. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/externref/gc.rs +0 -1058
  942. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/externref/no_gc.rs +0 -125
  943. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/externref.rs +0 -24
  944. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/instance/allocator/on_demand.rs +0 -196
  945. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/instance/allocator/pooling/table_pool.rs +0 -227
  946. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/instance/allocator/pooling.rs +0 -658
  947. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/instance/allocator.rs +0 -730
  948. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/instance.rs +0 -1527
  949. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/lib.rs +0 -264
  950. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/libcalls.rs +0 -776
  951. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/memory.rs +0 -972
  952. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/send_sync_ptr.rs +0 -93
  953. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/sys/custom/mmap.rs +0 -111
  954. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/sys/custom/traphandlers.rs +0 -51
  955. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/sys/miri/mmap.rs +0 -94
  956. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/sys/unix/machports.rs +0 -488
  957. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/sys/unix/mmap.rs +0 -151
  958. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/sys/unix/signals.rs +0 -402
  959. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/sys/windows/traphandlers.rs +0 -105
  960. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/table.rs +0 -643
  961. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/traphandlers/coredump.rs +0 -38
  962. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/traphandlers.rs +0 -736
  963. data/ext/cargo-vendor/wasmtime-runtime-19.0.2/src/vmcontext.rs +0 -1215
  964. data/ext/cargo-vendor/wasmtime-slab-19.0.2/.cargo-checksum.json +0 -1
  965. data/ext/cargo-vendor/wasmtime-slab-19.0.2/Cargo.toml +0 -21
  966. data/ext/cargo-vendor/wasmtime-slab-19.0.2/src/lib.rs +0 -450
  967. data/ext/cargo-vendor/wasmtime-types-19.0.2/.cargo-checksum.json +0 -1
  968. data/ext/cargo-vendor/wasmtime-types-19.0.2/Cargo.toml +0 -36
  969. data/ext/cargo-vendor/wasmtime-types-19.0.2/src/lib.rs +0 -640
  970. data/ext/cargo-vendor/wasmtime-versioned-export-macros-19.0.2/.cargo-checksum.json +0 -1
  971. data/ext/cargo-vendor/wasmtime-versioned-export-macros-19.0.2/Cargo.toml +0 -32
  972. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/.cargo-checksum.json +0 -1
  973. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/Cargo.toml +0 -194
  974. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/command.rs +0 -122
  975. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/ctx.rs +0 -353
  976. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/filesystem.rs +0 -373
  977. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/host/filesystem/sync.rs +0 -517
  978. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/host/filesystem.rs +0 -1081
  979. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/host/io.rs +0 -366
  980. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/host/network.rs +0 -519
  981. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/host/tcp.rs +0 -677
  982. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/ip_name_lookup.rs +0 -123
  983. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/lib.rs +0 -323
  984. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/network.rs +0 -108
  985. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/p1ctx.rs +0 -37
  986. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/pipe.rs +0 -826
  987. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/poll.rs +0 -179
  988. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/preview0.rs +0 -872
  989. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/preview1.rs +0 -2361
  990. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/stdio/worker_thread_stdin.rs +0 -173
  991. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/stdio.rs +0 -443
  992. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/tcp.rs +0 -350
  993. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/udp.rs +0 -125
  994. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/src/write_stream.rs +0 -203
  995. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/tests/all/api.rs +0 -210
  996. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/tests/all/async_.rs +0 -380
  997. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/tests/all/main.rs +0 -106
  998. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/tests/all/preview1.rs +0 -243
  999. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/tests/all/sync.rs +0 -315
  1000. data/ext/cargo-vendor/wasmtime-wasi-19.0.2/wit/deps/io/poll.wit +0 -42
  1001. data/ext/cargo-vendor/wasmtime-winch-19.0.2/.cargo-checksum.json +0 -1
  1002. data/ext/cargo-vendor/wasmtime-winch-19.0.2/Cargo.toml +0 -77
  1003. data/ext/cargo-vendor/wasmtime-winch-19.0.2/src/builder.rs +0 -65
  1004. data/ext/cargo-vendor/wasmtime-winch-19.0.2/src/compiler.rs +0 -283
  1005. data/ext/cargo-vendor/wasmtime-wit-bindgen-19.0.2/.cargo-checksum.json +0 -1
  1006. data/ext/cargo-vendor/wasmtime-wit-bindgen-19.0.2/Cargo.toml +0 -41
  1007. data/ext/cargo-vendor/wasmtime-wit-bindgen-19.0.2/src/lib.rs +0 -2104
  1008. data/ext/cargo-vendor/wasmtime-wit-bindgen-19.0.2/src/rust.rs +0 -421
  1009. data/ext/cargo-vendor/wasmtime-wit-bindgen-19.0.2/src/types.rs +0 -194
  1010. data/ext/cargo-vendor/wasmtime-wmemcheck-19.0.2/.cargo-checksum.json +0 -1
  1011. data/ext/cargo-vendor/wasmtime-wmemcheck-19.0.2/Cargo.toml +0 -29
  1012. data/ext/cargo-vendor/wasmtime-wmemcheck-19.0.2/src/lib.rs +0 -404
  1013. data/ext/cargo-vendor/wast-201.0.0/.cargo-checksum.json +0 -1
  1014. data/ext/cargo-vendor/wast-201.0.0/Cargo.toml +0 -59
  1015. data/ext/cargo-vendor/wast-201.0.0/src/component/binary.rs +0 -1004
  1016. data/ext/cargo-vendor/wast-201.0.0/src/component/resolve.rs +0 -1006
  1017. data/ext/cargo-vendor/wast-201.0.0/src/component/types.rs +0 -991
  1018. data/ext/cargo-vendor/wast-201.0.0/src/component/wast.rs +0 -160
  1019. data/ext/cargo-vendor/wast-201.0.0/src/core/binary.rs +0 -1365
  1020. data/ext/cargo-vendor/wast-201.0.0/src/core/expr.rs +0 -1993
  1021. data/ext/cargo-vendor/wast-201.0.0/src/core/func.rs +0 -136
  1022. data/ext/cargo-vendor/wast-201.0.0/src/core/memory.rs +0 -281
  1023. data/ext/cargo-vendor/wast-201.0.0/src/core/resolve/deinline_import_export.rs +0 -233
  1024. data/ext/cargo-vendor/wast-201.0.0/src/core/resolve/names.rs +0 -763
  1025. data/ext/cargo-vendor/wast-201.0.0/src/core/resolve/types.rs +0 -271
  1026. data/ext/cargo-vendor/wast-201.0.0/src/core/table.rs +0 -289
  1027. data/ext/cargo-vendor/wast-201.0.0/src/core/types.rs +0 -861
  1028. data/ext/cargo-vendor/wast-201.0.0/src/core/wast.rs +0 -256
  1029. data/ext/cargo-vendor/wast-201.0.0/src/lib.rs +0 -542
  1030. data/ext/cargo-vendor/wast-201.0.0/src/names.rs +0 -89
  1031. data/ext/cargo-vendor/wast-201.0.0/src/parser.rs +0 -1374
  1032. data/ext/cargo-vendor/wast-201.0.0/src/token.rs +0 -718
  1033. data/ext/cargo-vendor/wast-201.0.0/src/wast.rs +0 -420
  1034. data/ext/cargo-vendor/wast-201.0.0/src/wat.rs +0 -63
  1035. data/ext/cargo-vendor/wast-201.0.0/tests/annotations.rs +0 -200
  1036. data/ext/cargo-vendor/wast-201.0.0/tests/parse-fail.rs +0 -98
  1037. data/ext/cargo-vendor/wat-1.201.0/.cargo-checksum.json +0 -1
  1038. data/ext/cargo-vendor/wat-1.201.0/Cargo.toml +0 -33
  1039. data/ext/cargo-vendor/wiggle-19.0.2/.cargo-checksum.json +0 -1
  1040. data/ext/cargo-vendor/wiggle-19.0.2/Cargo.toml +0 -122
  1041. data/ext/cargo-vendor/wiggle-19.0.2/src/borrow.rs +0 -259
  1042. data/ext/cargo-vendor/wiggle-19.0.2/src/guest_type.rs +0 -237
  1043. data/ext/cargo-vendor/wiggle-19.0.2/src/lib.rs +0 -1199
  1044. data/ext/cargo-vendor/wiggle-19.0.2/src/wasmtime.rs +0 -101
  1045. data/ext/cargo-vendor/wiggle-generate-19.0.2/.cargo-checksum.json +0 -1
  1046. data/ext/cargo-vendor/wiggle-generate-19.0.2/Cargo.toml +0 -65
  1047. data/ext/cargo-vendor/wiggle-macro-19.0.2/.cargo-checksum.json +0 -1
  1048. data/ext/cargo-vendor/wiggle-macro-19.0.2/Cargo.toml +0 -55
  1049. data/ext/cargo-vendor/winch-codegen-0.17.2/.cargo-checksum.json +0 -1
  1050. data/ext/cargo-vendor/winch-codegen-0.17.2/Cargo.toml +0 -77
  1051. data/ext/cargo-vendor/winch-codegen-0.17.2/src/abi/mod.rs +0 -737
  1052. data/ext/cargo-vendor/winch-codegen-0.17.2/src/codegen/bounds.rs +0 -220
  1053. data/ext/cargo-vendor/winch-codegen-0.17.2/src/codegen/builtin.rs +0 -272
  1054. data/ext/cargo-vendor/winch-codegen-0.17.2/src/codegen/call.rs +0 -413
  1055. data/ext/cargo-vendor/winch-codegen-0.17.2/src/codegen/env.rs +0 -399
  1056. data/ext/cargo-vendor/winch-codegen-0.17.2/src/codegen/mod.rs +0 -672
  1057. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/aarch64/abi.rs +0 -309
  1058. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/aarch64/asm.rs +0 -247
  1059. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/aarch64/masm.rs +0 -557
  1060. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/aarch64/mod.rs +0 -152
  1061. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/aarch64/regs.rs +0 -183
  1062. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/mod.rs +0 -232
  1063. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/x64/abi.rs +0 -543
  1064. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/x64/asm.rs +0 -1418
  1065. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/x64/masm.rs +0 -1300
  1066. data/ext/cargo-vendor/winch-codegen-0.17.2/src/isa/x64/mod.rs +0 -192
  1067. data/ext/cargo-vendor/winch-codegen-0.17.2/src/lib.rs +0 -21
  1068. data/ext/cargo-vendor/winch-codegen-0.17.2/src/masm.rs +0 -955
  1069. data/ext/cargo-vendor/winch-codegen-0.17.2/src/trampoline.rs +0 -626
  1070. data/ext/cargo-vendor/winch-codegen-0.17.2/src/visitor.rs +0 -2101
  1071. data/ext/cargo-vendor/wit-parser-0.201.0/.cargo-checksum.json +0 -1
  1072. data/ext/cargo-vendor/wit-parser-0.201.0/Cargo.toml +0 -101
  1073. data/ext/cargo-vendor/wit-parser-0.201.0/src/abi.rs +0 -295
  1074. data/ext/cargo-vendor/wit-parser-0.201.0/src/ast/lex.rs +0 -747
  1075. data/ext/cargo-vendor/wit-parser-0.201.0/src/ast/resolve.rs +0 -1427
  1076. data/ext/cargo-vendor/wit-parser-0.201.0/src/ast.rs +0 -1348
  1077. data/ext/cargo-vendor/wit-parser-0.201.0/src/decoding.rs +0 -1764
  1078. data/ext/cargo-vendor/wit-parser-0.201.0/src/lib.rs +0 -747
  1079. data/ext/cargo-vendor/wit-parser-0.201.0/src/resolve.rs +0 -2239
  1080. data/ext/cargo-vendor/wit-parser-0.201.0/src/serde_.rs +0 -108
  1081. data/ext/cargo-vendor/wit-parser-0.201.0/src/sizealign.rs +0 -144
  1082. data/ext/cargo-vendor/wit-parser-0.201.0/tests/all.rs +0 -185
  1083. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/functions.wit +0 -14
  1084. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/functions.wit.json +0 -166
  1085. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/resources-multiple.wit +0 -20
  1086. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/resources-multiple.wit.json +0 -281
  1087. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/types.wit +0 -60
  1088. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/types.wit.json +0 -774
  1089. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/union-fuzz-2.wit +0 -12
  1090. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/union-fuzz-2.wit.json +0 -72
  1091. data/ext/cargo-vendor/wit-parser-0.201.0/tests/ui/wasi.wit +0 -178
  1092. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/LICENSE-APACHE +0 -0
  1093. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/LICENSE-MIT +0 -0
  1094. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/build/probe.rs +0 -0
  1095. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/rust-toolchain.toml +0 -0
  1096. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/src/context.rs +0 -0
  1097. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/src/ensure.rs +0 -0
  1098. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/src/error.rs +0 -0
  1099. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/src/ptr.rs +0 -0
  1100. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/common/mod.rs +0 -0
  1101. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/compiletest.rs +0 -0
  1102. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/drop/mod.rs +0 -0
  1103. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_autotrait.rs +0 -0
  1104. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_backtrace.rs +0 -0
  1105. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_boxed.rs +0 -0
  1106. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_chain.rs +0 -0
  1107. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_context.rs +0 -0
  1108. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_convert.rs +0 -0
  1109. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_downcast.rs +0 -0
  1110. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_ffi.rs +0 -0
  1111. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_fmt.rs +0 -0
  1112. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/test_source.rs +0 -0
  1113. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/chained-comparison.rs +0 -0
  1114. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/chained-comparison.stderr +0 -0
  1115. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/empty-ensure.rs +0 -0
  1116. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/empty-ensure.stderr +0 -0
  1117. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/must-use.rs +0 -0
  1118. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/must-use.stderr +0 -0
  1119. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/no-impl.rs +0 -0
  1120. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/temporary-value.rs +0 -0
  1121. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/temporary-value.stderr +0 -0
  1122. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/wrong-interpolation.rs +0 -0
  1123. /data/ext/cargo-vendor/{anyhow-1.0.79 → anyhow-1.0.83}/tests/ui/wrong-interpolation.stderr +0 -0
  1124. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/LICENSE +0 -0
  1125. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/README.md +0 -0
  1126. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/src/lib.rs +0 -0
  1127. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/src/map.rs +0 -0
  1128. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/src/node.rs +0 -0
  1129. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/src/path.rs +0 -0
  1130. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/src/pool.rs +0 -0
  1131. /data/ext/cargo-vendor/{cranelift-bforest-0.106.2 → cranelift-bforest-0.107.2}/src/set.rs +0 -0
  1132. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/LICENSE +0 -0
  1133. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/README.md +0 -0
  1134. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/benches/x64-evex-encoding.rs +0 -0
  1135. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/binemit/stack_map.rs +0 -0
  1136. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/cfg_printer.rs +0 -0
  1137. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/constant_hash.rs +0 -0
  1138. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ctxhash.rs +0 -0
  1139. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/cursor.rs +0 -0
  1140. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/data_value.rs +0 -0
  1141. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/dbg.rs +0 -0
  1142. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/dce.rs +0 -0
  1143. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/dominator_tree.rs +0 -0
  1144. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/egraph/cost.rs +0 -0
  1145. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/flowgraph.rs +0 -0
  1146. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/fx.rs +0 -0
  1147. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/incremental_cache.rs +0 -0
  1148. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/atomic_rmw_op.rs +0 -0
  1149. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/builder.rs +0 -0
  1150. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/condcodes.rs +0 -0
  1151. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/dynamic_type.rs +0 -0
  1152. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/extfunc.rs +0 -0
  1153. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/extname.rs +0 -0
  1154. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/globalvalue.rs +0 -0
  1155. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/immediates.rs +0 -0
  1156. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/jumptable.rs +0 -0
  1157. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/known_symbol.rs +0 -0
  1158. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/layout.rs +0 -0
  1159. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/libcall.rs +0 -0
  1160. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/memtype.rs +0 -0
  1161. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/pcc.rs +0 -0
  1162. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/progpoint.rs +0 -0
  1163. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/sourceloc.rs +0 -0
  1164. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/ir/stackslot.rs +0 -0
  1165. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/inst/args.rs +0 -0
  1166. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/inst/emit_tests.rs +0 -0
  1167. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/inst/imms.rs +0 -0
  1168. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/inst/regs.rs +0 -0
  1169. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/inst/unwind/systemv.rs +0 -0
  1170. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/inst/unwind.rs +0 -0
  1171. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/inst_neon.isle +0 -0
  1172. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/lower/isle/generated_code.rs +0 -0
  1173. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/lower.rs +0 -0
  1174. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/lower_dynamic_neon.isle +0 -0
  1175. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/aarch64/settings.rs +0 -0
  1176. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/mod.rs +0 -0
  1177. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst/emit_tests.rs +0 -0
  1178. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst/imms.rs +0 -0
  1179. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst/mod.rs +0 -0
  1180. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst/regs.rs +0 -0
  1181. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst/unwind/systemv.rs +0 -0
  1182. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst/unwind.rs +0 -0
  1183. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst/vector.rs +0 -0
  1184. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/inst_vector.isle +0 -0
  1185. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/lower/isle/generated_code.rs +0 -0
  1186. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/lower.rs +0 -0
  1187. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/mod.rs +0 -0
  1188. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/riscv64/settings.rs +0 -0
  1189. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/inst/emit_tests.rs +0 -0
  1190. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/inst/imms.rs +0 -0
  1191. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/inst/mod.rs +0 -0
  1192. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/inst/regs.rs +0 -0
  1193. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/inst/unwind/systemv.rs +0 -0
  1194. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/inst/unwind.rs +0 -0
  1195. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/lower/isle/generated_code.rs +0 -0
  1196. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/lower/isle.rs +0 -0
  1197. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/lower.rs +0 -0
  1198. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/mod.rs +0 -0
  1199. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/s390x/settings.rs +0 -0
  1200. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/unwind/systemv.rs +0 -0
  1201. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/unwind/winx64.rs +0 -0
  1202. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/unwind.rs +0 -0
  1203. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/encoding/mod.rs +0 -0
  1204. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/inst/emit_tests.rs +0 -0
  1205. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/inst/regs.rs +0 -0
  1206. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/inst/unwind/systemv.rs +0 -0
  1207. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/inst/unwind/winx64.rs +0 -0
  1208. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/inst/unwind.rs +0 -0
  1209. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/lower/isle/generated_code.rs +0 -0
  1210. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isa/x64/settings.rs +0 -0
  1211. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/isle_prelude.rs +0 -0
  1212. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/iterators.rs +0 -0
  1213. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/legalizer/globalvalue.rs +0 -0
  1214. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/lib.rs +0 -0
  1215. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/loop_analysis.rs +0 -0
  1216. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/machinst/blockorder.rs +0 -0
  1217. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/machinst/compile.rs +0 -0
  1218. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/machinst/helpers.rs +0 -0
  1219. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/machinst/reg.rs +0 -0
  1220. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/machinst/valueregs.rs +0 -0
  1221. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/README.md +0 -0
  1222. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/arithmetic.isle +0 -0
  1223. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/bitops.isle +0 -0
  1224. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/extends.isle +0 -0
  1225. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/generated_code.rs +0 -0
  1226. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/icmp.isle +0 -0
  1227. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/remat.isle +0 -0
  1228. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/selects.isle +0 -0
  1229. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/shifts.isle +0 -0
  1230. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/spaceship.isle +0 -0
  1231. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/opts/vector.isle +0 -0
  1232. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/prelude_lower.isle +0 -0
  1233. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/prelude_opt.isle +0 -0
  1234. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/print_errors.rs +0 -0
  1235. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/remove_constant_phis.rs +0 -0
  1236. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/scoped_hash_map.rs +0 -0
  1237. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/souper_harvest.rs +0 -0
  1238. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/timing.rs +0 -0
  1239. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/unionfind.rs +0 -0
  1240. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/unreachable_code.rs +0 -0
  1241. /data/ext/cargo-vendor/{cranelift-codegen-0.106.2 → cranelift-codegen-0.107.2}/src/value_label.rs +0 -0
  1242. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/LICENSE +0 -0
  1243. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/README.md +0 -0
  1244. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/formats.rs +0 -0
  1245. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/instructions.rs +0 -0
  1246. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/isa.rs +0 -0
  1247. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/mod.rs +0 -0
  1248. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/operands.rs +0 -0
  1249. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/settings.rs +0 -0
  1250. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/types.rs +0 -0
  1251. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/cdsl/typevar.rs +0 -0
  1252. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/constant_hash.rs +0 -0
  1253. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/error.rs +0 -0
  1254. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/gen_inst.rs +0 -0
  1255. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/gen_settings.rs +0 -0
  1256. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/gen_types.rs +0 -0
  1257. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/isa/arm64.rs +0 -0
  1258. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/isa/mod.rs +0 -0
  1259. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/isa/riscv64.rs +0 -0
  1260. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/isa/s390x.rs +0 -0
  1261. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/isa/x86.rs +0 -0
  1262. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/lib.rs +0 -0
  1263. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/shared/immediates.rs +0 -0
  1264. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/shared/mod.rs +0 -0
  1265. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/shared/settings.rs +0 -0
  1266. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/shared/types.rs +0 -0
  1267. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/srcgen.rs +0 -0
  1268. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.106.2 → cranelift-codegen-meta-0.107.2}/src/unique_table.rs +0 -0
  1269. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.106.2 → cranelift-codegen-shared-0.107.2}/LICENSE +0 -0
  1270. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.106.2 → cranelift-codegen-shared-0.107.2}/README.md +0 -0
  1271. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.106.2 → cranelift-codegen-shared-0.107.2}/src/constant_hash.rs +0 -0
  1272. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.106.2 → cranelift-codegen-shared-0.107.2}/src/constants.rs +0 -0
  1273. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.106.2 → cranelift-codegen-shared-0.107.2}/src/lib.rs +0 -0
  1274. /data/ext/cargo-vendor/{cranelift-control-0.106.2 → cranelift-control-0.107.2}/LICENSE +0 -0
  1275. /data/ext/cargo-vendor/{cranelift-control-0.106.2 → cranelift-control-0.107.2}/README.md +0 -0
  1276. /data/ext/cargo-vendor/{cranelift-control-0.106.2 → cranelift-control-0.107.2}/src/chaos.rs +0 -0
  1277. /data/ext/cargo-vendor/{cranelift-control-0.106.2 → cranelift-control-0.107.2}/src/lib.rs +0 -0
  1278. /data/ext/cargo-vendor/{cranelift-control-0.106.2 → cranelift-control-0.107.2}/src/zero_sized.rs +0 -0
  1279. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/LICENSE +0 -0
  1280. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/README.md +0 -0
  1281. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/boxed_slice.rs +0 -0
  1282. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/iter.rs +0 -0
  1283. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/keys.rs +0 -0
  1284. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/lib.rs +0 -0
  1285. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/list.rs +0 -0
  1286. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/map.rs +0 -0
  1287. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/packed_option.rs +0 -0
  1288. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/primary.rs +0 -0
  1289. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/set.rs +0 -0
  1290. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/sparse.rs +0 -0
  1291. /data/ext/cargo-vendor/{cranelift-entity-0.106.2 → cranelift-entity-0.107.2}/src/unsigned.rs +0 -0
  1292. /data/ext/cargo-vendor/{cranelift-frontend-0.106.2 → cranelift-frontend-0.107.2}/LICENSE +0 -0
  1293. /data/ext/cargo-vendor/{cranelift-frontend-0.106.2 → cranelift-frontend-0.107.2}/README.md +0 -0
  1294. /data/ext/cargo-vendor/{cranelift-frontend-0.106.2 → cranelift-frontend-0.107.2}/src/frontend.rs +0 -0
  1295. /data/ext/cargo-vendor/{cranelift-frontend-0.106.2 → cranelift-frontend-0.107.2}/src/lib.rs +0 -0
  1296. /data/ext/cargo-vendor/{cranelift-frontend-0.106.2 → cranelift-frontend-0.107.2}/src/ssa.rs +0 -0
  1297. /data/ext/cargo-vendor/{cranelift-frontend-0.106.2 → cranelift-frontend-0.107.2}/src/switch.rs +0 -0
  1298. /data/ext/cargo-vendor/{cranelift-frontend-0.106.2 → cranelift-frontend-0.107.2}/src/variable.rs +0 -0
  1299. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/README.md +0 -0
  1300. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/build.rs +0 -0
  1301. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/bad_converters.isle +0 -0
  1302. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/bound_var_type_mismatch.isle +0 -0
  1303. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/converter_extractor_constructor.isle +0 -0
  1304. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/error1.isle +0 -0
  1305. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/extra_parens.isle +0 -0
  1306. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/impure_expression.isle +0 -0
  1307. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/impure_rhs.isle +0 -0
  1308. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/multi_internal_etor.isle +0 -0
  1309. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/fail/multi_prio.isle +0 -0
  1310. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/borrows.isle +0 -0
  1311. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/borrows_main.rs +0 -0
  1312. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/iflets.isle +0 -0
  1313. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/iflets_main.rs +0 -0
  1314. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/multi_constructor.isle +0 -0
  1315. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/multi_constructor_main.rs +0 -0
  1316. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/multi_extractor.isle +0 -0
  1317. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/multi_extractor_main.rs +0 -0
  1318. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/test.isle +0 -0
  1319. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/link/test_main.rs +0 -0
  1320. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/bound_var.isle +0 -0
  1321. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/construct_and_extract.isle +0 -0
  1322. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/conversions.isle +0 -0
  1323. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/conversions_extern.isle +0 -0
  1324. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/let.isle +0 -0
  1325. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/nodebug.isle +0 -0
  1326. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/prio_trie_bug.isle +0 -0
  1327. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/test2.isle +0 -0
  1328. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/test3.isle +0 -0
  1329. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/test4.isle +0 -0
  1330. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/pass/tutorial.isle +0 -0
  1331. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/run/iconst.isle +0 -0
  1332. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/run/iconst_main.rs +0 -0
  1333. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/run/let_shadowing.isle +0 -0
  1334. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/isle_examples/run/let_shadowing_main.rs +0 -0
  1335. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/ast.rs +0 -0
  1336. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/codegen.rs +0 -0
  1337. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/compile.rs +0 -0
  1338. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/error.rs +0 -0
  1339. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/lexer.rs +0 -0
  1340. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/lib.rs +0 -0
  1341. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/log.rs +0 -0
  1342. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/overlap.rs +0 -0
  1343. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/parser.rs +0 -0
  1344. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/sema.rs +0 -0
  1345. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/serialize.rs +0 -0
  1346. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/src/trie_again.rs +0 -0
  1347. /data/ext/cargo-vendor/{cranelift-isle-0.106.2 → cranelift-isle-0.107.2}/tests/run_tests.rs +0 -0
  1348. /data/ext/cargo-vendor/{cranelift-native-0.106.2 → cranelift-native-0.107.2}/LICENSE +0 -0
  1349. /data/ext/cargo-vendor/{cranelift-native-0.106.2 → cranelift-native-0.107.2}/README.md +0 -0
  1350. /data/ext/cargo-vendor/{cranelift-native-0.106.2 → cranelift-native-0.107.2}/src/lib.rs +0 -0
  1351. /data/ext/cargo-vendor/{cranelift-native-0.106.2 → cranelift-native-0.107.2}/src/riscv.rs +0 -0
  1352. /data/ext/cargo-vendor/{cranelift-wasm-0.106.2 → cranelift-wasm-0.107.2}/LICENSE +0 -0
  1353. /data/ext/cargo-vendor/{cranelift-wasm-0.106.2 → cranelift-wasm-0.107.2}/README.md +0 -0
  1354. /data/ext/cargo-vendor/{cranelift-wasm-0.106.2 → cranelift-wasm-0.107.2}/src/code_translator/bounds_checks.rs +0 -0
  1355. /data/ext/cargo-vendor/{cranelift-wasm-0.106.2 → cranelift-wasm-0.107.2}/src/heap.rs +0 -0
  1356. /data/ext/cargo-vendor/{cranelift-wasm-0.106.2 → cranelift-wasm-0.107.2}/src/module_translator.rs +0 -0
  1357. /data/ext/cargo-vendor/{cranelift-wasm-0.106.2 → cranelift-wasm-0.107.2}/src/sections_translator.rs +0 -0
  1358. /data/ext/cargo-vendor/{cranelift-wasm-0.106.2 → cranelift-wasm-0.107.2}/src/translation_utils.rs +0 -0
  1359. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/README.md +0 -0
  1360. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/src/clocks.rs +0 -0
  1361. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/src/lib.rs +0 -0
  1362. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/src/noop_scheduler.rs +0 -0
  1363. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/tests/clocks.rs +0 -0
  1364. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/tests/common/mod.rs +0 -0
  1365. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/tests/random.rs +0 -0
  1366. /data/ext/cargo-vendor/{deterministic-wasi-ctx-0.1.20 → deterministic-wasi-ctx-0.1.21}/tests/scheduler.rs +0 -0
  1367. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/boolean.rs +0 -0
  1368. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/bootstrap.rs +0 -0
  1369. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/clock.rs +0 -0
  1370. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/clock_priv.rs +0 -0
  1371. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/clock_reply.rs +0 -0
  1372. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/clock_types.rs +0 -0
  1373. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/dyld_kernel.rs +0 -0
  1374. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/exception_types.rs +0 -0
  1375. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/mach_init.rs +0 -0
  1376. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/mach_time.rs +0 -0
  1377. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/mach_types.rs +0 -0
  1378. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/memory_object_types.rs +0 -0
  1379. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/vm_behavior.rs +0 -0
  1380. /data/ext/cargo-vendor/{mach-0.3.2 → mach2-0.4.2}/src/vm_inherit.rs +0 -0
  1381. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/LICENSE +0 -0
  1382. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/README.md +0 -0
  1383. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/clocks.rs +0 -0
  1384. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/dir.rs +0 -0
  1385. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/error.rs +0 -0
  1386. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/file.rs +0 -0
  1387. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/pipe.rs +0 -0
  1388. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/random.rs +0 -0
  1389. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sched/subscription.rs +0 -0
  1390. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sched.rs +0 -0
  1391. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/snapshots/mod.rs +0 -0
  1392. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/snapshots/preview_0.rs +0 -0
  1393. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/snapshots/preview_1/error.rs +0 -0
  1394. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/string_array.rs +0 -0
  1395. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/clocks.rs +0 -0
  1396. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/dir.rs +0 -0
  1397. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/file.rs +0 -0
  1398. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/mod.rs +0 -0
  1399. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/net.rs +0 -0
  1400. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/sched/unix.rs +0 -0
  1401. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/sched/windows.rs +0 -0
  1402. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/sched.rs +0 -0
  1403. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/sync/stdio.rs +0 -0
  1404. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/table.rs +0 -0
  1405. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/dir.rs +0 -0
  1406. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/file.rs +0 -0
  1407. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/mod.rs +0 -0
  1408. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/net.rs +0 -0
  1409. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/sched/unix.rs +0 -0
  1410. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/sched/windows.rs +0 -0
  1411. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/sched.rs +0 -0
  1412. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/src/tokio/stdio.rs +0 -0
  1413. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/tests/all/main.rs +0 -0
  1414. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/witx/preview0/typenames.witx +0 -0
  1415. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/witx/preview0/wasi_unstable.witx +0 -0
  1416. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/witx/preview1/typenames.witx +0 -0
  1417. /data/ext/cargo-vendor/{wasi-common-19.0.2 → wasi-common-20.0.0}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1418. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/LICENSE +0 -0
  1419. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/README.md +0 -0
  1420. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/aliases.rs +0 -0
  1421. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/builder.rs +0 -0
  1422. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/canonicals.rs +0 -0
  1423. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/components.rs +0 -0
  1424. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/exports.rs +0 -0
  1425. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/imports.rs +0 -0
  1426. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/instances.rs +0 -0
  1427. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/modules.rs +0 -0
  1428. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/names.rs +0 -0
  1429. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component/start.rs +0 -0
  1430. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/component.rs +0 -0
  1431. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/code.rs +0 -0
  1432. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/custom.rs +0 -0
  1433. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/data.rs +0 -0
  1434. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/dump.rs +0 -0
  1435. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/elements.rs +0 -0
  1436. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/exports.rs +0 -0
  1437. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/functions.rs +0 -0
  1438. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/globals.rs +0 -0
  1439. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/imports.rs +0 -0
  1440. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/linking.rs +0 -0
  1441. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/memories.rs +0 -0
  1442. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/names.rs +0 -0
  1443. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/producers.rs +0 -0
  1444. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/start.rs +0 -0
  1445. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/tables.rs +0 -0
  1446. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/tags.rs +0 -0
  1447. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core/types.rs +0 -0
  1448. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/core.rs +0 -0
  1449. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/lib.rs +0 -0
  1450. /data/ext/cargo-vendor/{wasm-encoder-0.201.0 → wasm-encoder-0.202.0}/src/raw.rs +0 -0
  1451. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasm-encoder-0.208.1}/LICENSE +0 -0
  1452. /data/ext/cargo-vendor/{wasmprinter-0.201.0 → wasmparser-0.202.0}/LICENSE +0 -0
  1453. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/README.md +0 -0
  1454. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/benches/benchmark.rs +0 -0
  1455. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/examples/simple.rs +0 -0
  1456. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/binary_reader.rs +0 -0
  1457. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/lib.rs +0 -0
  1458. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/limits.rs +0 -0
  1459. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/parser.rs +0 -0
  1460. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component/aliases.rs +0 -0
  1461. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component/canonicals.rs +0 -0
  1462. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component/exports.rs +0 -0
  1463. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component/imports.rs +0 -0
  1464. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component/instances.rs +0 -0
  1465. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component/names.rs +0 -0
  1466. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component/start.rs +0 -0
  1467. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/component.rs +0 -0
  1468. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/branch_hinting.rs +0 -0
  1469. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/code.rs +0 -0
  1470. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/coredumps.rs +0 -0
  1471. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/custom.rs +0 -0
  1472. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/data.rs +0 -0
  1473. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/dylink0.rs +0 -0
  1474. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/elements.rs +0 -0
  1475. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/exports.rs +0 -0
  1476. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/functions.rs +0 -0
  1477. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/globals.rs +0 -0
  1478. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/imports.rs +0 -0
  1479. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/init.rs +0 -0
  1480. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/linking.rs +0 -0
  1481. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/memories.rs +0 -0
  1482. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/names.rs +0 -0
  1483. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/operators.rs +0 -0
  1484. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/producers.rs +0 -0
  1485. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/tables.rs +0 -0
  1486. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/tags.rs +0 -0
  1487. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/types/matches.rs +0 -0
  1488. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core/types.rs +0 -0
  1489. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers/core.rs +0 -0
  1490. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/readers.rs +0 -0
  1491. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/resources.rs +0 -0
  1492. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/validator/component.rs +0 -0
  1493. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/validator/core/canonical.rs +0 -0
  1494. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/validator/core.rs +0 -0
  1495. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/validator/func.rs +0 -0
  1496. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/validator/names.rs +0 -0
  1497. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/src/validator.rs +0 -0
  1498. /data/ext/cargo-vendor/{wasmparser-0.201.0 → wasmparser-0.202.0}/tests/big-module.rs +0 -0
  1499. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmprinter-0.202.0}/LICENSE +0 -0
  1500. /data/ext/cargo-vendor/{wasmprinter-0.201.0 → wasmprinter-0.202.0}/README.md +0 -0
  1501. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-20.0.0}/LICENSE +0 -0
  1502. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/README.md +0 -0
  1503. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/profiling_agent/jitdump.rs +0 -0
  1504. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/profiling_agent/perfmap.rs +0 -0
  1505. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/profiling_agent/vtune.rs +0 -0
  1506. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/profiling_agent.rs +0 -0
  1507. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/code.rs +0 -0
  1508. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/component/resource_table.rs +0 -0
  1509. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/component/storage.rs +0 -0
  1510. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/component/store.rs +0 -0
  1511. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/debug.rs +0 -0
  1512. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/externals.rs +0 -0
  1513. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/limits.rs +0 -0
  1514. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/resources.rs +0 -0
  1515. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/signatures.rs +0 -0
  1516. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/stack.rs +0 -0
  1517. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/store/context.rs +0 -0
  1518. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/store/func_refs.rs +0 -0
  1519. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/trampoline.rs +0 -0
  1520. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/uninhabited.rs +0 -0
  1521. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/unix.rs +0 -0
  1522. /data/ext/cargo-vendor/{wasmtime-19.0.2 → wasmtime-20.0.0}/src/runtime/windows.rs +0 -0
  1523. /data/ext/cargo-vendor/{wasmtime-asm-macros-19.0.2 → wasmtime-asm-macros-20.0.0}/src/lib.rs +0 -0
  1524. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cache-20.0.0}/LICENSE +0 -0
  1525. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/build.rs +0 -0
  1526. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/src/config/tests.rs +0 -0
  1527. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/src/config.rs +0 -0
  1528. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/src/lib.rs +0 -0
  1529. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/src/tests.rs +0 -0
  1530. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/src/worker/tests/system_time_stub.rs +0 -0
  1531. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/src/worker/tests.rs +0 -0
  1532. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/src/worker.rs +0 -0
  1533. /data/ext/cargo-vendor/{wasmtime-cache-19.0.2 → wasmtime-cache-20.0.0}/tests/cache_write_default_config.rs +0 -0
  1534. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/build.rs +0 -0
  1535. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/src/bindgen.rs +0 -0
  1536. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/src/lib.rs +0 -0
  1537. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/char.wit +0 -0
  1538. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/conventions.wit +0 -0
  1539. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/direct-import.wit +0 -0
  1540. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/empty.wit +0 -0
  1541. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/flags.wit +0 -0
  1542. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/floats.wit +0 -0
  1543. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/function-new.wit +0 -0
  1544. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/integers.wit +0 -0
  1545. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/lists.wit +0 -0
  1546. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/many-arguments.wit +0 -0
  1547. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/multi-return.wit +0 -0
  1548. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/multiversion/deps/v1/root.wit +0 -0
  1549. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/multiversion/deps/v2/root.wit +0 -0
  1550. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/multiversion/root.wit +0 -0
  1551. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/records.wit +0 -0
  1552. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/rename.wit +0 -0
  1553. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/resources-export.wit +0 -0
  1554. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/resources-import.wit +0 -0
  1555. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/share-types.wit +0 -0
  1556. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/simple-functions.wit +0 -0
  1557. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/simple-lists.wit +0 -0
  1558. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/simple-wasi.wit +0 -0
  1559. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/small-anonymous.wit +0 -0
  1560. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/smoke-default.wit +0 -0
  1561. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/smoke-export.wit +0 -0
  1562. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/smoke.wit +0 -0
  1563. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/strings.wit +0 -0
  1564. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/unversioned-foo.wit +0 -0
  1565. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/use-paths.wit +0 -0
  1566. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/variants.wit +0 -0
  1567. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/wat.wit +0 -0
  1568. /data/ext/cargo-vendor/{wasmtime-component-macro-19.0.2 → wasmtime-component-macro-20.0.0}/tests/codegen/worlds-with-types.wit +0 -0
  1569. /data/ext/cargo-vendor/{wasmtime-component-util-19.0.2 → wasmtime-component-util-20.0.0}/src/lib.rs +0 -0
  1570. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-cranelift-20.0.0}/LICENSE +0 -0
  1571. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/SECURITY.md +0 -0
  1572. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/gc.rs +0 -0
  1573. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/attr.rs +0 -0
  1574. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/line_program.rs +0 -0
  1575. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/mod.rs +0 -0
  1576. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/range_info_builder.rs +0 -0
  1577. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/refs.rs +0 -0
  1578. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/simulate.rs +0 -0
  1579. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/unit.rs +0 -0
  1580. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/transform/utils.rs +0 -0
  1581. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug/write_debuginfo.rs +0 -0
  1582. /data/ext/cargo-vendor/{wasmtime-cranelift-19.0.2 → wasmtime-cranelift-20.0.0}/src/debug.rs +0 -0
  1583. /data/ext/cargo-vendor/{wasmtime-cranelift-shared-19.0.2 → wasmtime-cranelift-20.0.0}/src/isa_builder.rs +0 -0
  1584. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-environ-20.0.0}/LICENSE +0 -0
  1585. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/examples/factc.rs +0 -0
  1586. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/component/dfg.rs +0 -0
  1587. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/component/translate.rs +0 -0
  1588. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/component/types/resources.rs +0 -0
  1589. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/component/vmcomponent_offsets.rs +0 -0
  1590. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/demangling.rs +0 -0
  1591. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/fact/core_types.rs +0 -0
  1592. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/fact/signature.rs +0 -0
  1593. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/fact/traps.rs +0 -0
  1594. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/module_types.rs +0 -0
  1595. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/ref_bits.rs +0 -0
  1596. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/scopevec.rs +0 -0
  1597. /data/ext/cargo-vendor/{wasmtime-environ-19.0.2 → wasmtime-environ-20.0.0}/src/stack_map.rs +0 -0
  1598. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-fiber-20.0.0}/LICENSE +0 -0
  1599. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/build.rs +0 -0
  1600. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/lib.rs +0 -0
  1601. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/unix/aarch64.rs +0 -0
  1602. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/unix/arm.rs +0 -0
  1603. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/unix/riscv64.rs +0 -0
  1604. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/unix/s390x.S +0 -0
  1605. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/unix/x86.rs +0 -0
  1606. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/unix/x86_64.rs +0 -0
  1607. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/windows.c +0 -0
  1608. /data/ext/cargo-vendor/{wasmtime-fiber-19.0.2 → wasmtime-fiber-20.0.0}/src/windows.rs +0 -0
  1609. /data/ext/cargo-vendor/{wasmtime-jit-debug-19.0.2 → wasmtime-jit-debug-20.0.0}/README.md +0 -0
  1610. /data/ext/cargo-vendor/{wasmtime-jit-debug-19.0.2 → wasmtime-jit-debug-20.0.0}/src/gdb_jit_int.rs +0 -0
  1611. /data/ext/cargo-vendor/{wasmtime-jit-debug-19.0.2 → wasmtime-jit-debug-20.0.0}/src/lib.rs +0 -0
  1612. /data/ext/cargo-vendor/{wasmtime-jit-debug-19.0.2 → wasmtime-jit-debug-20.0.0}/src/perf_jitdump.rs +0 -0
  1613. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-19.0.2 → wasmtime-jit-icache-coherence-20.0.0}/src/lib.rs +0 -0
  1614. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-19.0.2 → wasmtime-jit-icache-coherence-20.0.0}/src/libc.rs +0 -0
  1615. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-19.0.2 → wasmtime-jit-icache-coherence-20.0.0}/src/miri.rs +0 -0
  1616. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-19.0.2 → wasmtime-jit-icache-coherence-20.0.0}/src/win.rs +0 -0
  1617. /data/ext/cargo-vendor/{wasmtime-types-19.0.2 → wasmtime-runtime-20.0.0}/LICENSE +0 -0
  1618. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/proptest-regressions/instance/allocator/pooling/memory_pool.txt +0 -0
  1619. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/arch/mod.rs +0 -0
  1620. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/component/resources.rs +0 -0
  1621. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/cow.rs +0 -0
  1622. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/debug_builtins.rs +0 -0
  1623. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/helpers.c +0 -0
  1624. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/imports.rs +0 -0
  1625. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/instance/allocator/pooling/index_allocator.rs +0 -0
  1626. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/instance/allocator/pooling/memory_pool.rs +0 -0
  1627. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/instance/allocator/pooling/stack_pool.rs +0 -0
  1628. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/mmap.rs +0 -0
  1629. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/mmap_vec.rs +0 -0
  1630. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/module_id.rs +0 -0
  1631. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/mpk/disabled.rs +0 -0
  1632. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/mpk/enabled.rs +0 -0
  1633. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/mpk/mod.rs +0 -0
  1634. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/mpk/pkru.rs +0 -0
  1635. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/mpk/sys.rs +0 -0
  1636. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/store_box.rs +0 -0
  1637. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/custom/capi.rs +0 -0
  1638. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/custom/mod.rs +0 -0
  1639. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/custom/unwind.rs +0 -0
  1640. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/custom/vm.rs +0 -0
  1641. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/miri/mod.rs +0 -0
  1642. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/miri/traphandlers.rs +0 -0
  1643. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/miri/unwind.rs +0 -0
  1644. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/miri/vm.rs +0 -0
  1645. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/mod.rs +0 -0
  1646. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/unix/macos_traphandlers.rs +0 -0
  1647. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/unix/mod.rs +0 -0
  1648. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/unix/unwind.rs +0 -0
  1649. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/unix/vm.rs +0 -0
  1650. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/windows/mmap.rs +0 -0
  1651. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/windows/mod.rs +0 -0
  1652. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/windows/unwind.rs +0 -0
  1653. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/sys/windows/vm.rs +0 -0
  1654. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2/src → wasmtime-runtime-20.0.0/src/threads}/parking_spot.rs +0 -0
  1655. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/traphandlers/backtrace.rs +0 -0
  1656. /data/ext/cargo-vendor/{wasmtime-runtime-19.0.2 → wasmtime-runtime-20.0.0}/src/vmcontext/vm_host_func_context.rs +0 -0
  1657. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-types-20.0.2}/LICENSE +0 -0
  1658. /data/ext/cargo-vendor/{wasmtime-types-19.0.2 → wasmtime-types-20.0.2}/src/error.rs +0 -0
  1659. /data/ext/cargo-vendor/{wasmtime-versioned-export-macros-19.0.2 → wasmtime-versioned-export-macros-20.0.0}/src/lib.rs +0 -0
  1660. /data/ext/cargo-vendor/{wast-201.0.0 → wasmtime-wasi-20.0.0}/LICENSE +0 -0
  1661. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/README.md +0 -0
  1662. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/clocks/host.rs +0 -0
  1663. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/clocks.rs +0 -0
  1664. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/error.rs +0 -0
  1665. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/clocks.rs +0 -0
  1666. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/env.rs +0 -0
  1667. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/exit.rs +0 -0
  1668. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/instance_network.rs +0 -0
  1669. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/mod.rs +0 -0
  1670. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/random.rs +0 -0
  1671. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/tcp_create_socket.rs +0 -0
  1672. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/udp.rs +0 -0
  1673. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/host/udp_create_socket.rs +0 -0
  1674. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/random.rs +0 -0
  1675. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/src/stream.rs +0 -0
  1676. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/tests/process_stdin.rs +0 -0
  1677. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/command-extended.wit +0 -0
  1678. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/cli/command.wit +0 -0
  1679. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/cli/environment.wit +0 -0
  1680. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/cli/exit.wit +0 -0
  1681. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/cli/imports.wit +0 -0
  1682. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/cli/run.wit +0 -0
  1683. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/cli/stdio.wit +0 -0
  1684. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/cli/terminal.wit +0 -0
  1685. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/clocks/monotonic-clock.wit +0 -0
  1686. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/clocks/wall-clock.wit +0 -0
  1687. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/clocks/world.wit +0 -0
  1688. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/filesystem/preopens.wit +0 -0
  1689. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/filesystem/types.wit +0 -0
  1690. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/filesystem/world.wit +0 -0
  1691. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/http/handler.wit +0 -0
  1692. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/http/proxy.wit +0 -0
  1693. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/http/types.wit +0 -0
  1694. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/io/error.wit +0 -0
  1695. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/io/streams.wit +0 -0
  1696. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/io/world.wit +0 -0
  1697. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/random/insecure-seed.wit +0 -0
  1698. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/random/insecure.wit +0 -0
  1699. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/random/random.wit +0 -0
  1700. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/random/world.wit +0 -0
  1701. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/instance-network.wit +0 -0
  1702. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/ip-name-lookup.wit +0 -0
  1703. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/network.wit +0 -0
  1704. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/tcp-create-socket.wit +0 -0
  1705. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/tcp.wit +0 -0
  1706. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/udp-create-socket.wit +0 -0
  1707. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/udp.wit +0 -0
  1708. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/deps/sockets/world.wit +0 -0
  1709. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/wit/test.wit +0 -0
  1710. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/witx/preview0/typenames.witx +0 -0
  1711. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/witx/preview0/wasi_unstable.witx +0 -0
  1712. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/witx/preview1/typenames.witx +0 -0
  1713. /data/ext/cargo-vendor/{wasmtime-wasi-19.0.2 → wasmtime-wasi-20.0.0}/witx/preview1/wasi_snapshot_preview1.witx +0 -0
  1714. /data/ext/cargo-vendor/{wasmtime-winch-19.0.2 → wasmtime-winch-20.0.0}/LICENSE +0 -0
  1715. /data/ext/cargo-vendor/{wasmtime-winch-19.0.2 → wasmtime-winch-20.0.0}/src/lib.rs +0 -0
  1716. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-19.0.2 → wasmtime-wit-bindgen-20.0.0}/src/source.rs +0 -0
  1717. /data/ext/cargo-vendor/{wat-1.201.0 → wast-208.0.1}/LICENSE +0 -0
  1718. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/README.md +0 -0
  1719. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/alias.rs +0 -0
  1720. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/component.rs +0 -0
  1721. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/custom.rs +0 -0
  1722. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/expand.rs +0 -0
  1723. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/export.rs +0 -0
  1724. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/func.rs +0 -0
  1725. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/import.rs +0 -0
  1726. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/instance.rs +0 -0
  1727. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/item_ref.rs +0 -0
  1728. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component/module.rs +0 -0
  1729. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/component.rs +0 -0
  1730. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core/custom.rs +0 -0
  1731. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core/export.rs +0 -0
  1732. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core/global.rs +0 -0
  1733. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core/import.rs +0 -0
  1734. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core/module.rs +0 -0
  1735. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core/resolve/mod.rs +0 -0
  1736. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core/tag.rs +0 -0
  1737. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/core.rs +0 -0
  1738. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/encode.rs +0 -0
  1739. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/error.rs +0 -0
  1740. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/gensym.rs +0 -0
  1741. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/src/lexer.rs +0 -0
  1742. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/comments.rs +0 -0
  1743. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-core-func-alias.wat +0 -0
  1744. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-core-func-alias.wat.err +0 -0
  1745. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-func-alias.wat +0 -0
  1746. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-func-alias.wat.err +0 -0
  1747. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-index.wat +0 -0
  1748. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-index.wat.err +0 -0
  1749. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-name.wat +0 -0
  1750. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-name.wat.err +0 -0
  1751. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-name2.wat +0 -0
  1752. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-name2.wat.err +0 -0
  1753. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-name3.wat +0 -0
  1754. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/bad-name3.wat.err +0 -0
  1755. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/block1.wat +0 -0
  1756. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/block1.wat.err +0 -0
  1757. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/block2.wat +0 -0
  1758. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/block2.wat.err +0 -0
  1759. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/block3.wat +0 -0
  1760. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/block3.wat.err +0 -0
  1761. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment0.wat +0 -0
  1762. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment0.wat.err +0 -0
  1763. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment1.wat +0 -0
  1764. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment1.wat.err +0 -0
  1765. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment2.wat +0 -0
  1766. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment2.wat.err +0 -0
  1767. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment3.wat +0 -0
  1768. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment3.wat.err +0 -0
  1769. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment4.wat +0 -0
  1770. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment4.wat.err +0 -0
  1771. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment5.wat +0 -0
  1772. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment5.wat.err +0 -0
  1773. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment6.wat +0 -0
  1774. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment6.wat.err +0 -0
  1775. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment7.wat +0 -0
  1776. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment7.wat.err +0 -0
  1777. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment8.wat +0 -0
  1778. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-block-comment8.wat.err +0 -0
  1779. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment0.wat +0 -0
  1780. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment0.wat.err +0 -0
  1781. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment1.wat +0 -0
  1782. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment1.wat.err +0 -0
  1783. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment2.wat +0 -0
  1784. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment2.wat.err +0 -0
  1785. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment3.wat +0 -0
  1786. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment3.wat.err +0 -0
  1787. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment4.wat +0 -0
  1788. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment4.wat.err +0 -0
  1789. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment5.wat +0 -0
  1790. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment5.wat.err +0 -0
  1791. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment6.wat +0 -0
  1792. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment6.wat.err +0 -0
  1793. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment7.wat +0 -0
  1794. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment7.wat.err +0 -0
  1795. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment8.wat +0 -0
  1796. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-line-comment8.wat.err +0 -0
  1797. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string0.wat +0 -0
  1798. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string0.wat.err +0 -0
  1799. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string1.wat +0 -0
  1800. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string1.wat.err +0 -0
  1801. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string2.wat +0 -0
  1802. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string2.wat.err +0 -0
  1803. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string3.wat +0 -0
  1804. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string3.wat.err +0 -0
  1805. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string4.wat +0 -0
  1806. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string4.wat.err +0 -0
  1807. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string5.wat +0 -0
  1808. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string5.wat.err +0 -0
  1809. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string6.wat +0 -0
  1810. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string6.wat.err +0 -0
  1811. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string7.wat +0 -0
  1812. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string7.wat.err +0 -0
  1813. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string8.wat +0 -0
  1814. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/confusing-string8.wat.err +0 -0
  1815. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/inline1.wat +0 -0
  1816. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/inline1.wat.err +0 -0
  1817. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/newline-in-string.wat +0 -0
  1818. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/newline-in-string.wat.err +0 -0
  1819. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string1.wat +0 -0
  1820. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string1.wat.err +0 -0
  1821. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string10.wat +0 -0
  1822. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string10.wat.err +0 -0
  1823. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string11.wat +0 -0
  1824. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string11.wat.err +0 -0
  1825. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string12.wat +0 -0
  1826. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string12.wat.err +0 -0
  1827. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string13.wat +0 -0
  1828. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string13.wat.err +0 -0
  1829. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string14.wat +0 -0
  1830. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string14.wat.err +0 -0
  1831. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string15.wat +0 -0
  1832. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string15.wat.err +0 -0
  1833. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string16.wat +0 -0
  1834. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string16.wat.err +0 -0
  1835. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string2.wat +0 -0
  1836. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string2.wat.err +0 -0
  1837. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string3.wat +0 -0
  1838. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string3.wat.err +0 -0
  1839. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string4.wat +0 -0
  1840. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string4.wat.err +0 -0
  1841. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string5.wat +0 -0
  1842. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string5.wat.err +0 -0
  1843. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string6.wat +0 -0
  1844. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string6.wat.err +0 -0
  1845. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string7.wat +0 -0
  1846. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string7.wat.err +0 -0
  1847. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string8.wat +0 -0
  1848. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string8.wat.err +0 -0
  1849. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string9.wat +0 -0
  1850. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/string9.wat.err +0 -0
  1851. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/unbalanced.wat +0 -0
  1852. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/parse-fail/unbalanced.wat.err +0 -0
  1853. /data/ext/cargo-vendor/{wast-201.0.0 → wast-208.0.1}/tests/recursive.rs +0 -0
  1854. /data/ext/cargo-vendor/{wiggle-19.0.2 → wat-1.208.1}/LICENSE +0 -0
  1855. /data/ext/cargo-vendor/{wat-1.201.0 → wat-1.208.1}/README.md +0 -0
  1856. /data/ext/cargo-vendor/{wat-1.201.0 → wat-1.208.1}/src/lib.rs +0 -0
  1857. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-20.0.0}/LICENSE +0 -0
  1858. /data/ext/cargo-vendor/{wiggle-19.0.2 → wiggle-20.0.0}/README.md +0 -0
  1859. /data/ext/cargo-vendor/{wiggle-19.0.2 → wiggle-20.0.0}/src/error.rs +0 -0
  1860. /data/ext/cargo-vendor/{wiggle-19.0.2 → wiggle-20.0.0}/src/region.rs +0 -0
  1861. /data/ext/cargo-vendor/{wiggle-macro-19.0.2 → wiggle-generate-20.0.0}/LICENSE +0 -0
  1862. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/README.md +0 -0
  1863. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/codegen_settings.rs +0 -0
  1864. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/config.rs +0 -0
  1865. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/funcs.rs +0 -0
  1866. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/lib.rs +0 -0
  1867. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/lifetimes.rs +0 -0
  1868. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/module_trait.rs +0 -0
  1869. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/names.rs +0 -0
  1870. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/types/error.rs +0 -0
  1871. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/types/flags.rs +0 -0
  1872. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/types/handle.rs +0 -0
  1873. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/types/mod.rs +0 -0
  1874. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/types/record.rs +0 -0
  1875. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/types/variant.rs +0 -0
  1876. /data/ext/cargo-vendor/{wiggle-generate-19.0.2 → wiggle-generate-20.0.0}/src/wasmtime.rs +0 -0
  1877. /data/ext/cargo-vendor/{wiggle-macro-19.0.2 → wiggle-macro-20.0.0}/src/lib.rs +0 -0
  1878. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/LICENSE +0 -0
  1879. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/build.rs +0 -0
  1880. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/abi/local.rs +0 -0
  1881. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/codegen/context.rs +0 -0
  1882. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/codegen/control.rs +0 -0
  1883. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/frame/mod.rs +0 -0
  1884. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/isa/aarch64/address.rs +0 -0
  1885. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/isa/reg.rs +0 -0
  1886. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/isa/x64/address.rs +0 -0
  1887. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/isa/x64/regs.rs +0 -0
  1888. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/regalloc.rs +0 -0
  1889. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/regset.rs +0 -0
  1890. /data/ext/cargo-vendor/{winch-codegen-0.17.2 → winch-codegen-0.18.0}/src/stack.rs +0 -0
  1891. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/README.md +0 -0
  1892. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/src/ast/toposort.rs +0 -0
  1893. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/src/docs.rs +0 -0
  1894. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/src/live.rs +0 -0
  1895. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/comments.wit +0 -0
  1896. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/comments.wit.json +0 -0
  1897. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/complex-include/deps/bar/root.wit +0 -0
  1898. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/complex-include/deps/baz/root.wit +0 -0
  1899. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/complex-include/root.wit +0 -0
  1900. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/complex-include.wit.json +0 -0
  1901. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/cross-package-resource/deps/foo/foo.wit +0 -0
  1902. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/cross-package-resource/foo.wit +0 -0
  1903. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/cross-package-resource.wit.json +0 -0
  1904. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/diamond1/deps/dep1/types.wit +0 -0
  1905. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/diamond1/deps/dep2/types.wit +0 -0
  1906. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/diamond1/join.wit +0 -0
  1907. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/diamond1.wit.json +0 -0
  1908. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/disambiguate-diamond/shared1.wit +0 -0
  1909. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/disambiguate-diamond/shared2.wit +0 -0
  1910. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/disambiguate-diamond/world.wit +0 -0
  1911. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/disambiguate-diamond.wit.json +0 -0
  1912. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/empty.wit +0 -0
  1913. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/empty.wit.json +0 -0
  1914. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/deps/another-pkg/other-doc.wit +0 -0
  1915. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/deps/corp/saas.wit +0 -0
  1916. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/deps/different-pkg/the-doc.wit +0 -0
  1917. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/deps/foreign-pkg/the-doc.wit +0 -0
  1918. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/deps/some-pkg/some-doc.wit +0 -0
  1919. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/deps/wasi/clocks.wit +0 -0
  1920. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/deps/wasi/filesystem.wit +0 -0
  1921. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps/root.wit +0 -0
  1922. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/another-pkg/other-doc.wit +0 -0
  1923. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/corp/saas.wit +0 -0
  1924. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/different-pkg/the-doc.wit +0 -0
  1925. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/foreign-pkg/the-doc.wit +0 -0
  1926. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/some-pkg/some-doc.wit +0 -0
  1927. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/wasi/clocks.wit +0 -0
  1928. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/wasi/filesystem.wit +0 -0
  1929. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/deps/wasi/wasi.wit +0 -0
  1930. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union/root.wit +0 -0
  1931. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps-union.wit.json +0 -0
  1932. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/foreign-deps.wit.json +0 -0
  1933. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/ignore-files-deps/deps/bar/types.wit +0 -0
  1934. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/ignore-files-deps/deps/ignore-me.txt +0 -0
  1935. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/ignore-files-deps/world.wit +0 -0
  1936. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/ignore-files-deps.wit.json +0 -0
  1937. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/import-export-overlap1.wit +0 -0
  1938. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/import-export-overlap1.wit.json +0 -0
  1939. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/import-export-overlap2.wit +0 -0
  1940. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/import-export-overlap2.wit.json +0 -0
  1941. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/include-reps.wit +0 -0
  1942. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/include-reps.wit.json +0 -0
  1943. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kebab-name-include-with.wit +0 -0
  1944. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kebab-name-include-with.wit.json +0 -0
  1945. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kinds-of-deps/a.wit +0 -0
  1946. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kinds-of-deps/deps/b/root.wit +0 -0
  1947. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kinds-of-deps/deps/c.wit +0 -0
  1948. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kinds-of-deps/deps/d.wat +0 -0
  1949. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kinds-of-deps/deps/e.wasm +0 -0
  1950. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/kinds-of-deps.wit.json +0 -0
  1951. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/many-names/a.wit +0 -0
  1952. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/many-names/b.wit +0 -0
  1953. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/many-names.wit.json +0 -0
  1954. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/multi-file/bar.wit +0 -0
  1955. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/multi-file/cycle-a.wit +0 -0
  1956. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/multi-file/cycle-b.wit +0 -0
  1957. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/multi-file/foo.wit +0 -0
  1958. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/multi-file.wit.json +0 -0
  1959. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/name-both-resource-and-type/deps/dep/foo.wit +0 -0
  1960. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/name-both-resource-and-type/foo.wit +0 -0
  1961. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/name-both-resource-and-type.wit.json +0 -0
  1962. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/package-syntax1.wit +0 -0
  1963. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/package-syntax1.wit.json +0 -0
  1964. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/package-syntax3.wit +0 -0
  1965. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/package-syntax3.wit.json +0 -0
  1966. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/package-syntax4.wit +0 -0
  1967. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/package-syntax4.wit.json +0 -0
  1968. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/alias-no-type.wit +0 -0
  1969. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/alias-no-type.wit.result +0 -0
  1970. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/async.wit.result +0 -0
  1971. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/async1.wit.result +0 -0
  1972. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-function.wit +0 -0
  1973. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-function.wit.result +0 -0
  1974. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-function2.wit +0 -0
  1975. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-function2.wit.result +0 -0
  1976. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-include1.wit +0 -0
  1977. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-include1.wit.result +0 -0
  1978. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-include2.wit +0 -0
  1979. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-include2.wit.result +0 -0
  1980. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-include3.wit +0 -0
  1981. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-include3.wit.result +0 -0
  1982. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-list.wit +0 -0
  1983. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-list.wit.result +0 -0
  1984. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg1/root.wit +0 -0
  1985. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg1.wit.result +0 -0
  1986. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg2/deps/bar/empty.wit +0 -0
  1987. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg2/root.wit +0 -0
  1988. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg2.wit.result +0 -0
  1989. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg3/deps/bar/baz.wit +0 -0
  1990. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg3/root.wit +0 -0
  1991. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg3.wit.result +0 -0
  1992. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg4/deps/bar/baz.wit +0 -0
  1993. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg4/root.wit +0 -0
  1994. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg4.wit.result +0 -0
  1995. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg5/deps/bar/baz.wit +0 -0
  1996. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg5/root.wit +0 -0
  1997. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg5.wit.result +0 -0
  1998. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg6/deps/bar/baz.wit +0 -0
  1999. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg6/root.wit +0 -0
  2000. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-pkg6.wit.result +0 -0
  2001. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource1.wit +0 -0
  2002. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource1.wit.result +0 -0
  2003. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource10.wit +0 -0
  2004. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource10.wit.result +0 -0
  2005. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource11.wit +0 -0
  2006. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource11.wit.result +0 -0
  2007. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource12.wit +0 -0
  2008. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource12.wit.result +0 -0
  2009. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource13.wit +0 -0
  2010. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource13.wit.result +0 -0
  2011. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource14.wit +0 -0
  2012. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource14.wit.result +0 -0
  2013. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource15/deps/foo/foo.wit +0 -0
  2014. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource15/foo.wit +0 -0
  2015. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource15.wit.result +0 -0
  2016. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource2.wit +0 -0
  2017. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource2.wit.result +0 -0
  2018. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource3.wit +0 -0
  2019. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource3.wit.result +0 -0
  2020. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource4.wit +0 -0
  2021. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource4.wit.result +0 -0
  2022. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource5.wit +0 -0
  2023. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource5.wit.result +0 -0
  2024. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource6.wit +0 -0
  2025. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource6.wit.result +0 -0
  2026. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource7.wit +0 -0
  2027. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource7.wit.result +0 -0
  2028. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource8.wit +0 -0
  2029. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource8.wit.result +0 -0
  2030. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource9.wit +0 -0
  2031. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-resource9.wit.result +0 -0
  2032. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-world-type1.wit +0 -0
  2033. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/bad-world-type1.wit.result +0 -0
  2034. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/conflicting-package/a.wit +0 -0
  2035. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/conflicting-package/b.wit +0 -0
  2036. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/conflicting-package.wit.result +0 -0
  2037. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle.wit +0 -0
  2038. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle.wit.result +0 -0
  2039. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle2.wit +0 -0
  2040. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle2.wit.result +0 -0
  2041. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle3.wit +0 -0
  2042. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle3.wit.result +0 -0
  2043. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle4.wit +0 -0
  2044. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle4.wit.result +0 -0
  2045. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle5.wit +0 -0
  2046. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/cycle5.wit.result +0 -0
  2047. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/dangling-type.wit +0 -0
  2048. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/dangling-type.wit.result +0 -0
  2049. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-function-params.wit +0 -0
  2050. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-function-params.wit.result +0 -0
  2051. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-functions.wit +0 -0
  2052. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-functions.wit.result +0 -0
  2053. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-interface.wit +0 -0
  2054. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-interface.wit.result +0 -0
  2055. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-interface2/foo.wit +0 -0
  2056. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-interface2/foo2.wit +0 -0
  2057. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-interface2.wit.result +0 -0
  2058. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-type.wit +0 -0
  2059. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/duplicate-type.wit.result +0 -0
  2060. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/empty-enum.wit +0 -0
  2061. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/empty-enum.wit.result +0 -0
  2062. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/empty-variant1.wit +0 -0
  2063. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/empty-variant1.wit.result +0 -0
  2064. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/export-twice.wit +0 -0
  2065. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/export-twice.wit.result +0 -0
  2066. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export1.wit +0 -0
  2067. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export1.wit.result +0 -0
  2068. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export2.wit +0 -0
  2069. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export2.wit.result +0 -0
  2070. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export3.wit +0 -0
  2071. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export3.wit.result +0 -0
  2072. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export4.wit +0 -0
  2073. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export4.wit.result +0 -0
  2074. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export5.wit +0 -0
  2075. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-and-export5.wit.result +0 -0
  2076. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-twice.wit +0 -0
  2077. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/import-twice.wit.result +0 -0
  2078. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-cycle.wit +0 -0
  2079. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-cycle.wit.result +0 -0
  2080. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-foreign/deps/bar/empty.wit +0 -0
  2081. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-foreign/root.wit +0 -0
  2082. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-foreign.wit.result +0 -0
  2083. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-with-id.wit +0 -0
  2084. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-with-id.wit.result +0 -0
  2085. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-with-on-id.wit +0 -0
  2086. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/include-with-on-id.wit.result +0 -0
  2087. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/invalid-toplevel.wit +0 -0
  2088. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/invalid-toplevel.wit.result +0 -0
  2089. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/invalid-type-reference.wit +0 -0
  2090. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/invalid-type-reference.wit.result +0 -0
  2091. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/invalid-type-reference2.wit +0 -0
  2092. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/invalid-type-reference2.wit.result +0 -0
  2093. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/kebab-name-include-not-found.wit +0 -0
  2094. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/kebab-name-include-not-found.wit.result +0 -0
  2095. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/kebab-name-include.wit +0 -0
  2096. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/kebab-name-include.wit.result +0 -0
  2097. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/keyword.wit +0 -0
  2098. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/keyword.wit.result +0 -0
  2099. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/missing-package.wit +0 -0
  2100. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/missing-package.wit.result +0 -0
  2101. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/multiple-package-docs/a.wit +0 -0
  2102. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/multiple-package-docs/b.wit +0 -0
  2103. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/multiple-package-docs.wit.result +0 -0
  2104. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/no-access-to-sibling-use/bar.wit +0 -0
  2105. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/no-access-to-sibling-use/foo.wit +0 -0
  2106. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/no-access-to-sibling-use.wit.result +0 -0
  2107. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/non-existance-world-include/deps/bar/baz.wit +0 -0
  2108. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/non-existance-world-include/root.wit +0 -0
  2109. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/non-existance-world-include.wit.result +0 -0
  2110. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/pkg-cycle/deps/a1/root.wit +0 -0
  2111. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/pkg-cycle/root.wit +0 -0
  2112. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/pkg-cycle.wit.result +0 -0
  2113. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/pkg-cycle2/deps/a1/root.wit +0 -0
  2114. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/pkg-cycle2/deps/a2/root.wit +0 -0
  2115. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/pkg-cycle2/root.wit +0 -0
  2116. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/pkg-cycle2.wit.result +0 -0
  2117. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/type-and-resource-same-name/deps/dep/foo.wit +0 -0
  2118. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/type-and-resource-same-name/foo.wit +0 -0
  2119. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/type-and-resource-same-name.wit.result +0 -0
  2120. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/undefined-typed.wit +0 -0
  2121. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/undefined-typed.wit.result +0 -0
  2122. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unknown-interface.wit +0 -0
  2123. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unknown-interface.wit.result +0 -0
  2124. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface1.wit +0 -0
  2125. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface1.wit.result +0 -0
  2126. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface2.wit +0 -0
  2127. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface2.wit.result +0 -0
  2128. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface3.wit +0 -0
  2129. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface3.wit.result +0 -0
  2130. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface4.wit +0 -0
  2131. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-interface4.wit.result +0 -0
  2132. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use1.wit +0 -0
  2133. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use1.wit.result +0 -0
  2134. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use10/bar.wit +0 -0
  2135. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use10/foo.wit +0 -0
  2136. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use10.wit.result +0 -0
  2137. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use2.wit +0 -0
  2138. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use2.wit.result +0 -0
  2139. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use3.wit +0 -0
  2140. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use3.wit.result +0 -0
  2141. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use7.wit +0 -0
  2142. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use7.wit.result +0 -0
  2143. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use8.wit +0 -0
  2144. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use8.wit.result +0 -0
  2145. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use9.wit +0 -0
  2146. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unresolved-use9.wit.result +0 -0
  2147. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/unterminated-string.wit.result +0 -0
  2148. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-and-include-world/deps/bar/baz.wit +0 -0
  2149. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-and-include-world/root.wit +0 -0
  2150. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-and-include-world.wit.result +0 -0
  2151. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-conflict.wit +0 -0
  2152. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-conflict.wit.result +0 -0
  2153. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-conflict2.wit +0 -0
  2154. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-conflict2.wit.result +0 -0
  2155. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-conflict3.wit +0 -0
  2156. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-conflict3.wit.result +0 -0
  2157. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-cycle1.wit +0 -0
  2158. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-cycle1.wit.result +0 -0
  2159. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-cycle4.wit +0 -0
  2160. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-cycle4.wit.result +0 -0
  2161. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-shadow1.wit +0 -0
  2162. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-shadow1.wit.result +0 -0
  2163. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-world/deps/bar/baz.wit +0 -0
  2164. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-world/root.wit +0 -0
  2165. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/use-world.wit.result +0 -0
  2166. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-interface-clash.wit +0 -0
  2167. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-interface-clash.wit.result +0 -0
  2168. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-same-fields2.wit +0 -0
  2169. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-same-fields2.wit.result +0 -0
  2170. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-same-fields3.wit +0 -0
  2171. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-same-fields3.wit.result +0 -0
  2172. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-top-level-func.wit +0 -0
  2173. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-top-level-func.wit.result +0 -0
  2174. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-top-level-func2.wit +0 -0
  2175. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/parse-fail/world-top-level-func2.wit.result +0 -0
  2176. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/random.wit +0 -0
  2177. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/random.wit.json +0 -0
  2178. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-empty.wit +0 -0
  2179. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-empty.wit.json +0 -0
  2180. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-multiple-returns-borrow.wit +0 -0
  2181. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-multiple-returns-borrow.wit.json +0 -0
  2182. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-multiple-returns-own.wit +0 -0
  2183. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-multiple-returns-own.wit.json +0 -0
  2184. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-return-borrow.wit +0 -0
  2185. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-return-borrow.wit.json +0 -0
  2186. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-return-own.wit +0 -0
  2187. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources-return-own.wit.json +0 -0
  2188. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources.wit +0 -0
  2189. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources.wit.json +0 -0
  2190. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources1.wit +0 -0
  2191. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/resources1.wit.json +0 -0
  2192. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/same-name-import-export.wit +0 -0
  2193. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/same-name-import-export.wit.json +0 -0
  2194. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/shared-types.wit +0 -0
  2195. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/shared-types.wit.json +0 -0
  2196. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/simple-wasm-text.wat +0 -0
  2197. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/simple-wasm-text.wit.json +0 -0
  2198. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/stress-export-elaborate.wit +0 -0
  2199. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/stress-export-elaborate.wit.json +0 -0
  2200. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/type-then-eof.wit +0 -0
  2201. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/type-then-eof.wit.json +0 -0
  2202. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/union-fuzz-1.wit +0 -0
  2203. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/union-fuzz-1.wit.json +0 -0
  2204. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/use-chain.wit +0 -0
  2205. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/use-chain.wit.json +0 -0
  2206. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/use.wit +0 -0
  2207. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/use.wit.json +0 -0
  2208. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/versions/deps/a1/foo.wit +0 -0
  2209. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/versions/deps/a2/foo.wit +0 -0
  2210. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/versions/foo.wit +0 -0
  2211. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/versions.wit.json +0 -0
  2212. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/wasi.wit.json +0 -0
  2213. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-diamond.wit +0 -0
  2214. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-diamond.wit.json +0 -0
  2215. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-iface-no-collide.wit +0 -0
  2216. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-iface-no-collide.wit.json +0 -0
  2217. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-implicit-import1.wit +0 -0
  2218. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-implicit-import1.wit.json +0 -0
  2219. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-implicit-import2.wit +0 -0
  2220. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-implicit-import2.wit.json +0 -0
  2221. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-implicit-import3.wit +0 -0
  2222. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-implicit-import3.wit.json +0 -0
  2223. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-same-fields4.wit +0 -0
  2224. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-same-fields4.wit.json +0 -0
  2225. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-top-level-funcs.wit +0 -0
  2226. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-top-level-funcs.wit.json +0 -0
  2227. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-top-level-resources.wit +0 -0
  2228. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/world-top-level-resources.wit.json +0 -0
  2229. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/worlds-union-dedup.wit +0 -0
  2230. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/worlds-union-dedup.wit.json +0 -0
  2231. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/worlds-with-types.wit +0 -0
  2232. /data/ext/cargo-vendor/{wit-parser-0.201.0 → wit-parser-0.202.0}/tests/ui/worlds-with-types.wit.json +0 -0
@@ -0,0 +1,2594 @@
1
+ //! Implementation of a vanilla ABI, shared between several machines. The
2
+ //! implementation here assumes that arguments will be passed in registers
3
+ //! first, then additional args on the stack; that the stack grows downward,
4
+ //! contains a standard frame (return address and frame pointer), and the
5
+ //! compiler is otherwise free to allocate space below that with its choice of
6
+ //! layout; and that the machine has some notion of caller- and callee-save
7
+ //! registers. Most modern machines, e.g. x86-64 and AArch64, should fit this
8
+ //! mold and thus both of these backends use this shared implementation.
9
+ //!
10
+ //! See the documentation in specific machine backends for the "instantiation"
11
+ //! of this generic ABI, i.e., which registers are caller/callee-save, arguments
12
+ //! and return values, and any other special requirements.
13
+ //!
14
+ //! For now the implementation here assumes a 64-bit machine, but we intend to
15
+ //! make this 32/64-bit-generic shortly.
16
+ //!
17
+ //! # Vanilla ABI
18
+ //!
19
+ //! First, arguments and return values are passed in registers up to a certain
20
+ //! fixed count, after which they overflow onto the stack. Multiple return
21
+ //! values either fit in registers, or are returned in a separate return-value
22
+ //! area on the stack, given by a hidden extra parameter.
23
+ //!
24
+ //! Note that the exact stack layout is up to us. We settled on the
25
+ //! below design based on several requirements. In particular, we need
26
+ //! to be able to generate instructions (or instruction sequences) to
27
+ //! access arguments, stack slots, and spill slots before we know how
28
+ //! many spill slots or clobber-saves there will be, because of our
29
+ //! pass structure. We also prefer positive offsets to negative
30
+ //! offsets because of an asymmetry in some machines' addressing modes
31
+ //! (e.g., on AArch64, positive offsets have a larger possible range
32
+ //! without a long-form sequence to synthesize an arbitrary
33
+ //! offset). We also need clobber-save registers to be "near" the
34
+ //! frame pointer: Windows unwind information requires it to be within
35
+ //! 240 bytes of RBP. Finally, it is not allowed to access memory
36
+ //! below the current SP value.
37
+ //!
38
+ //! We assume that a prologue first pushes the frame pointer (and
39
+ //! return address above that, if the machine does not do that in
40
+ //! hardware). We set FP to point to this two-word frame record. We
41
+ //! store all other frame slots below this two-word frame record, with
42
+ //! the stack pointer remaining at or below this fixed frame storage
43
+ //! for the rest of the function. We can then access frame storage
44
+ //! slots using positive offsets from SP. In order to allow codegen
45
+ //! for the latter before knowing how SP might be adjusted around
46
+ //! callsites, we implement a "nominal SP" tracking feature by which a
47
+ //! fixup (distance between actual SP and a "nominal" SP) is known at
48
+ //! each instruction.
49
+ //!
50
+ //! Note that if we ever support dynamic stack-space allocation (for
51
+ //! `alloca`), we will need a way to reference spill slots and stack
52
+ //! slots without "nominal SP", because we will no longer be able to
53
+ //! know a static offset from SP to the slots at any particular
54
+ //! program point. Probably the best solution at that point will be to
55
+ //! revert to using the frame pointer as the reference for all slots,
56
+ //! and creating a "nominal FP" synthetic addressing mode (analogous
57
+ //! to "nominal SP" today) to allow generating spill/reload and
58
+ //! stackslot accesses before we know how large the clobber-saves will
59
+ //! be.
60
+ //!
61
+ //! # Stack Layout
62
+ //!
63
+ //! The stack looks like:
64
+ //!
65
+ //! ```plain
66
+ //! (high address)
67
+ //!
68
+ //! +---------------------------+
69
+ //! | ... |
70
+ //! | stack args |
71
+ //! | (accessed via FP) |
72
+ //! +---------------------------+
73
+ //! SP at function entry -----> | return address |
74
+ //! +---------------------------+
75
+ //! FP after prologue --------> | FP (pushed by prologue) |
76
+ //! +---------------------------+
77
+ //! | ... |
78
+ //! | clobbered callee-saves |
79
+ //! unwind-frame base ----> | (pushed by prologue) |
80
+ //! +---------------------------+
81
+ //! | ... |
82
+ //! | spill slots |
83
+ //! | (accessed via nominal SP) |
84
+ //! | ... |
85
+ //! | stack slots |
86
+ //! | (accessed via nominal SP) |
87
+ //! nominal SP ---------------> | (alloc'd by prologue) |
88
+ //! (SP at end of prologue) +---------------------------+
89
+ //! | [alignment as needed] |
90
+ //! | ... |
91
+ //! | args for call |
92
+ //! SP before making a call --> | (pushed at callsite) |
93
+ //! +---------------------------+
94
+ //!
95
+ //! (low address)
96
+ //! ```
97
+ //!
98
+ //! # Multi-value Returns
99
+ //!
100
+ //! We support multi-value returns by using multiple return-value
101
+ //! registers. In some cases this is an extension of the base system
102
+ //! ABI. See each platform's `abi.rs` implementation for details.
103
+
104
+ use crate::entity::SecondaryMap;
105
+ use crate::fx::FxHashMap;
106
+ use crate::ir::types::*;
107
+ use crate::ir::{ArgumentExtension, ArgumentPurpose, Signature};
108
+ use crate::isa::TargetIsa;
109
+ use crate::settings::ProbestackStrategy;
110
+ use crate::CodegenError;
111
+ use crate::{ir, isa};
112
+ use crate::{machinst::*, trace};
113
+ use regalloc2::{MachineEnv, PReg, PRegSet};
114
+ use smallvec::smallvec;
115
+ use std::collections::HashMap;
116
+ use std::marker::PhantomData;
117
+ use std::mem;
118
+
119
+ /// A small vector of instructions (with some reasonable size); appropriate for
120
+ /// a small fixed sequence implementing one operation.
121
+ pub type SmallInstVec<I> = SmallVec<[I; 4]>;
122
+
123
+ /// A type used by backends to track argument-binding info in the "args"
124
+ /// pseudoinst. The pseudoinst holds a vec of `ArgPair` structs.
125
+ #[derive(Clone, Debug)]
126
+ pub struct ArgPair {
127
+ /// The vreg that is defined by this args pseudoinst.
128
+ pub vreg: Writable<Reg>,
129
+ /// The preg that the arg arrives in; this constrains the vreg's
130
+ /// placement at the pseudoinst.
131
+ pub preg: Reg,
132
+ }
133
+
134
+ /// A type used by backends to track return register binding info in the "ret"
135
+ /// pseudoinst. The pseudoinst holds a vec of `RetPair` structs.
136
+ #[derive(Clone, Debug)]
137
+ pub struct RetPair {
138
+ /// The vreg that is returned by this pseudionst.
139
+ pub vreg: Reg,
140
+ /// The preg that the arg is returned through; this constrains the vreg's
141
+ /// placement at the pseudoinst.
142
+ pub preg: Reg,
143
+ }
144
+
145
+ /// A location for (part of) an argument or return value. These "storage slots"
146
+ /// are specified for each register-sized part of an argument.
147
+ #[derive(Clone, Copy, Debug, PartialEq, Eq)]
148
+ pub enum ABIArgSlot {
149
+ /// In a real register.
150
+ Reg {
151
+ /// Register that holds this arg.
152
+ reg: RealReg,
153
+ /// Value type of this arg.
154
+ ty: ir::Type,
155
+ /// Should this arg be zero- or sign-extended?
156
+ extension: ir::ArgumentExtension,
157
+ },
158
+ /// Arguments only: on stack, at given offset from SP at entry.
159
+ Stack {
160
+ /// Offset of this arg relative to the base of stack args.
161
+ offset: i64,
162
+ /// Value type of this arg.
163
+ ty: ir::Type,
164
+ /// Should this arg be zero- or sign-extended?
165
+ extension: ir::ArgumentExtension,
166
+ },
167
+ }
168
+
169
+ impl ABIArgSlot {
170
+ /// The type of the value that will be stored in this slot.
171
+ pub fn get_type(&self) -> ir::Type {
172
+ match self {
173
+ ABIArgSlot::Reg { ty, .. } => *ty,
174
+ ABIArgSlot::Stack { ty, .. } => *ty,
175
+ }
176
+ }
177
+ }
178
+
179
+ /// A vector of `ABIArgSlot`s. Inline capacity for one element because basically
180
+ /// 100% of values use one slot. Only `i128`s need multiple slots, and they are
181
+ /// super rare (and never happen with Wasm).
182
+ pub type ABIArgSlotVec = SmallVec<[ABIArgSlot; 1]>;
183
+
184
+ /// An ABIArg is composed of one or more parts. This allows for a CLIF-level
185
+ /// Value to be passed with its parts in more than one location at the ABI
186
+ /// level. For example, a 128-bit integer may be passed in two 64-bit registers,
187
+ /// or even a 64-bit register and a 64-bit stack slot, on a 64-bit machine. The
188
+ /// number of "parts" should correspond to the number of registers used to store
189
+ /// this type according to the machine backend.
190
+ ///
191
+ /// As an invariant, the `purpose` for every part must match. As a further
192
+ /// invariant, a `StructArg` part cannot appear with any other part.
193
+ #[derive(Clone, Debug)]
194
+ pub enum ABIArg {
195
+ /// Storage slots (registers or stack locations) for each part of the
196
+ /// argument value. The number of slots must equal the number of register
197
+ /// parts used to store a value of this type.
198
+ Slots {
199
+ /// Slots, one per register part.
200
+ slots: ABIArgSlotVec,
201
+ /// Purpose of this arg.
202
+ purpose: ir::ArgumentPurpose,
203
+ },
204
+ /// Structure argument. We reserve stack space for it, but the CLIF-level
205
+ /// semantics are a little weird: the value passed to the call instruction,
206
+ /// and received in the corresponding block param, is a *pointer*. On the
207
+ /// caller side, we memcpy the data from the passed-in pointer to the stack
208
+ /// area; on the callee side, we compute a pointer to this stack area and
209
+ /// provide that as the argument's value.
210
+ StructArg {
211
+ /// Register or stack slot holding a pointer to the buffer as passed
212
+ /// by the caller to the callee. If None, the ABI defines the buffer
213
+ /// to reside at a well-known location (i.e. at `offset` below).
214
+ pointer: Option<ABIArgSlot>,
215
+ /// Offset of this arg relative to base of stack args.
216
+ offset: i64,
217
+ /// Size of this arg on the stack.
218
+ size: u64,
219
+ /// Purpose of this arg.
220
+ purpose: ir::ArgumentPurpose,
221
+ },
222
+ /// Implicit argument. Similar to a StructArg, except that we have the
223
+ /// target type, not a pointer type, at the CLIF-level. This argument is
224
+ /// still being passed via reference implicitly.
225
+ ImplicitPtrArg {
226
+ /// Register or stack slot holding a pointer to the buffer.
227
+ pointer: ABIArgSlot,
228
+ /// Offset of the argument buffer.
229
+ offset: i64,
230
+ /// Type of the implicit argument.
231
+ ty: Type,
232
+ /// Purpose of this arg.
233
+ purpose: ir::ArgumentPurpose,
234
+ },
235
+ }
236
+
237
+ impl ABIArg {
238
+ /// Create an ABIArg from one register.
239
+ pub fn reg(
240
+ reg: RealReg,
241
+ ty: ir::Type,
242
+ extension: ir::ArgumentExtension,
243
+ purpose: ir::ArgumentPurpose,
244
+ ) -> ABIArg {
245
+ ABIArg::Slots {
246
+ slots: smallvec![ABIArgSlot::Reg { reg, ty, extension }],
247
+ purpose,
248
+ }
249
+ }
250
+
251
+ /// Create an ABIArg from one stack slot.
252
+ pub fn stack(
253
+ offset: i64,
254
+ ty: ir::Type,
255
+ extension: ir::ArgumentExtension,
256
+ purpose: ir::ArgumentPurpose,
257
+ ) -> ABIArg {
258
+ ABIArg::Slots {
259
+ slots: smallvec![ABIArgSlot::Stack {
260
+ offset,
261
+ ty,
262
+ extension,
263
+ }],
264
+ purpose,
265
+ }
266
+ }
267
+ }
268
+
269
+ /// Are we computing information about arguments or return values? Much of the
270
+ /// handling is factored out into common routines; this enum allows us to
271
+ /// distinguish which case we're handling.
272
+ #[derive(Clone, Copy, Debug, PartialEq, Eq)]
273
+ pub enum ArgsOrRets {
274
+ /// Arguments.
275
+ Args,
276
+ /// Return values.
277
+ Rets,
278
+ }
279
+
280
+ /// Abstract location for a machine-specific ABI impl to translate into the
281
+ /// appropriate addressing mode.
282
+ #[derive(Clone, Copy, Debug)]
283
+ pub enum StackAMode {
284
+ /// Offset into the current frame's argument area, possibly making use of a
285
+ /// specific type for a scaled indexing operation.
286
+ ArgOffset(i64, ir::Type),
287
+ /// Offset from the nominal stack pointer, possibly making use of a specific
288
+ /// type for a scaled indexing operation.
289
+ NominalSPOffset(i64, ir::Type),
290
+ /// Offset from the real stack pointer, possibly making use of a specific
291
+ /// type for a scaled indexing operation.
292
+ SPOffset(i64, ir::Type),
293
+ }
294
+
295
+ /// Trait implemented by machine-specific backend to represent ISA flags.
296
+ pub trait IsaFlags: Clone {
297
+ /// Get a flag indicating whether forward-edge CFI is enabled.
298
+ fn is_forward_edge_cfi_enabled(&self) -> bool {
299
+ false
300
+ }
301
+ }
302
+
303
+ /// Used as an out-parameter to accumulate a sequence of `ABIArg`s in
304
+ /// `ABIMachineSpec::compute_arg_locs`. Wraps the shared allocation for all
305
+ /// `ABIArg`s in `SigSet` and exposes just the args for the current
306
+ /// `compute_arg_locs` call.
307
+ pub struct ArgsAccumulator<'a> {
308
+ sig_set_abi_args: &'a mut Vec<ABIArg>,
309
+ start: usize,
310
+ non_formal_flag: bool,
311
+ }
312
+
313
+ impl<'a> ArgsAccumulator<'a> {
314
+ fn new(sig_set_abi_args: &'a mut Vec<ABIArg>) -> Self {
315
+ let start = sig_set_abi_args.len();
316
+ ArgsAccumulator {
317
+ sig_set_abi_args,
318
+ start,
319
+ non_formal_flag: false,
320
+ }
321
+ }
322
+
323
+ #[inline]
324
+ pub fn push(&mut self, arg: ABIArg) {
325
+ debug_assert!(!self.non_formal_flag);
326
+ self.sig_set_abi_args.push(arg)
327
+ }
328
+
329
+ #[inline]
330
+ pub fn push_non_formal(&mut self, arg: ABIArg) {
331
+ self.non_formal_flag = true;
332
+ self.sig_set_abi_args.push(arg)
333
+ }
334
+
335
+ #[inline]
336
+ pub fn args(&self) -> &[ABIArg] {
337
+ &self.sig_set_abi_args[self.start..]
338
+ }
339
+
340
+ #[inline]
341
+ pub fn args_mut(&mut self) -> &mut [ABIArg] {
342
+ &mut self.sig_set_abi_args[self.start..]
343
+ }
344
+ }
345
+
346
+ /// Trait implemented by machine-specific backend to provide information about
347
+ /// register assignments and to allow generating the specific instructions for
348
+ /// stack loads/saves, prologues/epilogues, etc.
349
+ pub trait ABIMachineSpec {
350
+ /// The instruction type.
351
+ type I: VCodeInst;
352
+
353
+ /// The ISA flags type.
354
+ type F: IsaFlags;
355
+
356
+ /// Returns the number of bits in a word, that is 32/64 for 32/64-bit architecture.
357
+ fn word_bits() -> u32;
358
+
359
+ /// Returns the number of bytes in a word.
360
+ fn word_bytes() -> u32 {
361
+ return Self::word_bits() / 8;
362
+ }
363
+
364
+ /// Returns word-size integer type.
365
+ fn word_type() -> Type {
366
+ match Self::word_bits() {
367
+ 32 => I32,
368
+ 64 => I64,
369
+ _ => unreachable!(),
370
+ }
371
+ }
372
+
373
+ /// Returns word register class.
374
+ fn word_reg_class() -> RegClass {
375
+ RegClass::Int
376
+ }
377
+
378
+ /// Returns required stack alignment in bytes.
379
+ fn stack_align(call_conv: isa::CallConv) -> u32;
380
+
381
+ /// Process a list of parameters or return values and allocate them to registers
382
+ /// and stack slots.
383
+ ///
384
+ /// The argument locations should be pushed onto the given `ArgsAccumulator`
385
+ /// in order. Any extra arguments added (such as return area pointers)
386
+ /// should come at the end of the list so that the first N lowered
387
+ /// parameters align with the N clif parameters.
388
+ ///
389
+ /// Returns the stack-space used (rounded up to as alignment requires), and
390
+ /// if `add_ret_area_ptr` was passed, the index of the extra synthetic arg
391
+ /// that was added.
392
+ fn compute_arg_locs(
393
+ call_conv: isa::CallConv,
394
+ flags: &settings::Flags,
395
+ params: &[ir::AbiParam],
396
+ args_or_rets: ArgsOrRets,
397
+ add_ret_area_ptr: bool,
398
+ args: ArgsAccumulator,
399
+ ) -> CodegenResult<(u32, Option<usize>)>;
400
+
401
+ /// Generate a load from the stack.
402
+ fn gen_load_stack(mem: StackAMode, into_reg: Writable<Reg>, ty: Type) -> Self::I;
403
+
404
+ /// Generate a store to the stack.
405
+ fn gen_store_stack(mem: StackAMode, from_reg: Reg, ty: Type) -> Self::I;
406
+
407
+ /// Generate a move.
408
+ fn gen_move(to_reg: Writable<Reg>, from_reg: Reg, ty: Type) -> Self::I;
409
+
410
+ /// Generate an integer-extend operation.
411
+ fn gen_extend(
412
+ to_reg: Writable<Reg>,
413
+ from_reg: Reg,
414
+ is_signed: bool,
415
+ from_bits: u8,
416
+ to_bits: u8,
417
+ ) -> Self::I;
418
+
419
+ /// Generate an "args" pseudo-instruction to capture input args in
420
+ /// registers.
421
+ fn gen_args(args: Vec<ArgPair>) -> Self::I;
422
+
423
+ /// Generate a "rets" pseudo-instruction that moves vregs to return
424
+ /// registers.
425
+ fn gen_rets(rets: Vec<RetPair>) -> Self::I;
426
+
427
+ /// Generate an add-with-immediate. Note that even if this uses a scratch
428
+ /// register, it must satisfy two requirements:
429
+ ///
430
+ /// - The add-imm sequence must only clobber caller-save registers that are
431
+ /// not used for arguments, because it will be placed in the prologue
432
+ /// before the clobbered callee-save registers are saved.
433
+ ///
434
+ /// - The add-imm sequence must work correctly when `from_reg` and/or
435
+ /// `into_reg` are the register returned by `get_stacklimit_reg()`.
436
+ fn gen_add_imm(
437
+ call_conv: isa::CallConv,
438
+ into_reg: Writable<Reg>,
439
+ from_reg: Reg,
440
+ imm: u32,
441
+ ) -> SmallInstVec<Self::I>;
442
+
443
+ /// Generate a sequence that traps with a `TrapCode::StackOverflow` code if
444
+ /// the stack pointer is less than the given limit register (assuming the
445
+ /// stack grows downward).
446
+ fn gen_stack_lower_bound_trap(limit_reg: Reg) -> SmallInstVec<Self::I>;
447
+
448
+ /// Generate an instruction to compute an address of a stack slot (FP- or
449
+ /// SP-based offset).
450
+ fn gen_get_stack_addr(mem: StackAMode, into_reg: Writable<Reg>, ty: Type) -> Self::I;
451
+
452
+ /// Get a fixed register to use to compute a stack limit. This is needed for
453
+ /// certain sequences generated after the register allocator has already
454
+ /// run. This must satisfy two requirements:
455
+ ///
456
+ /// - It must be a caller-save register that is not used for arguments,
457
+ /// because it will be clobbered in the prologue before the clobbered
458
+ /// callee-save registers are saved.
459
+ ///
460
+ /// - It must be safe to pass as an argument and/or destination to
461
+ /// `gen_add_imm()`. This is relevant when an addition with a large
462
+ /// immediate needs its own temporary; it cannot use the same fixed
463
+ /// temporary as this one.
464
+ fn get_stacklimit_reg(call_conv: isa::CallConv) -> Reg;
465
+
466
+ /// Generate a load to the given [base+offset] address.
467
+ fn gen_load_base_offset(into_reg: Writable<Reg>, base: Reg, offset: i32, ty: Type) -> Self::I;
468
+
469
+ /// Generate a store from the given [base+offset] address.
470
+ fn gen_store_base_offset(base: Reg, offset: i32, from_reg: Reg, ty: Type) -> Self::I;
471
+
472
+ /// Adjust the stack pointer up or down.
473
+ fn gen_sp_reg_adjust(amount: i32) -> SmallInstVec<Self::I>;
474
+
475
+ /// Generate a meta-instruction that adjusts the nominal SP offset.
476
+ fn gen_nominal_sp_adj(amount: i32) -> Self::I;
477
+
478
+ /// Compute a FrameLayout structure containing a sorted list of all clobbered
479
+ /// registers that are callee-saved according to the ABI, as well as the sizes
480
+ /// of all parts of the stack frame. The result is used to emit the prologue
481
+ /// and epilogue routines.
482
+ fn compute_frame_layout(
483
+ call_conv: isa::CallConv,
484
+ flags: &settings::Flags,
485
+ sig: &Signature,
486
+ regs: &[Writable<RealReg>],
487
+ is_leaf: bool,
488
+ stack_args_size: u32,
489
+ fixed_frame_storage_size: u32,
490
+ outgoing_args_size: u32,
491
+ ) -> FrameLayout;
492
+
493
+ /// Generate the usual frame-setup sequence for this architecture: e.g.,
494
+ /// `push rbp / mov rbp, rsp` on x86-64, or `stp fp, lr, [sp, #-16]!` on
495
+ /// AArch64.
496
+ fn gen_prologue_frame_setup(
497
+ call_conv: isa::CallConv,
498
+ flags: &settings::Flags,
499
+ isa_flags: &Self::F,
500
+ frame_layout: &FrameLayout,
501
+ ) -> SmallInstVec<Self::I>;
502
+
503
+ /// Generate the usual frame-restore sequence for this architecture.
504
+ fn gen_epilogue_frame_restore(
505
+ call_conv: isa::CallConv,
506
+ flags: &settings::Flags,
507
+ isa_flags: &Self::F,
508
+ frame_layout: &FrameLayout,
509
+ ) -> SmallInstVec<Self::I>;
510
+
511
+ /// Generate a return instruction.
512
+ fn gen_return(
513
+ call_conv: isa::CallConv,
514
+ isa_flags: &Self::F,
515
+ frame_layout: &FrameLayout,
516
+ ) -> SmallInstVec<Self::I>;
517
+
518
+ /// Generate a probestack call.
519
+ fn gen_probestack(insts: &mut SmallInstVec<Self::I>, frame_size: u32);
520
+
521
+ /// Generate a inline stack probe.
522
+ fn gen_inline_probestack(
523
+ insts: &mut SmallInstVec<Self::I>,
524
+ call_conv: isa::CallConv,
525
+ frame_size: u32,
526
+ guard_size: u32,
527
+ );
528
+
529
+ /// Generate a clobber-save sequence. The implementation here should return
530
+ /// a sequence of instructions that "push" or otherwise save to the stack all
531
+ /// registers written/modified by the function body that are callee-saved.
532
+ /// The sequence of instructions should adjust the stack pointer downward,
533
+ /// and should align as necessary according to ABI requirements.
534
+ fn gen_clobber_save(
535
+ call_conv: isa::CallConv,
536
+ flags: &settings::Flags,
537
+ frame_layout: &FrameLayout,
538
+ ) -> SmallVec<[Self::I; 16]>;
539
+
540
+ /// Generate a clobber-restore sequence. This sequence should perform the
541
+ /// opposite of the clobber-save sequence generated above, assuming that SP
542
+ /// going into the sequence is at the same point that it was left when the
543
+ /// clobber-save sequence finished.
544
+ fn gen_clobber_restore(
545
+ call_conv: isa::CallConv,
546
+ flags: &settings::Flags,
547
+ frame_layout: &FrameLayout,
548
+ ) -> SmallVec<[Self::I; 16]>;
549
+
550
+ /// Generate a call instruction/sequence. This method is provided one
551
+ /// temporary register to use to synthesize the called address, if needed.
552
+ fn gen_call(
553
+ dest: &CallDest,
554
+ uses: CallArgList,
555
+ defs: CallRetList,
556
+ clobbers: PRegSet,
557
+ opcode: ir::Opcode,
558
+ tmp: Writable<Reg>,
559
+ callee_conv: isa::CallConv,
560
+ caller_conv: isa::CallConv,
561
+ callee_pop_size: u32,
562
+ ) -> SmallVec<[Self::I; 2]>;
563
+
564
+ /// Generate a memcpy invocation. Used to set up struct
565
+ /// args. Takes `src`, `dst` as read-only inputs and passes a temporary
566
+ /// allocator.
567
+ fn gen_memcpy<F: FnMut(Type) -> Writable<Reg>>(
568
+ call_conv: isa::CallConv,
569
+ dst: Reg,
570
+ src: Reg,
571
+ size: usize,
572
+ alloc_tmp: F,
573
+ ) -> SmallVec<[Self::I; 8]>;
574
+
575
+ /// Get the number of spillslots required for the given register-class.
576
+ fn get_number_of_spillslots_for_value(
577
+ rc: RegClass,
578
+ target_vector_bytes: u32,
579
+ isa_flags: &Self::F,
580
+ ) -> u32;
581
+
582
+ /// Get the current virtual-SP offset from an instruction-emission state.
583
+ fn get_virtual_sp_offset_from_state(s: &<Self::I as MachInstEmit>::State) -> i64;
584
+
585
+ /// Get the "nominal SP to FP" offset from an instruction-emission state.
586
+ fn get_nominal_sp_to_fp(s: &<Self::I as MachInstEmit>::State) -> i64;
587
+
588
+ /// Get the ABI-dependent MachineEnv for managing register allocation.
589
+ fn get_machine_env(flags: &settings::Flags, call_conv: isa::CallConv) -> &MachineEnv;
590
+
591
+ /// Get all caller-save registers, that is, registers that we expect
592
+ /// not to be saved across a call to a callee with the given ABI.
593
+ fn get_regs_clobbered_by_call(call_conv_of_callee: isa::CallConv) -> PRegSet;
594
+
595
+ /// Get the needed extension mode, given the mode attached to the argument
596
+ /// in the signature and the calling convention. The input (the attribute in
597
+ /// the signature) specifies what extension type should be done *if* the ABI
598
+ /// requires extension to the full register; this method's return value
599
+ /// indicates whether the extension actually *will* be done.
600
+ fn get_ext_mode(
601
+ call_conv: isa::CallConv,
602
+ specified: ir::ArgumentExtension,
603
+ ) -> ir::ArgumentExtension;
604
+ }
605
+
606
+ /// The id of an ABI signature within the `SigSet`.
607
+ #[derive(Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord)]
608
+ pub struct Sig(u32);
609
+ cranelift_entity::entity_impl!(Sig);
610
+
611
+ impl Sig {
612
+ fn prev(self) -> Option<Sig> {
613
+ self.0.checked_sub(1).map(Sig)
614
+ }
615
+ }
616
+
617
+ /// ABI information shared between body (callee) and caller.
618
+ #[derive(Clone, Debug)]
619
+ pub struct SigData {
620
+ /// Currently both return values and arguments are stored in a continuous space vector
621
+ /// in `SigSet::abi_args`.
622
+ ///
623
+ /// ```plain
624
+ /// +----------------------------------------------+
625
+ /// | return values |
626
+ /// | ... |
627
+ /// rets_end --> +----------------------------------------------+
628
+ /// | arguments |
629
+ /// | ... |
630
+ /// args_end --> +----------------------------------------------+
631
+ ///
632
+ /// ```
633
+ ///
634
+ /// Note we only store two offsets as rets_end == args_start, and rets_start == prev.args_end.
635
+ ///
636
+ /// Argument location ending offset (regs or stack slots). Stack offsets are relative to
637
+ /// SP on entry to function.
638
+ ///
639
+ /// This is a index into the `SigSet::abi_args`.
640
+ args_end: u32,
641
+
642
+ /// Return-value location ending offset. Stack offsets are relative to the return-area
643
+ /// pointer.
644
+ ///
645
+ /// This is a index into the `SigSet::abi_args`.
646
+ rets_end: u32,
647
+
648
+ /// Space on stack used to store arguments. We're storing the size in u32 to
649
+ /// reduce the size of the struct.
650
+ sized_stack_arg_space: u32,
651
+
652
+ /// Space on stack used to store return values. We're storing the size in u32 to
653
+ /// reduce the size of the struct.
654
+ sized_stack_ret_space: u32,
655
+
656
+ /// Index in `args` of the stack-return-value-area argument.
657
+ stack_ret_arg: Option<u16>,
658
+
659
+ /// Calling convention used.
660
+ call_conv: isa::CallConv,
661
+ }
662
+
663
+ impl SigData {
664
+ /// Get total stack space required for arguments.
665
+ pub fn sized_stack_arg_space(&self) -> i64 {
666
+ self.sized_stack_arg_space.into()
667
+ }
668
+
669
+ /// Get total stack space required for return values.
670
+ pub fn sized_stack_ret_space(&self) -> i64 {
671
+ self.sized_stack_ret_space.into()
672
+ }
673
+
674
+ /// Get calling convention used.
675
+ pub fn call_conv(&self) -> isa::CallConv {
676
+ self.call_conv
677
+ }
678
+
679
+ /// The index of the stack-return-value-area argument, if any.
680
+ pub fn stack_ret_arg(&self) -> Option<u16> {
681
+ self.stack_ret_arg
682
+ }
683
+ }
684
+
685
+ /// A (mostly) deduplicated set of ABI signatures.
686
+ ///
687
+ /// We say "mostly" because we do not dedupe between signatures interned via
688
+ /// `ir::SigRef` (direct and indirect calls; the vast majority of signatures in
689
+ /// this set) vs via `ir::Signature` (the callee itself and libcalls). Doing
690
+ /// this final bit of deduplication would require filling out the
691
+ /// `ir_signature_to_abi_sig`, which is a bunch of allocations (not just the
692
+ /// hash map itself but params and returns vecs in each signature) that we want
693
+ /// to avoid.
694
+ ///
695
+ /// In general, prefer using the `ir::SigRef`-taking methods to the
696
+ /// `ir::Signature`-taking methods when you can get away with it, as they don't
697
+ /// require cloning non-copy types that will trigger heap allocations.
698
+ ///
699
+ /// This type can be indexed by `Sig` to access its associated `SigData`.
700
+ pub struct SigSet {
701
+ /// Interned `ir::Signature`s that we already have an ABI signature for.
702
+ ir_signature_to_abi_sig: FxHashMap<ir::Signature, Sig>,
703
+
704
+ /// Interned `ir::SigRef`s that we already have an ABI signature for.
705
+ ir_sig_ref_to_abi_sig: SecondaryMap<ir::SigRef, Option<Sig>>,
706
+
707
+ /// A single, shared allocation for all `ABIArg`s used by all
708
+ /// `SigData`s. Each `SigData` references its args/rets via indices into
709
+ /// this allocation.
710
+ abi_args: Vec<ABIArg>,
711
+
712
+ /// The actual ABI signatures, keyed by `Sig`.
713
+ sigs: PrimaryMap<Sig, SigData>,
714
+ }
715
+
716
+ impl SigSet {
717
+ /// Construct a new `SigSet`, interning all of the signatures used by the
718
+ /// given function.
719
+ pub fn new<M>(func: &ir::Function, flags: &settings::Flags) -> CodegenResult<Self>
720
+ where
721
+ M: ABIMachineSpec,
722
+ {
723
+ let arg_estimate = func.dfg.signatures.len() * 6;
724
+
725
+ let mut sigs = SigSet {
726
+ ir_signature_to_abi_sig: FxHashMap::default(),
727
+ ir_sig_ref_to_abi_sig: SecondaryMap::with_capacity(func.dfg.signatures.len()),
728
+ abi_args: Vec::with_capacity(arg_estimate),
729
+ sigs: PrimaryMap::with_capacity(1 + func.dfg.signatures.len()),
730
+ };
731
+
732
+ sigs.make_abi_sig_from_ir_signature::<M>(func.signature.clone(), flags)?;
733
+ for sig_ref in func.dfg.signatures.keys() {
734
+ sigs.make_abi_sig_from_ir_sig_ref::<M>(sig_ref, &func.dfg, flags)?;
735
+ }
736
+
737
+ Ok(sigs)
738
+ }
739
+
740
+ /// Have we already interned an ABI signature for the given `ir::Signature`?
741
+ pub fn have_abi_sig_for_signature(&self, signature: &ir::Signature) -> bool {
742
+ self.ir_signature_to_abi_sig.contains_key(signature)
743
+ }
744
+
745
+ /// Construct and intern an ABI signature for the given `ir::Signature`.
746
+ pub fn make_abi_sig_from_ir_signature<M>(
747
+ &mut self,
748
+ signature: ir::Signature,
749
+ flags: &settings::Flags,
750
+ ) -> CodegenResult<Sig>
751
+ where
752
+ M: ABIMachineSpec,
753
+ {
754
+ // Because the `HashMap` entry API requires taking ownership of the
755
+ // lookup key -- and we want to avoid unnecessary clones of
756
+ // `ir::Signature`s, even at the cost of duplicate lookups -- we can't
757
+ // have a single, get-or-create-style method for interning
758
+ // `ir::Signature`s into ABI signatures. So at least (debug) assert that
759
+ // we aren't creating duplicate ABI signatures for the same
760
+ // `ir::Signature`.
761
+ debug_assert!(!self.have_abi_sig_for_signature(&signature));
762
+
763
+ let sig_data = self.from_func_sig::<M>(&signature, flags)?;
764
+ let sig = self.sigs.push(sig_data);
765
+ self.ir_signature_to_abi_sig.insert(signature, sig);
766
+ Ok(sig)
767
+ }
768
+
769
+ fn make_abi_sig_from_ir_sig_ref<M>(
770
+ &mut self,
771
+ sig_ref: ir::SigRef,
772
+ dfg: &ir::DataFlowGraph,
773
+ flags: &settings::Flags,
774
+ ) -> CodegenResult<Sig>
775
+ where
776
+ M: ABIMachineSpec,
777
+ {
778
+ if let Some(sig) = self.ir_sig_ref_to_abi_sig[sig_ref] {
779
+ return Ok(sig);
780
+ }
781
+ let signature = &dfg.signatures[sig_ref];
782
+ let sig_data = self.from_func_sig::<M>(signature, flags)?;
783
+ let sig = self.sigs.push(sig_data);
784
+ self.ir_sig_ref_to_abi_sig[sig_ref] = Some(sig);
785
+ Ok(sig)
786
+ }
787
+
788
+ /// Get the already-interned ABI signature id for the given `ir::SigRef`.
789
+ pub fn abi_sig_for_sig_ref(&self, sig_ref: ir::SigRef) -> Sig {
790
+ self.ir_sig_ref_to_abi_sig
791
+ .get(sig_ref)
792
+ // Should have a secondary map entry...
793
+ .expect("must call `make_abi_sig_from_ir_sig_ref` before `get_abi_sig_for_sig_ref`")
794
+ // ...and that entry should be initialized.
795
+ .expect("must call `make_abi_sig_from_ir_sig_ref` before `get_abi_sig_for_sig_ref`")
796
+ }
797
+
798
+ /// Get the already-interned ABI signature id for the given `ir::Signature`.
799
+ pub fn abi_sig_for_signature(&self, signature: &ir::Signature) -> Sig {
800
+ self.ir_signature_to_abi_sig
801
+ .get(signature)
802
+ .copied()
803
+ .expect("must call `make_abi_sig_from_ir_signature` before `get_abi_sig_for_signature`")
804
+ }
805
+
806
+ pub fn from_func_sig<M: ABIMachineSpec>(
807
+ &mut self,
808
+ sig: &ir::Signature,
809
+ flags: &settings::Flags,
810
+ ) -> CodegenResult<SigData> {
811
+ use std::borrow::Cow;
812
+
813
+ let returns = if let Some(sret) = missing_struct_return(sig) {
814
+ Cow::from_iter(std::iter::once(&sret).chain(&sig.returns).copied())
815
+ } else {
816
+ Cow::from(sig.returns.as_slice())
817
+ };
818
+
819
+ // Compute args and retvals from signature. Handle retvals first,
820
+ // because we may need to add a return-area arg to the args.
821
+
822
+ // NOTE: We rely on the order of the args (rets -> args) inserted to compute the offsets in
823
+ // `SigSet::args()` and `SigSet::rets()`. Therefore, we cannot change the two
824
+ // compute_arg_locs order.
825
+ let (sized_stack_ret_space, _) = M::compute_arg_locs(
826
+ sig.call_conv,
827
+ flags,
828
+ &returns,
829
+ ArgsOrRets::Rets,
830
+ /* extra ret-area ptr = */ false,
831
+ ArgsAccumulator::new(&mut self.abi_args),
832
+ )?;
833
+ let rets_end = u32::try_from(self.abi_args.len()).unwrap();
834
+
835
+ let need_stack_return_area = sized_stack_ret_space > 0;
836
+ let (sized_stack_arg_space, stack_ret_arg) = M::compute_arg_locs(
837
+ sig.call_conv,
838
+ flags,
839
+ &sig.params,
840
+ ArgsOrRets::Args,
841
+ need_stack_return_area,
842
+ ArgsAccumulator::new(&mut self.abi_args),
843
+ )?;
844
+ let args_end = u32::try_from(self.abi_args.len()).unwrap();
845
+
846
+ trace!(
847
+ "ABISig: sig {:?} => args end = {} rets end = {}
848
+ arg stack = {} ret stack = {} stack_ret_arg = {:?}",
849
+ sig,
850
+ args_end,
851
+ rets_end,
852
+ sized_stack_arg_space,
853
+ sized_stack_ret_space,
854
+ need_stack_return_area,
855
+ );
856
+
857
+ let stack_ret_arg = stack_ret_arg.map(|s| u16::try_from(s).unwrap());
858
+ Ok(SigData {
859
+ args_end,
860
+ rets_end,
861
+ sized_stack_arg_space,
862
+ sized_stack_ret_space,
863
+ stack_ret_arg,
864
+ call_conv: sig.call_conv,
865
+ })
866
+ }
867
+
868
+ /// Get this signature's ABI arguments.
869
+ pub fn args(&self, sig: Sig) -> &[ABIArg] {
870
+ let sig_data = &self.sigs[sig];
871
+ // Please see comments in `SigSet::from_func_sig` of how we store the offsets.
872
+ let start = usize::try_from(sig_data.rets_end).unwrap();
873
+ let end = usize::try_from(sig_data.args_end).unwrap();
874
+ &self.abi_args[start..end]
875
+ }
876
+
877
+ /// Get information specifying how to pass the implicit pointer
878
+ /// to the return-value area on the stack, if required.
879
+ pub fn get_ret_arg(&self, sig: Sig) -> Option<ABIArg> {
880
+ let sig_data = &self.sigs[sig];
881
+ if let Some(i) = sig_data.stack_ret_arg {
882
+ Some(self.args(sig)[usize::from(i)].clone())
883
+ } else {
884
+ None
885
+ }
886
+ }
887
+
888
+ /// Get information specifying how to pass one argument.
889
+ pub fn get_arg(&self, sig: Sig, idx: usize) -> ABIArg {
890
+ self.args(sig)[idx].clone()
891
+ }
892
+
893
+ /// Get this signature's ABI returns.
894
+ pub fn rets(&self, sig: Sig) -> &[ABIArg] {
895
+ let sig_data = &self.sigs[sig];
896
+ // Please see comments in `SigSet::from_func_sig` of how we store the offsets.
897
+ let start = usize::try_from(sig.prev().map_or(0, |prev| self.sigs[prev].args_end)).unwrap();
898
+ let end = usize::try_from(sig_data.rets_end).unwrap();
899
+ &self.abi_args[start..end]
900
+ }
901
+
902
+ /// Get information specifying how to pass one return value.
903
+ pub fn get_ret(&self, sig: Sig, idx: usize) -> ABIArg {
904
+ self.rets(sig)[idx].clone()
905
+ }
906
+
907
+ /// Return all clobbers for the callsite.
908
+ pub fn call_clobbers<M: ABIMachineSpec>(&self, sig: Sig) -> PRegSet {
909
+ let sig_data = &self.sigs[sig];
910
+ // Get clobbers: all caller-saves. These may include return value
911
+ // regs, which we will remove from the clobber set below.
912
+ let mut clobbers = M::get_regs_clobbered_by_call(sig_data.call_conv);
913
+
914
+ // Remove retval regs from clobbers. Skip StructRets: these
915
+ // are not, semantically, returns at the CLIF level, so we
916
+ // treat such a value as a clobber instead.
917
+ for ret in self.rets(sig) {
918
+ if let &ABIArg::Slots {
919
+ ref slots, purpose, ..
920
+ } = ret
921
+ {
922
+ if purpose == ir::ArgumentPurpose::StructReturn {
923
+ continue;
924
+ }
925
+ for slot in slots {
926
+ match slot {
927
+ &ABIArgSlot::Reg { reg, .. } => {
928
+ crate::trace!("call_clobbers: retval reg {:?}", reg);
929
+ clobbers.remove(PReg::from(reg));
930
+ }
931
+ _ => {}
932
+ }
933
+ }
934
+ }
935
+ }
936
+
937
+ clobbers
938
+ }
939
+
940
+ /// Get the number of arguments expected.
941
+ pub fn num_args(&self, sig: Sig) -> usize {
942
+ let len = self.args(sig).len();
943
+ if self.sigs[sig].stack_ret_arg.is_some() {
944
+ len - 1
945
+ } else {
946
+ len
947
+ }
948
+ }
949
+
950
+ /// Get the number of return values expected.
951
+ pub fn num_rets(&self, sig: Sig) -> usize {
952
+ self.rets(sig).len()
953
+ }
954
+ }
955
+
956
+ // NB: we do _not_ implement `IndexMut` because these signatures are
957
+ // deduplicated and shared!
958
+ impl std::ops::Index<Sig> for SigSet {
959
+ type Output = SigData;
960
+
961
+ fn index(&self, sig: Sig) -> &Self::Output {
962
+ &self.sigs[sig]
963
+ }
964
+ }
965
+
966
+ /// Structure describing the layout of a function's stack frame.
967
+ #[derive(Clone, Debug, Default)]
968
+ pub struct FrameLayout {
969
+ /// N.B. The areas whose sizes are given in this structure fully
970
+ /// cover the current function's stack frame, from high to low
971
+ /// stack addresses in the sequence below. Each size contains
972
+ /// any alignment padding that may be required by the ABI.
973
+
974
+ /// Size of incoming arguments on the stack. This is not technically
975
+ /// part of this function's frame, but code in the function will still
976
+ /// need to access it. Depending on the ABI, we may need to set up a
977
+ /// frame pointer to do so; we also may need to pop this area from the
978
+ /// stack upon return.
979
+ pub stack_args_size: u32,
980
+
981
+ /// Size of the "setup area", typically holding the return address
982
+ /// and/or the saved frame pointer. This may be written either during
983
+ /// the call itself (e.g. a pushed return address) or by code emitted
984
+ /// from gen_prologue_frame_setup. In any case, after that code has
985
+ /// completed execution, the stack pointer is expected to point to the
986
+ /// bottom of this area. The same holds at the start of code emitted
987
+ /// by gen_epilogue_frame_restore.
988
+ pub setup_area_size: u32,
989
+
990
+ /// Size of the area used to save callee-saved clobbered registers.
991
+ /// This area is accessed by code emitted from gen_clobber_save and
992
+ /// gen_clobber_restore.
993
+ pub clobber_size: u32,
994
+
995
+ /// Storage allocated for the fixed part of the stack frame.
996
+ /// This contains stack slots and spill slots. The "nominal SP"
997
+ /// during execution of the function points to the bottom of this.
998
+ pub fixed_frame_storage_size: u32,
999
+
1000
+ /// Stack size to be reserved for outgoing arguments, if used by
1001
+ /// the current ABI, or 0 otherwise. After gen_clobber_save and
1002
+ /// before gen_clobber_restore, the stack pointer points to the
1003
+ /// bottom of this area.
1004
+ pub outgoing_args_size: u32,
1005
+
1006
+ /// Sorted list of callee-saved registers that are clobbered
1007
+ /// according to the ABI. These registers will be saved and
1008
+ /// restored by gen_clobber_save and gen_clobber_restore.
1009
+ pub clobbered_callee_saves: Vec<Writable<RealReg>>,
1010
+ }
1011
+
1012
+ /// ABI object for a function body.
1013
+ pub struct Callee<M: ABIMachineSpec> {
1014
+ /// CLIF-level signature, possibly normalized.
1015
+ ir_sig: ir::Signature,
1016
+ /// Signature: arg and retval regs.
1017
+ sig: Sig,
1018
+ /// Defined dynamic types.
1019
+ dynamic_type_sizes: HashMap<Type, u32>,
1020
+ /// Offsets to each dynamic stackslot.
1021
+ dynamic_stackslots: PrimaryMap<DynamicStackSlot, u32>,
1022
+ /// Offsets to each sized stackslot.
1023
+ sized_stackslots: PrimaryMap<StackSlot, u32>,
1024
+ /// Total stack size of all stackslots
1025
+ stackslots_size: u32,
1026
+ /// Stack size to be reserved for outgoing arguments.
1027
+ outgoing_args_size: u32,
1028
+ /// Register-argument defs, to be provided to the `args`
1029
+ /// pseudo-inst, and pregs to constrain them to.
1030
+ reg_args: Vec<ArgPair>,
1031
+ /// Clobbered registers, from regalloc.
1032
+ clobbered: Vec<Writable<RealReg>>,
1033
+ /// Total number of spillslots, including for 'dynamic' types, from regalloc.
1034
+ spillslots: Option<usize>,
1035
+ /// Finalized frame layout for this function.
1036
+ frame_layout: Option<FrameLayout>,
1037
+ /// The register holding the return-area pointer, if needed.
1038
+ ret_area_ptr: Option<Writable<Reg>>,
1039
+ /// Temp registers required for argument setup, if needed.
1040
+ arg_temp_reg: Vec<Option<Writable<Reg>>>,
1041
+ /// Calling convention this function expects.
1042
+ call_conv: isa::CallConv,
1043
+ /// The settings controlling this function's compilation.
1044
+ flags: settings::Flags,
1045
+ /// The ISA-specific flag values controlling this function's compilation.
1046
+ isa_flags: M::F,
1047
+ /// Whether or not this function is a "leaf", meaning it calls no other
1048
+ /// functions
1049
+ is_leaf: bool,
1050
+ /// If this function has a stack limit specified, then `Reg` is where the
1051
+ /// stack limit will be located after the instructions specified have been
1052
+ /// executed.
1053
+ ///
1054
+ /// Note that this is intended for insertion into the prologue, if
1055
+ /// present. Also note that because the instructions here execute in the
1056
+ /// prologue this happens after legalization/register allocation/etc so we
1057
+ /// need to be extremely careful with each instruction. The instructions are
1058
+ /// manually register-allocated and carefully only use caller-saved
1059
+ /// registers and keep nothing live after this sequence of instructions.
1060
+ stack_limit: Option<(Reg, SmallInstVec<M::I>)>,
1061
+ /// Are we to invoke the probestack function in the prologue? If so,
1062
+ /// what is the minimum size at which we must invoke it?
1063
+ probestack_min_frame: Option<u32>,
1064
+
1065
+ _mach: PhantomData<M>,
1066
+ }
1067
+
1068
+ fn get_special_purpose_param_register(
1069
+ f: &ir::Function,
1070
+ sigs: &SigSet,
1071
+ sig: Sig,
1072
+ purpose: ir::ArgumentPurpose,
1073
+ ) -> Option<Reg> {
1074
+ let idx = f.signature.special_param_index(purpose)?;
1075
+ match &sigs.args(sig)[idx] {
1076
+ &ABIArg::Slots { ref slots, .. } => match &slots[0] {
1077
+ &ABIArgSlot::Reg { reg, .. } => Some(reg.into()),
1078
+ _ => None,
1079
+ },
1080
+ _ => None,
1081
+ }
1082
+ }
1083
+
1084
+ fn checked_round_up(val: u32, mask: u32) -> Option<u32> {
1085
+ Some(val.checked_add(mask)? & !mask)
1086
+ }
1087
+
1088
+ impl<M: ABIMachineSpec> Callee<M> {
1089
+ /// Create a new body ABI instance.
1090
+ pub fn new<'a>(
1091
+ f: &ir::Function,
1092
+ isa: &dyn TargetIsa,
1093
+ isa_flags: &M::F,
1094
+ sigs: &SigSet,
1095
+ ) -> CodegenResult<Self> {
1096
+ trace!("ABI: func signature {:?}", f.signature);
1097
+
1098
+ let flags = isa.flags().clone();
1099
+ let sig = sigs.abi_sig_for_signature(&f.signature);
1100
+
1101
+ let call_conv = f.signature.call_conv;
1102
+ // Only these calling conventions are supported.
1103
+ debug_assert!(
1104
+ call_conv == isa::CallConv::SystemV
1105
+ || call_conv == isa::CallConv::Tail
1106
+ || call_conv == isa::CallConv::Fast
1107
+ || call_conv == isa::CallConv::Cold
1108
+ || call_conv.extends_windows_fastcall()
1109
+ || call_conv == isa::CallConv::WasmtimeSystemV
1110
+ || call_conv == isa::CallConv::AppleAarch64
1111
+ || call_conv == isa::CallConv::Winch,
1112
+ "Unsupported calling convention: {:?}",
1113
+ call_conv
1114
+ );
1115
+
1116
+ // Compute sized stackslot locations and total stackslot size.
1117
+ let mut sized_stack_offset: u32 = 0;
1118
+ let mut sized_stackslots = PrimaryMap::new();
1119
+ for (stackslot, data) in f.sized_stack_slots.iter() {
1120
+ let off = sized_stack_offset;
1121
+ sized_stack_offset = sized_stack_offset
1122
+ .checked_add(data.size)
1123
+ .ok_or(CodegenError::ImplLimitExceeded)?;
1124
+ let mask = M::word_bytes() - 1;
1125
+ sized_stack_offset = checked_round_up(sized_stack_offset, mask)
1126
+ .ok_or(CodegenError::ImplLimitExceeded)?;
1127
+ debug_assert_eq!(stackslot.as_u32() as usize, sized_stackslots.len());
1128
+ sized_stackslots.push(off);
1129
+ }
1130
+
1131
+ // Compute dynamic stackslot locations and total stackslot size.
1132
+ let mut dynamic_stackslots = PrimaryMap::new();
1133
+ let mut dynamic_stack_offset: u32 = sized_stack_offset;
1134
+ for (stackslot, data) in f.dynamic_stack_slots.iter() {
1135
+ debug_assert_eq!(stackslot.as_u32() as usize, dynamic_stackslots.len());
1136
+ let off = dynamic_stack_offset;
1137
+ let ty = f.get_concrete_dynamic_ty(data.dyn_ty).ok_or_else(|| {
1138
+ CodegenError::Unsupported(format!("invalid dynamic vector type: {}", data.dyn_ty))
1139
+ })?;
1140
+ dynamic_stack_offset = dynamic_stack_offset
1141
+ .checked_add(isa.dynamic_vector_bytes(ty))
1142
+ .ok_or(CodegenError::ImplLimitExceeded)?;
1143
+ let mask = M::word_bytes() - 1;
1144
+ dynamic_stack_offset = checked_round_up(dynamic_stack_offset, mask)
1145
+ .ok_or(CodegenError::ImplLimitExceeded)?;
1146
+ dynamic_stackslots.push(off);
1147
+ }
1148
+ let stackslots_size = dynamic_stack_offset;
1149
+
1150
+ let mut dynamic_type_sizes = HashMap::with_capacity(f.dfg.dynamic_types.len());
1151
+ for (dyn_ty, _data) in f.dfg.dynamic_types.iter() {
1152
+ let ty = f
1153
+ .get_concrete_dynamic_ty(dyn_ty)
1154
+ .unwrap_or_else(|| panic!("invalid dynamic vector type: {}", dyn_ty));
1155
+ let size = isa.dynamic_vector_bytes(ty);
1156
+ dynamic_type_sizes.insert(ty, size);
1157
+ }
1158
+
1159
+ // Figure out what instructions, if any, will be needed to check the
1160
+ // stack limit. This can either be specified as a special-purpose
1161
+ // argument or as a global value which often calculates the stack limit
1162
+ // from the arguments.
1163
+ let stack_limit =
1164
+ get_special_purpose_param_register(f, sigs, sig, ir::ArgumentPurpose::StackLimit)
1165
+ .map(|reg| (reg, smallvec![]))
1166
+ .or_else(|| {
1167
+ f.stack_limit
1168
+ .map(|gv| gen_stack_limit::<M>(f, sigs, sig, gv))
1169
+ });
1170
+
1171
+ // Determine whether a probestack call is required for large enough
1172
+ // frames (and the minimum frame size if so).
1173
+ let probestack_min_frame = if flags.enable_probestack() {
1174
+ assert!(
1175
+ !flags.probestack_func_adjusts_sp(),
1176
+ "SP-adjusting probestack not supported in new backends"
1177
+ );
1178
+ Some(1 << flags.probestack_size_log2())
1179
+ } else {
1180
+ None
1181
+ };
1182
+
1183
+ Ok(Self {
1184
+ ir_sig: ensure_struct_return_ptr_is_returned(&f.signature),
1185
+ sig,
1186
+ dynamic_stackslots,
1187
+ dynamic_type_sizes,
1188
+ sized_stackslots,
1189
+ stackslots_size,
1190
+ outgoing_args_size: 0,
1191
+ reg_args: vec![],
1192
+ clobbered: vec![],
1193
+ spillslots: None,
1194
+ frame_layout: None,
1195
+ ret_area_ptr: None,
1196
+ arg_temp_reg: vec![],
1197
+ call_conv,
1198
+ flags,
1199
+ isa_flags: isa_flags.clone(),
1200
+ is_leaf: f.is_leaf(),
1201
+ stack_limit,
1202
+ probestack_min_frame,
1203
+ _mach: PhantomData,
1204
+ })
1205
+ }
1206
+
1207
+ /// Inserts instructions necessary for checking the stack limit into the
1208
+ /// prologue.
1209
+ ///
1210
+ /// This function will generate instructions necessary for perform a stack
1211
+ /// check at the header of a function. The stack check is intended to trap
1212
+ /// if the stack pointer goes below a particular threshold, preventing stack
1213
+ /// overflow in wasm or other code. The `stack_limit` argument here is the
1214
+ /// register which holds the threshold below which we're supposed to trap.
1215
+ /// This function is known to allocate `stack_size` bytes and we'll push
1216
+ /// instructions onto `insts`.
1217
+ ///
1218
+ /// Note that the instructions generated here are special because this is
1219
+ /// happening so late in the pipeline (e.g. after register allocation). This
1220
+ /// means that we need to do manual register allocation here and also be
1221
+ /// careful to not clobber any callee-saved or argument registers. For now
1222
+ /// this routine makes do with the `spilltmp_reg` as one temporary
1223
+ /// register, and a second register of `tmp2` which is caller-saved. This
1224
+ /// should be fine for us since no spills should happen in this sequence of
1225
+ /// instructions, so our register won't get accidentally clobbered.
1226
+ ///
1227
+ /// No values can be live after the prologue, but in this case that's ok
1228
+ /// because we just need to perform a stack check before progressing with
1229
+ /// the rest of the function.
1230
+ fn insert_stack_check(
1231
+ &self,
1232
+ stack_limit: Reg,
1233
+ stack_size: u32,
1234
+ insts: &mut SmallInstVec<M::I>,
1235
+ ) {
1236
+ // With no explicit stack allocated we can just emit the simple check of
1237
+ // the stack registers against the stack limit register, and trap if
1238
+ // it's out of bounds.
1239
+ if stack_size == 0 {
1240
+ insts.extend(M::gen_stack_lower_bound_trap(stack_limit));
1241
+ return;
1242
+ }
1243
+
1244
+ // Note that the 32k stack size here is pretty special. See the
1245
+ // documentation in x86/abi.rs for why this is here. The general idea is
1246
+ // that we're protecting against overflow in the addition that happens
1247
+ // below.
1248
+ if stack_size >= 32 * 1024 {
1249
+ insts.extend(M::gen_stack_lower_bound_trap(stack_limit));
1250
+ }
1251
+
1252
+ // Add the `stack_size` to `stack_limit`, placing the result in
1253
+ // `scratch`.
1254
+ //
1255
+ // Note though that `stack_limit`'s register may be the same as
1256
+ // `scratch`. If our stack size doesn't fit into an immediate this
1257
+ // means we need a second scratch register for loading the stack size
1258
+ // into a register.
1259
+ let scratch = Writable::from_reg(M::get_stacklimit_reg(self.call_conv));
1260
+ insts.extend(M::gen_add_imm(self.call_conv, scratch, stack_limit, stack_size).into_iter());
1261
+ insts.extend(M::gen_stack_lower_bound_trap(scratch.to_reg()));
1262
+ }
1263
+ }
1264
+
1265
+ /// Generates the instructions necessary for the `gv` to be materialized into a
1266
+ /// register.
1267
+ ///
1268
+ /// This function will return a register that will contain the result of
1269
+ /// evaluating `gv`. It will also return any instructions necessary to calculate
1270
+ /// the value of the register.
1271
+ ///
1272
+ /// Note that global values are typically lowered to instructions via the
1273
+ /// standard legalization pass. Unfortunately though prologue generation happens
1274
+ /// so late in the pipeline that we can't use these legalization passes to
1275
+ /// generate the instructions for `gv`. As a result we duplicate some lowering
1276
+ /// of `gv` here and support only some global values. This is similar to what
1277
+ /// the x86 backend does for now, and hopefully this can be somewhat cleaned up
1278
+ /// in the future too!
1279
+ ///
1280
+ /// Also note that this function will make use of `writable_spilltmp_reg()` as a
1281
+ /// temporary register to store values in if necessary. Currently after we write
1282
+ /// to this register there's guaranteed to be no spilled values between where
1283
+ /// it's used, because we're not participating in register allocation anyway!
1284
+ fn gen_stack_limit<M: ABIMachineSpec>(
1285
+ f: &ir::Function,
1286
+ sigs: &SigSet,
1287
+ sig: Sig,
1288
+ gv: ir::GlobalValue,
1289
+ ) -> (Reg, SmallInstVec<M::I>) {
1290
+ let mut insts = smallvec![];
1291
+ let reg = generate_gv::<M>(f, sigs, sig, gv, &mut insts);
1292
+ return (reg, insts);
1293
+ }
1294
+
1295
+ fn generate_gv<M: ABIMachineSpec>(
1296
+ f: &ir::Function,
1297
+ sigs: &SigSet,
1298
+ sig: Sig,
1299
+ gv: ir::GlobalValue,
1300
+ insts: &mut SmallInstVec<M::I>,
1301
+ ) -> Reg {
1302
+ match f.global_values[gv] {
1303
+ // Return the direct register the vmcontext is in
1304
+ ir::GlobalValueData::VMContext => {
1305
+ get_special_purpose_param_register(f, sigs, sig, ir::ArgumentPurpose::VMContext)
1306
+ .expect("no vmcontext parameter found")
1307
+ }
1308
+ // Load our base value into a register, then load from that register
1309
+ // in to a temporary register.
1310
+ ir::GlobalValueData::Load {
1311
+ base,
1312
+ offset,
1313
+ global_type: _,
1314
+ flags: _,
1315
+ } => {
1316
+ let base = generate_gv::<M>(f, sigs, sig, base, insts);
1317
+ let into_reg = Writable::from_reg(M::get_stacklimit_reg(f.stencil.signature.call_conv));
1318
+ insts.push(M::gen_load_base_offset(
1319
+ into_reg,
1320
+ base,
1321
+ offset.into(),
1322
+ M::word_type(),
1323
+ ));
1324
+ return into_reg.to_reg();
1325
+ }
1326
+ ref other => panic!("global value for stack limit not supported: {}", other),
1327
+ }
1328
+ }
1329
+
1330
+ /// If the signature needs to be legalized, then return the struct-return
1331
+ /// parameter that should be prepended to its returns. Otherwise, return `None`.
1332
+ fn missing_struct_return(sig: &ir::Signature) -> Option<ir::AbiParam> {
1333
+ let struct_ret_index = sig.special_param_index(ArgumentPurpose::StructReturn)?;
1334
+ if !sig.uses_special_return(ArgumentPurpose::StructReturn) {
1335
+ return Some(sig.params[struct_ret_index]);
1336
+ }
1337
+
1338
+ None
1339
+ }
1340
+
1341
+ fn ensure_struct_return_ptr_is_returned(sig: &ir::Signature) -> ir::Signature {
1342
+ let mut sig = sig.clone();
1343
+ if let Some(sret) = missing_struct_return(&sig) {
1344
+ sig.returns.insert(0, sret);
1345
+ }
1346
+ sig
1347
+ }
1348
+
1349
+ /// ### Pre-Regalloc Functions
1350
+ ///
1351
+ /// These methods of `Callee` may only be called before regalloc.
1352
+ impl<M: ABIMachineSpec> Callee<M> {
1353
+ /// Access the (possibly legalized) signature.
1354
+ pub fn signature(&self) -> &ir::Signature {
1355
+ debug_assert!(
1356
+ missing_struct_return(&self.ir_sig).is_none(),
1357
+ "`Callee::ir_sig` is always legalized"
1358
+ );
1359
+ &self.ir_sig
1360
+ }
1361
+
1362
+ /// Does the ABI-body code need temp registers (and if so, of what type)?
1363
+ /// They will be provided to `init()` as the `temps` arg if so.
1364
+ pub fn temps_needed(&self, sigs: &SigSet) -> Vec<Type> {
1365
+ let mut temp_tys = vec![];
1366
+ for arg in sigs.args(self.sig) {
1367
+ match arg {
1368
+ &ABIArg::ImplicitPtrArg { pointer, .. } => match &pointer {
1369
+ &ABIArgSlot::Reg { .. } => {}
1370
+ &ABIArgSlot::Stack { ty, .. } => {
1371
+ temp_tys.push(ty);
1372
+ }
1373
+ },
1374
+ _ => {}
1375
+ }
1376
+ }
1377
+ if sigs[self.sig].stack_ret_arg.is_some() {
1378
+ temp_tys.push(M::word_type());
1379
+ }
1380
+ temp_tys
1381
+ }
1382
+
1383
+ /// Initialize. This is called after the Callee is constructed because it
1384
+ /// may be provided with a vector of temp vregs, which can only be allocated
1385
+ /// once the lowering context exists.
1386
+ pub fn init(&mut self, sigs: &SigSet, temps: Vec<Writable<Reg>>) {
1387
+ let mut temps_iter = temps.into_iter();
1388
+ for arg in sigs.args(self.sig) {
1389
+ let temp = match arg {
1390
+ &ABIArg::ImplicitPtrArg { pointer, .. } => match &pointer {
1391
+ &ABIArgSlot::Reg { .. } => None,
1392
+ &ABIArgSlot::Stack { .. } => Some(temps_iter.next().unwrap()),
1393
+ },
1394
+ _ => None,
1395
+ };
1396
+ self.arg_temp_reg.push(temp);
1397
+ }
1398
+ if sigs[self.sig].stack_ret_arg.is_some() {
1399
+ self.ret_area_ptr = Some(temps_iter.next().unwrap());
1400
+ }
1401
+ }
1402
+
1403
+ /// Accumulate outgoing arguments.
1404
+ ///
1405
+ /// This ensures that at least `size` bytes are allocated in the prologue to
1406
+ /// be available for use in function calls to hold arguments and/or return
1407
+ /// values. If this function is called multiple times, the maximum of all
1408
+ /// `size` values will be available.
1409
+ pub fn accumulate_outgoing_args_size(&mut self, size: u32) {
1410
+ if size > self.outgoing_args_size {
1411
+ self.outgoing_args_size = size;
1412
+ }
1413
+ }
1414
+
1415
+ pub fn is_forward_edge_cfi_enabled(&self) -> bool {
1416
+ self.isa_flags.is_forward_edge_cfi_enabled()
1417
+ }
1418
+
1419
+ /// Get the calling convention implemented by this ABI object.
1420
+ pub fn call_conv(&self, sigs: &SigSet) -> isa::CallConv {
1421
+ sigs[self.sig].call_conv
1422
+ }
1423
+
1424
+ /// Get the ABI-dependent MachineEnv for managing register allocation.
1425
+ pub fn machine_env(&self, sigs: &SigSet) -> &MachineEnv {
1426
+ M::get_machine_env(&self.flags, self.call_conv(sigs))
1427
+ }
1428
+
1429
+ /// The offsets of all sized stack slots (not spill slots) for debuginfo purposes.
1430
+ pub fn sized_stackslot_offsets(&self) -> &PrimaryMap<StackSlot, u32> {
1431
+ &self.sized_stackslots
1432
+ }
1433
+
1434
+ /// The offsets of all dynamic stack slots (not spill slots) for debuginfo purposes.
1435
+ pub fn dynamic_stackslot_offsets(&self) -> &PrimaryMap<DynamicStackSlot, u32> {
1436
+ &self.dynamic_stackslots
1437
+ }
1438
+
1439
+ /// Generate an instruction which copies an argument to a destination
1440
+ /// register.
1441
+ pub fn gen_copy_arg_to_regs(
1442
+ &mut self,
1443
+ sigs: &SigSet,
1444
+ idx: usize,
1445
+ into_regs: ValueRegs<Writable<Reg>>,
1446
+ vregs: &mut VRegAllocator<M::I>,
1447
+ ) -> SmallInstVec<M::I> {
1448
+ let mut insts = smallvec![];
1449
+ let mut copy_arg_slot_to_reg = |slot: &ABIArgSlot, into_reg: &Writable<Reg>| {
1450
+ match slot {
1451
+ &ABIArgSlot::Reg { reg, .. } => {
1452
+ // Add a preg -> def pair to the eventual `args`
1453
+ // instruction. Extension mode doesn't matter
1454
+ // (we're copying out, not in; we ignore high bits
1455
+ // by convention).
1456
+ let arg = ArgPair {
1457
+ vreg: *into_reg,
1458
+ preg: reg.into(),
1459
+ };
1460
+ self.reg_args.push(arg);
1461
+ }
1462
+ &ABIArgSlot::Stack {
1463
+ offset,
1464
+ ty,
1465
+ extension,
1466
+ ..
1467
+ } => {
1468
+ // However, we have to respect the extension mode for stack
1469
+ // slots, or else we grab the wrong bytes on big-endian.
1470
+ let ext = M::get_ext_mode(sigs[self.sig].call_conv, extension);
1471
+ let ty =
1472
+ if ext != ArgumentExtension::None && M::word_bits() > ty_bits(ty) as u32 {
1473
+ M::word_type()
1474
+ } else {
1475
+ ty
1476
+ };
1477
+ insts.push(M::gen_load_stack(
1478
+ StackAMode::ArgOffset(offset, ty),
1479
+ *into_reg,
1480
+ ty,
1481
+ ));
1482
+ }
1483
+ }
1484
+ };
1485
+
1486
+ match &sigs.args(self.sig)[idx] {
1487
+ &ABIArg::Slots { ref slots, .. } => {
1488
+ assert_eq!(into_regs.len(), slots.len());
1489
+ for (slot, into_reg) in slots.iter().zip(into_regs.regs().iter()) {
1490
+ copy_arg_slot_to_reg(&slot, &into_reg);
1491
+ }
1492
+ }
1493
+ &ABIArg::StructArg {
1494
+ pointer, offset, ..
1495
+ } => {
1496
+ let into_reg = into_regs.only_reg().unwrap();
1497
+ if let Some(slot) = pointer {
1498
+ // Buffer address is passed in a register or stack slot.
1499
+ copy_arg_slot_to_reg(&slot, &into_reg);
1500
+ } else {
1501
+ // Buffer address is implicitly defined by the ABI.
1502
+ insts.push(M::gen_get_stack_addr(
1503
+ StackAMode::ArgOffset(offset, I8),
1504
+ into_reg,
1505
+ I8,
1506
+ ));
1507
+ }
1508
+ }
1509
+ &ABIArg::ImplicitPtrArg { pointer, ty, .. } => {
1510
+ let into_reg = into_regs.only_reg().unwrap();
1511
+ // We need to dereference the pointer.
1512
+ let base = match &pointer {
1513
+ &ABIArgSlot::Reg { reg, ty, .. } => {
1514
+ let tmp = vregs.alloc_with_deferred_error(ty).only_reg().unwrap();
1515
+ self.reg_args.push(ArgPair {
1516
+ vreg: Writable::from_reg(tmp),
1517
+ preg: reg.into(),
1518
+ });
1519
+ tmp
1520
+ }
1521
+ &ABIArgSlot::Stack { offset, ty, .. } => {
1522
+ // In this case we need a temp register to hold the address.
1523
+ // This was allocated in the `init` routine.
1524
+ let addr_reg = self.arg_temp_reg[idx].unwrap();
1525
+ insts.push(M::gen_load_stack(
1526
+ StackAMode::ArgOffset(offset, ty),
1527
+ addr_reg,
1528
+ ty,
1529
+ ));
1530
+ addr_reg.to_reg()
1531
+ }
1532
+ };
1533
+ insts.push(M::gen_load_base_offset(into_reg, base, 0, ty));
1534
+ }
1535
+ }
1536
+ insts
1537
+ }
1538
+
1539
+ /// Is the given argument needed in the body (as opposed to, e.g., serving
1540
+ /// only as a special ABI-specific placeholder)? This controls whether
1541
+ /// lowering will copy it to a virtual reg use by CLIF instructions.
1542
+ pub fn arg_is_needed_in_body(&self, _idx: usize) -> bool {
1543
+ true
1544
+ }
1545
+
1546
+ /// Generate an instruction which copies a source register to a return value slot.
1547
+ pub fn gen_copy_regs_to_retval(
1548
+ &self,
1549
+ sigs: &SigSet,
1550
+ idx: usize,
1551
+ from_regs: ValueRegs<Reg>,
1552
+ vregs: &mut VRegAllocator<M::I>,
1553
+ ) -> (SmallVec<[RetPair; 2]>, SmallInstVec<M::I>) {
1554
+ let mut reg_pairs = smallvec![];
1555
+ let mut ret = smallvec![];
1556
+ let word_bits = M::word_bits() as u8;
1557
+ match &sigs.rets(self.sig)[idx] {
1558
+ &ABIArg::Slots { ref slots, .. } => {
1559
+ assert_eq!(from_regs.len(), slots.len());
1560
+ for (slot, &from_reg) in slots.iter().zip(from_regs.regs().iter()) {
1561
+ match slot {
1562
+ &ABIArgSlot::Reg {
1563
+ reg, ty, extension, ..
1564
+ } => {
1565
+ let from_bits = ty_bits(ty) as u8;
1566
+ let ext = M::get_ext_mode(sigs[self.sig].call_conv, extension);
1567
+ let vreg = match (ext, from_bits) {
1568
+ (ir::ArgumentExtension::Uext, n)
1569
+ | (ir::ArgumentExtension::Sext, n)
1570
+ if n < word_bits =>
1571
+ {
1572
+ let signed = ext == ir::ArgumentExtension::Sext;
1573
+ let dst =
1574
+ writable_value_regs(vregs.alloc_with_deferred_error(ty))
1575
+ .only_reg()
1576
+ .unwrap();
1577
+ ret.push(M::gen_extend(
1578
+ dst, from_reg, signed, from_bits,
1579
+ /* to_bits = */ word_bits,
1580
+ ));
1581
+ dst.to_reg()
1582
+ }
1583
+ _ => {
1584
+ // No move needed, regalloc2 will emit it using the constraint
1585
+ // added by the RetPair.
1586
+ from_reg
1587
+ }
1588
+ };
1589
+ reg_pairs.push(RetPair {
1590
+ vreg,
1591
+ preg: Reg::from(reg),
1592
+ });
1593
+ }
1594
+ &ABIArgSlot::Stack {
1595
+ offset,
1596
+ ty,
1597
+ extension,
1598
+ ..
1599
+ } => {
1600
+ let mut ty = ty;
1601
+ let from_bits = ty_bits(ty) as u8;
1602
+ // A machine ABI implementation should ensure that stack frames
1603
+ // have "reasonable" size. All current ABIs for machinst
1604
+ // backends (aarch64 and x64) enforce a 128MB limit.
1605
+ let off = i32::try_from(offset).expect(
1606
+ "Argument stack offset greater than 2GB; should hit impl limit first",
1607
+ );
1608
+ let ext = M::get_ext_mode(sigs[self.sig].call_conv, extension);
1609
+ // Trash the from_reg; it should be its last use.
1610
+ match (ext, from_bits) {
1611
+ (ir::ArgumentExtension::Uext, n)
1612
+ | (ir::ArgumentExtension::Sext, n)
1613
+ if n < word_bits =>
1614
+ {
1615
+ assert_eq!(M::word_reg_class(), from_reg.class());
1616
+ let signed = ext == ir::ArgumentExtension::Sext;
1617
+ let dst =
1618
+ writable_value_regs(vregs.alloc_with_deferred_error(ty))
1619
+ .only_reg()
1620
+ .unwrap();
1621
+ ret.push(M::gen_extend(
1622
+ dst, from_reg, signed, from_bits,
1623
+ /* to_bits = */ word_bits,
1624
+ ));
1625
+ // Store the extended version.
1626
+ ty = M::word_type();
1627
+ }
1628
+ _ => {}
1629
+ };
1630
+ ret.push(M::gen_store_base_offset(
1631
+ self.ret_area_ptr.unwrap().to_reg(),
1632
+ off,
1633
+ from_reg,
1634
+ ty,
1635
+ ));
1636
+ }
1637
+ }
1638
+ }
1639
+ }
1640
+ ABIArg::StructArg { .. } => {
1641
+ panic!("StructArg in return position is unsupported");
1642
+ }
1643
+ ABIArg::ImplicitPtrArg { .. } => {
1644
+ panic!("ImplicitPtrArg in return position is unsupported");
1645
+ }
1646
+ }
1647
+ (reg_pairs, ret)
1648
+ }
1649
+
1650
+ /// Generate any setup instruction needed to save values to the
1651
+ /// return-value area. This is usually used when were are multiple return
1652
+ /// values or an otherwise large return value that must be passed on the
1653
+ /// stack; typically the ABI specifies an extra hidden argument that is a
1654
+ /// pointer to that memory.
1655
+ pub fn gen_retval_area_setup(
1656
+ &mut self,
1657
+ sigs: &SigSet,
1658
+ vregs: &mut VRegAllocator<M::I>,
1659
+ ) -> Option<M::I> {
1660
+ if let Some(i) = sigs[self.sig].stack_ret_arg {
1661
+ let insts = self.gen_copy_arg_to_regs(
1662
+ sigs,
1663
+ i.into(),
1664
+ ValueRegs::one(self.ret_area_ptr.unwrap()),
1665
+ vregs,
1666
+ );
1667
+ insts.into_iter().next().map(|inst| {
1668
+ trace!(
1669
+ "gen_retval_area_setup: inst {:?}; ptr reg is {:?}",
1670
+ inst,
1671
+ self.ret_area_ptr.unwrap().to_reg()
1672
+ );
1673
+ inst
1674
+ })
1675
+ } else {
1676
+ trace!("gen_retval_area_setup: not needed");
1677
+ None
1678
+ }
1679
+ }
1680
+
1681
+ /// Generate a return instruction.
1682
+ pub fn gen_rets(&self, rets: Vec<RetPair>) -> M::I {
1683
+ M::gen_rets(rets)
1684
+ }
1685
+
1686
+ /// Produce an instruction that computes a sized stackslot address.
1687
+ pub fn sized_stackslot_addr(
1688
+ &self,
1689
+ slot: StackSlot,
1690
+ offset: u32,
1691
+ into_reg: Writable<Reg>,
1692
+ ) -> M::I {
1693
+ // Offset from beginning of stackslot area, which is at nominal SP (see
1694
+ // [MemArg::NominalSPOffset] for more details on nominal SP tracking).
1695
+ let stack_off = self.sized_stackslots[slot] as i64;
1696
+ let sp_off: i64 = stack_off + (offset as i64);
1697
+ M::gen_get_stack_addr(StackAMode::NominalSPOffset(sp_off, I8), into_reg, I8)
1698
+ }
1699
+
1700
+ /// Produce an instruction that computes a dynamic stackslot address.
1701
+ pub fn dynamic_stackslot_addr(&self, slot: DynamicStackSlot, into_reg: Writable<Reg>) -> M::I {
1702
+ let stack_off = self.dynamic_stackslots[slot] as i64;
1703
+ M::gen_get_stack_addr(
1704
+ StackAMode::NominalSPOffset(stack_off, I64X2XN),
1705
+ into_reg,
1706
+ I64X2XN,
1707
+ )
1708
+ }
1709
+
1710
+ /// Get an `args` pseudo-inst, if any, that should appear at the
1711
+ /// very top of the function body prior to regalloc.
1712
+ pub fn take_args(&mut self) -> Option<M::I> {
1713
+ if self.reg_args.len() > 0 {
1714
+ // Very first instruction is an `args` pseudo-inst that
1715
+ // establishes live-ranges for in-register arguments and
1716
+ // constrains them at the start of the function to the
1717
+ // locations defined by the ABI.
1718
+ Some(M::gen_args(std::mem::take(&mut self.reg_args)))
1719
+ } else {
1720
+ None
1721
+ }
1722
+ }
1723
+ }
1724
+
1725
+ /// ### Post-Regalloc Functions
1726
+ ///
1727
+ /// These methods of `Callee` may only be called after
1728
+ /// regalloc.
1729
+ impl<M: ABIMachineSpec> Callee<M> {
1730
+ /// Update with the number of spillslots, post-regalloc.
1731
+ pub fn set_num_spillslots(&mut self, slots: usize) {
1732
+ self.spillslots = Some(slots);
1733
+ }
1734
+
1735
+ /// Update with the clobbered registers, post-regalloc.
1736
+ pub fn set_clobbered(&mut self, clobbered: Vec<Writable<RealReg>>) {
1737
+ self.clobbered = clobbered;
1738
+ }
1739
+
1740
+ /// Generate a stack map, given a list of spillslots and the emission state
1741
+ /// at a given program point (prior to emission of the safepointing
1742
+ /// instruction).
1743
+ pub fn spillslots_to_stack_map(
1744
+ &self,
1745
+ slots: &[SpillSlot],
1746
+ state: &<M::I as MachInstEmit>::State,
1747
+ ) -> StackMap {
1748
+ let virtual_sp_offset = M::get_virtual_sp_offset_from_state(state);
1749
+ let nominal_sp_to_fp = M::get_nominal_sp_to_fp(state);
1750
+ assert!(virtual_sp_offset >= 0);
1751
+ trace!(
1752
+ "spillslots_to_stackmap: slots = {:?}, state = {:?}",
1753
+ slots,
1754
+ state
1755
+ );
1756
+ let map_size = (virtual_sp_offset + nominal_sp_to_fp) as u32;
1757
+ let bytes = M::word_bytes();
1758
+ let map_words = (map_size + bytes - 1) / bytes;
1759
+ let mut bits = std::iter::repeat(false)
1760
+ .take(map_words as usize)
1761
+ .collect::<Vec<bool>>();
1762
+
1763
+ let first_spillslot_word =
1764
+ ((self.stackslots_size + virtual_sp_offset as u32) / bytes) as usize;
1765
+ for &slot in slots {
1766
+ let slot = slot.index();
1767
+ bits[first_spillslot_word + slot] = true;
1768
+ }
1769
+
1770
+ StackMap::from_slice(&bits[..])
1771
+ }
1772
+
1773
+ /// Compute the final frame layout, post-regalloc.
1774
+ ///
1775
+ /// This must be called before gen_prologue or gen_epilogue.
1776
+ pub fn compute_frame_layout(&mut self, sigs: &SigSet) {
1777
+ let bytes = M::word_bytes();
1778
+ let total_stacksize = self.stackslots_size + bytes * self.spillslots.unwrap() as u32;
1779
+ let mask = M::stack_align(self.call_conv) - 1;
1780
+ let total_stacksize = (total_stacksize + mask) & !mask; // 16-align the stack.
1781
+ self.frame_layout = Some(M::compute_frame_layout(
1782
+ self.call_conv,
1783
+ &self.flags,
1784
+ self.signature(),
1785
+ &self.clobbered,
1786
+ self.is_leaf,
1787
+ self.stack_args_size(sigs),
1788
+ total_stacksize,
1789
+ self.outgoing_args_size,
1790
+ ));
1791
+ }
1792
+
1793
+ /// Generate a prologue, post-regalloc.
1794
+ ///
1795
+ /// This should include any stack frame or other setup necessary to use the
1796
+ /// other methods (`load_arg`, `store_retval`, and spillslot accesses.)
1797
+ pub fn gen_prologue(&self) -> SmallInstVec<M::I> {
1798
+ let frame_layout = self.frame_layout();
1799
+ let mut insts = smallvec![];
1800
+
1801
+ // Set up frame.
1802
+ insts.extend(M::gen_prologue_frame_setup(
1803
+ self.call_conv,
1804
+ &self.flags,
1805
+ &self.isa_flags,
1806
+ &frame_layout,
1807
+ ));
1808
+
1809
+ // The stack limit check needs to cover all the stack adjustments we
1810
+ // might make, up to the next stack limit check in any function we
1811
+ // call. Since this happens after frame setup, the current function's
1812
+ // setup area needs to be accounted for in the caller's stack limit
1813
+ // check, but we need to account for any setup area that our callees
1814
+ // might need. Note that s390x may also use the outgoing args area for
1815
+ // backtrace support even in leaf functions, so that should be accounted
1816
+ // for unconditionally.
1817
+ let total_stacksize = frame_layout.clobber_size
1818
+ + frame_layout.fixed_frame_storage_size
1819
+ + frame_layout.outgoing_args_size
1820
+ + if self.is_leaf {
1821
+ 0
1822
+ } else {
1823
+ frame_layout.setup_area_size
1824
+ };
1825
+
1826
+ // Leaf functions with zero stack don't need a stack check if one's
1827
+ // specified, otherwise always insert the stack check.
1828
+ if total_stacksize > 0 || !self.is_leaf {
1829
+ if let Some((reg, stack_limit_load)) = &self.stack_limit {
1830
+ insts.extend(stack_limit_load.clone());
1831
+ self.insert_stack_check(*reg, total_stacksize, &mut insts);
1832
+ }
1833
+
1834
+ let needs_probestack = self
1835
+ .probestack_min_frame
1836
+ .map_or(false, |min_frame| total_stacksize >= min_frame);
1837
+
1838
+ if needs_probestack {
1839
+ match self.flags.probestack_strategy() {
1840
+ ProbestackStrategy::Inline => {
1841
+ let guard_size = 1 << self.flags.probestack_size_log2();
1842
+ M::gen_inline_probestack(
1843
+ &mut insts,
1844
+ self.call_conv,
1845
+ total_stacksize,
1846
+ guard_size,
1847
+ )
1848
+ }
1849
+ ProbestackStrategy::Outline => M::gen_probestack(&mut insts, total_stacksize),
1850
+ }
1851
+ }
1852
+ }
1853
+
1854
+ // Save clobbered registers.
1855
+ insts.extend(M::gen_clobber_save(
1856
+ self.call_conv,
1857
+ &self.flags,
1858
+ &frame_layout,
1859
+ ));
1860
+
1861
+ // N.B.: "nominal SP", which we use to refer to stackslots and
1862
+ // spillslots, is defined to be equal to the stack pointer at this point
1863
+ // in the prologue.
1864
+ //
1865
+ // If we push any further data onto the stack in the function
1866
+ // body, we emit a virtual-SP adjustment meta-instruction so
1867
+ // that the nominal SP references behave as if SP were still
1868
+ // at this point. See documentation for
1869
+ // [crate::machinst::abi](this module) for more details
1870
+ // on stackframe layout and nominal SP maintenance.
1871
+
1872
+ insts
1873
+ }
1874
+
1875
+ /// Generate an epilogue, post-regalloc.
1876
+ ///
1877
+ /// Note that this must generate the actual return instruction (rather than
1878
+ /// emitting this in the lowering logic), because the epilogue code comes
1879
+ /// before the return and the two are likely closely related.
1880
+ pub fn gen_epilogue(&self) -> SmallInstVec<M::I> {
1881
+ let frame_layout = self.frame_layout();
1882
+ let mut insts = smallvec![];
1883
+
1884
+ // Restore clobbered registers.
1885
+ insts.extend(M::gen_clobber_restore(
1886
+ self.call_conv,
1887
+ &self.flags,
1888
+ &frame_layout,
1889
+ ));
1890
+
1891
+ // N.B.: we do *not* emit a nominal SP adjustment here, because (i) there will be no
1892
+ // references to nominal SP offsets before the return below, and (ii) the instruction
1893
+ // emission tracks running SP offset linearly (in straight-line order), not according to
1894
+ // the CFG, so early returns in the middle of function bodies would cause an incorrect
1895
+ // offset for the rest of the body.
1896
+
1897
+ // Tear down frame.
1898
+ insts.extend(M::gen_epilogue_frame_restore(
1899
+ self.call_conv,
1900
+ &self.flags,
1901
+ &self.isa_flags,
1902
+ &frame_layout,
1903
+ ));
1904
+
1905
+ // And return.
1906
+ insts.extend(M::gen_return(
1907
+ self.call_conv,
1908
+ &self.isa_flags,
1909
+ &frame_layout,
1910
+ ));
1911
+
1912
+ trace!("Epilogue: {:?}", insts);
1913
+ insts
1914
+ }
1915
+
1916
+ /// Return a reference to the computed frame layout information. This
1917
+ /// function will panic if it's called before [`Self::compute_frame_layout`].
1918
+ pub fn frame_layout(&self) -> &FrameLayout {
1919
+ self.frame_layout
1920
+ .as_ref()
1921
+ .expect("frame layout not computed before prologue generation")
1922
+ }
1923
+
1924
+ /// Returns the full frame size for the given function, after prologue
1925
+ /// emission has run. This comprises the spill slots and stack-storage
1926
+ /// slots as well as storage for clobbered callee-save registers, but
1927
+ /// not arguments arguments pushed at callsites within this function,
1928
+ /// or other ephemeral pushes.
1929
+ pub fn frame_size(&self) -> u32 {
1930
+ let frame_layout = self.frame_layout();
1931
+ frame_layout.clobber_size + frame_layout.fixed_frame_storage_size
1932
+ }
1933
+
1934
+ /// Returns offset from the nominal SP to caller's SP.
1935
+ pub fn nominal_sp_to_caller_sp_offset(&self) -> u32 {
1936
+ let frame_layout = self.frame_layout();
1937
+ frame_layout.clobber_size
1938
+ + frame_layout.fixed_frame_storage_size
1939
+ + frame_layout.setup_area_size
1940
+ }
1941
+
1942
+ /// Returns the size of arguments expected on the stack.
1943
+ pub fn stack_args_size(&self, sigs: &SigSet) -> u32 {
1944
+ sigs[self.sig].sized_stack_arg_space
1945
+ }
1946
+
1947
+ /// Get the spill-slot size.
1948
+ pub fn get_spillslot_size(&self, rc: RegClass) -> u32 {
1949
+ let max = if self.dynamic_type_sizes.len() == 0 {
1950
+ 16
1951
+ } else {
1952
+ *self
1953
+ .dynamic_type_sizes
1954
+ .iter()
1955
+ .max_by(|x, y| x.1.cmp(&y.1))
1956
+ .map(|(_k, v)| v)
1957
+ .unwrap()
1958
+ };
1959
+ M::get_number_of_spillslots_for_value(rc, max, &self.isa_flags)
1960
+ }
1961
+
1962
+ /// Get the spill slot offset relative to nominal SP.
1963
+ pub fn get_spillslot_offset(&self, slot: SpillSlot) -> i64 {
1964
+ // Offset from beginning of spillslot area, which is at nominal SP + stackslots_size.
1965
+ let islot = slot.index() as i64;
1966
+ let spill_off = islot * M::word_bytes() as i64;
1967
+ let sp_off = self.stackslots_size as i64 + spill_off;
1968
+
1969
+ sp_off
1970
+ }
1971
+
1972
+ /// Generate a spill.
1973
+ pub fn gen_spill(&self, to_slot: SpillSlot, from_reg: RealReg) -> M::I {
1974
+ let ty = M::I::canonical_type_for_rc(from_reg.class());
1975
+ debug_assert_eq!(<M>::I::rc_for_type(ty).unwrap().1, &[ty]);
1976
+
1977
+ let sp_off = self.get_spillslot_offset(to_slot);
1978
+ trace!("gen_spill: {from_reg:?} into slot {to_slot:?} at offset {sp_off}");
1979
+
1980
+ let from = StackAMode::NominalSPOffset(sp_off, ty);
1981
+ <M>::gen_store_stack(from, Reg::from(from_reg), ty)
1982
+ }
1983
+
1984
+ /// Generate a reload (fill).
1985
+ pub fn gen_reload(&self, to_reg: Writable<RealReg>, from_slot: SpillSlot) -> M::I {
1986
+ let ty = M::I::canonical_type_for_rc(to_reg.to_reg().class());
1987
+ debug_assert_eq!(<M>::I::rc_for_type(ty).unwrap().1, &[ty]);
1988
+
1989
+ let sp_off = self.get_spillslot_offset(from_slot);
1990
+ trace!("gen_reload: {to_reg:?} from slot {from_slot:?} at offset {sp_off}");
1991
+
1992
+ let from = StackAMode::NominalSPOffset(sp_off, ty);
1993
+ <M>::gen_load_stack(from, to_reg.map(Reg::from), ty)
1994
+ }
1995
+ }
1996
+
1997
+ /// The register or stack slot location of an argument.
1998
+ #[derive(Clone, Debug)]
1999
+ pub enum ArgLoc {
2000
+ /// The physical register that the value will be passed through.
2001
+ Reg(PReg),
2002
+
2003
+ /// The offset into the argument area where this value will be passed. It's up to the consumer
2004
+ /// of the `ArgLoc::Stack` variant to decide how to find the argument area that the `offset`
2005
+ /// value is relative to. Depending on the abi, this may end up being relative to SP or FP, for
2006
+ /// example with a tail call where the frame is reused.
2007
+ Stack { offset: i64, ty: ir::Type },
2008
+ }
2009
+
2010
+ /// An input argument to a call instruction: the vreg that is used,
2011
+ /// and the preg it is constrained to (per the ABI).
2012
+ #[derive(Clone, Debug)]
2013
+ pub struct CallArgPair {
2014
+ /// The virtual register to use for the argument.
2015
+ pub vreg: Reg,
2016
+ /// The real register into which the arg goes.
2017
+ pub preg: Reg,
2018
+ }
2019
+
2020
+ /// An output return value from a call instruction: the vreg that is
2021
+ /// defined, and the preg it is constrained to (per the ABI).
2022
+ #[derive(Clone, Debug)]
2023
+ pub struct CallRetPair {
2024
+ /// The virtual register to define from this return value.
2025
+ pub vreg: Writable<Reg>,
2026
+ /// The real register from which the return value is read.
2027
+ pub preg: Reg,
2028
+ }
2029
+
2030
+ pub type CallArgList = SmallVec<[CallArgPair; 8]>;
2031
+ pub type CallRetList = SmallVec<[CallRetPair; 8]>;
2032
+
2033
+ /// ABI object for a callsite.
2034
+ pub struct CallSite<M: ABIMachineSpec> {
2035
+ /// The called function's signature.
2036
+ sig: Sig,
2037
+ /// All register uses for the callsite, i.e., function args, with
2038
+ /// VReg and the physical register it is constrained to.
2039
+ uses: CallArgList,
2040
+ /// All defs for the callsite, i.e., return values.
2041
+ defs: CallRetList,
2042
+ /// Caller-save clobbers.
2043
+ clobbers: PRegSet,
2044
+ /// Call destination.
2045
+ dest: CallDest,
2046
+ /// Actual call opcode; used to distinguish various types of calls.
2047
+ opcode: ir::Opcode,
2048
+ /// Caller's calling convention.
2049
+ caller_conv: isa::CallConv,
2050
+ /// The settings controlling this compilation.
2051
+ flags: settings::Flags,
2052
+
2053
+ _mach: PhantomData<M>,
2054
+ }
2055
+
2056
+ /// Destination for a call.
2057
+ #[derive(Debug, Clone)]
2058
+ pub enum CallDest {
2059
+ /// Call to an ExtName (named function symbol).
2060
+ ExtName(ir::ExternalName, RelocDistance),
2061
+ /// Indirect call to a function pointer in a register.
2062
+ Reg(Reg),
2063
+ }
2064
+
2065
+ impl<M: ABIMachineSpec> CallSite<M> {
2066
+ /// Create a callsite ABI object for a call directly to the specified function.
2067
+ pub fn from_func(
2068
+ sigs: &SigSet,
2069
+ sig_ref: ir::SigRef,
2070
+ extname: &ir::ExternalName,
2071
+ opcode: ir::Opcode,
2072
+ dist: RelocDistance,
2073
+ caller_conv: isa::CallConv,
2074
+ flags: settings::Flags,
2075
+ ) -> CallSite<M> {
2076
+ let sig = sigs.abi_sig_for_sig_ref(sig_ref);
2077
+ let clobbers = sigs.call_clobbers::<M>(sig);
2078
+ CallSite {
2079
+ sig,
2080
+ uses: smallvec![],
2081
+ defs: smallvec![],
2082
+ clobbers,
2083
+ dest: CallDest::ExtName(extname.clone(), dist),
2084
+ opcode,
2085
+ caller_conv,
2086
+ flags,
2087
+ _mach: PhantomData,
2088
+ }
2089
+ }
2090
+
2091
+ /// Create a callsite ABI object for a call directly to the specified
2092
+ /// libcall.
2093
+ pub fn from_libcall(
2094
+ sigs: &SigSet,
2095
+ sig: &ir::Signature,
2096
+ extname: &ir::ExternalName,
2097
+ dist: RelocDistance,
2098
+ caller_conv: isa::CallConv,
2099
+ flags: settings::Flags,
2100
+ ) -> CallSite<M> {
2101
+ let sig = sigs.abi_sig_for_signature(sig);
2102
+ let clobbers = sigs.call_clobbers::<M>(sig);
2103
+ CallSite {
2104
+ sig,
2105
+ uses: smallvec![],
2106
+ defs: smallvec![],
2107
+ clobbers,
2108
+ dest: CallDest::ExtName(extname.clone(), dist),
2109
+ opcode: ir::Opcode::Call,
2110
+ caller_conv,
2111
+ flags,
2112
+ _mach: PhantomData,
2113
+ }
2114
+ }
2115
+
2116
+ /// Create a callsite ABI object for a call to a function pointer with the
2117
+ /// given signature.
2118
+ pub fn from_ptr(
2119
+ sigs: &SigSet,
2120
+ sig_ref: ir::SigRef,
2121
+ ptr: Reg,
2122
+ opcode: ir::Opcode,
2123
+ caller_conv: isa::CallConv,
2124
+ flags: settings::Flags,
2125
+ ) -> CallSite<M> {
2126
+ let sig = sigs.abi_sig_for_sig_ref(sig_ref);
2127
+ let clobbers = sigs.call_clobbers::<M>(sig);
2128
+ CallSite {
2129
+ sig,
2130
+ uses: smallvec![],
2131
+ defs: smallvec![],
2132
+ clobbers,
2133
+ dest: CallDest::Reg(ptr),
2134
+ opcode,
2135
+ caller_conv,
2136
+ flags,
2137
+ _mach: PhantomData,
2138
+ }
2139
+ }
2140
+
2141
+ pub(crate) fn dest(&self) -> &CallDest {
2142
+ &self.dest
2143
+ }
2144
+
2145
+ pub(crate) fn opcode(&self) -> ir::Opcode {
2146
+ self.opcode
2147
+ }
2148
+
2149
+ pub(crate) fn take_uses(self) -> CallArgList {
2150
+ self.uses
2151
+ }
2152
+
2153
+ pub(crate) fn sig<'a>(&self, sigs: &'a SigSet) -> &'a SigData {
2154
+ &sigs[self.sig]
2155
+ }
2156
+
2157
+ pub(crate) fn is_tail_call(&self) -> bool {
2158
+ matches!(
2159
+ self.opcode,
2160
+ ir::Opcode::ReturnCall | ir::Opcode::ReturnCallIndirect
2161
+ )
2162
+ }
2163
+ }
2164
+
2165
+ fn adjust_stack_and_nominal_sp<M: ABIMachineSpec>(ctx: &mut Lower<M::I>, amount: i32) {
2166
+ if amount == 0 {
2167
+ return;
2168
+ }
2169
+ for inst in M::gen_sp_reg_adjust(amount) {
2170
+ ctx.emit(inst);
2171
+ }
2172
+ ctx.emit(M::gen_nominal_sp_adj(-amount));
2173
+ }
2174
+
2175
+ impl<M: ABIMachineSpec> CallSite<M> {
2176
+ /// Get the number of arguments expected.
2177
+ pub fn num_args(&self, sigs: &SigSet) -> usize {
2178
+ sigs.num_args(self.sig)
2179
+ }
2180
+
2181
+ /// Allocate space for building a `return_call`'s temporary frame before we
2182
+ /// copy it over the current frame.
2183
+ pub fn emit_allocate_tail_call_frame(&self, ctx: &mut Lower<M::I>) -> u32 {
2184
+ // The necessary stack space is:
2185
+ //
2186
+ // sizeof(callee_sig.stack_args)
2187
+ //
2188
+ // Note that any stack return space conceptually belongs to our caller
2189
+ // and the function we are tail calling to has the same return type and
2190
+ // will reuse that stack return space.
2191
+ //
2192
+ // The return address is pushed later on, after the stack arguments are
2193
+ // filled in.
2194
+ let frame_size = ctx.sigs()[self.sig].sized_stack_arg_space;
2195
+
2196
+ let adjustment = -i32::try_from(frame_size).unwrap();
2197
+ adjust_stack_and_nominal_sp::<M>(ctx, adjustment);
2198
+
2199
+ frame_size
2200
+ }
2201
+
2202
+ /// Emit code to pre-adjust the stack, prior to argument copies and call.
2203
+ pub fn emit_stack_pre_adjust(&self, ctx: &mut Lower<M::I>) {
2204
+ let sig = &ctx.sigs()[self.sig];
2205
+ let stack_space = sig.sized_stack_arg_space + sig.sized_stack_ret_space;
2206
+ let stack_space = i32::try_from(stack_space).unwrap();
2207
+ adjust_stack_and_nominal_sp::<M>(ctx, -stack_space);
2208
+ }
2209
+
2210
+ /// Emit code to post-adjust the stack, after call return and return-value copies.
2211
+ pub fn emit_stack_post_adjust(&self, ctx: &mut Lower<M::I>) {
2212
+ let sig = &ctx.sigs()[self.sig];
2213
+
2214
+ let stack_space = if sig.call_conv() == isa::CallConv::Tail {
2215
+ // The "tail" calling convention has callees clean up stack
2216
+ // arguments, not callers. Callers still clean up any stack return
2217
+ // space, however.
2218
+ sig.sized_stack_ret_space
2219
+ } else {
2220
+ sig.sized_stack_arg_space + sig.sized_stack_ret_space
2221
+ };
2222
+ let stack_space = i32::try_from(stack_space).unwrap();
2223
+
2224
+ adjust_stack_and_nominal_sp::<M>(ctx, stack_space);
2225
+ }
2226
+
2227
+ /// Emit a copy of a large argument into its associated stack buffer, if
2228
+ /// any. We must be careful to perform all these copies (as necessary)
2229
+ /// before setting up the argument registers, since we may have to invoke
2230
+ /// memcpy(), which could clobber any registers already set up. The
2231
+ /// back-end should call this routine for all arguments before calling
2232
+ /// `gen_arg` for all arguments.
2233
+ pub fn emit_copy_regs_to_buffer(
2234
+ &self,
2235
+ ctx: &mut Lower<M::I>,
2236
+ idx: usize,
2237
+ from_regs: ValueRegs<Reg>,
2238
+ ) {
2239
+ match &ctx.sigs().args(self.sig)[idx] {
2240
+ &ABIArg::Slots { .. } | &ABIArg::ImplicitPtrArg { .. } => {}
2241
+ &ABIArg::StructArg { offset, size, .. } => {
2242
+ let src_ptr = from_regs.only_reg().unwrap();
2243
+ let dst_ptr = ctx.alloc_tmp(M::word_type()).only_reg().unwrap();
2244
+ ctx.emit(M::gen_get_stack_addr(
2245
+ StackAMode::SPOffset(offset, I8),
2246
+ dst_ptr,
2247
+ I8,
2248
+ ));
2249
+ // Emit a memcpy from `src_ptr` to `dst_ptr` of `size` bytes.
2250
+ // N.B.: because we process StructArg params *first*, this is
2251
+ // safe w.r.t. clobbers: we have not yet filled in any other
2252
+ // arg regs.
2253
+ let memcpy_call_conv =
2254
+ isa::CallConv::for_libcall(&self.flags, ctx.sigs()[self.sig].call_conv);
2255
+ for insn in M::gen_memcpy(
2256
+ memcpy_call_conv,
2257
+ dst_ptr.to_reg(),
2258
+ src_ptr,
2259
+ size as usize,
2260
+ |ty| ctx.alloc_tmp(ty).only_reg().unwrap(),
2261
+ )
2262
+ .into_iter()
2263
+ {
2264
+ ctx.emit(insn);
2265
+ }
2266
+ }
2267
+ }
2268
+ }
2269
+
2270
+ /// Emit moves or uses for the moves list generated by [`Self::gen_arg`].
2271
+ pub fn emit_arg_moves(&mut self, ctx: &mut Lower<M::I>, moves: SmallVec<[(VReg, ArgLoc); 2]>) {
2272
+ for (vreg, loc) in moves {
2273
+ let vreg = vreg.into();
2274
+ match loc {
2275
+ ArgLoc::Reg(preg) => self.uses.push(CallArgPair {
2276
+ vreg,
2277
+ preg: preg.into(),
2278
+ }),
2279
+ ArgLoc::Stack { offset, ty } => {
2280
+ let amode = if self.is_tail_call() {
2281
+ assert!(
2282
+ self.flags.preserve_frame_pointers(),
2283
+ "tail calls require frame pointers to be enabled"
2284
+ );
2285
+
2286
+ StackAMode::ArgOffset(offset, ty)
2287
+ } else {
2288
+ StackAMode::SPOffset(offset, ty)
2289
+ };
2290
+ ctx.emit(M::gen_store_stack(amode, vreg, ty))
2291
+ }
2292
+ }
2293
+ }
2294
+ }
2295
+
2296
+ /// Add a constraint for an argument value from a source register.
2297
+ /// For large arguments with associated stack buffer, this may
2298
+ /// load the address of the buffer into the argument register, if
2299
+ /// required by the ABI.
2300
+ pub fn gen_arg(
2301
+ &mut self,
2302
+ ctx: &mut Lower<M::I>,
2303
+ idx: usize,
2304
+ from_regs: ValueRegs<Reg>,
2305
+ ) -> SmallVec<[(VReg, ArgLoc); 2]> {
2306
+ let mut locs = smallvec![];
2307
+ let word_rc = M::word_reg_class();
2308
+ let word_bits = M::word_bits() as usize;
2309
+
2310
+ match ctx.sigs().args(self.sig)[idx].clone() {
2311
+ ABIArg::Slots { ref slots, .. } => {
2312
+ assert_eq!(from_regs.len(), slots.len());
2313
+ for (slot, from_reg) in slots.iter().zip(from_regs.regs().iter()) {
2314
+ match slot {
2315
+ &ABIArgSlot::Reg {
2316
+ reg, ty, extension, ..
2317
+ } => {
2318
+ let ext = M::get_ext_mode(ctx.sigs()[self.sig].call_conv, extension);
2319
+ if ext != ir::ArgumentExtension::None && ty_bits(ty) < word_bits {
2320
+ assert_eq!(word_rc, reg.class());
2321
+ let signed = match ext {
2322
+ ir::ArgumentExtension::Uext => false,
2323
+ ir::ArgumentExtension::Sext => true,
2324
+ _ => unreachable!(),
2325
+ };
2326
+ let extend_result =
2327
+ ctx.alloc_tmp(M::word_type()).only_reg().unwrap();
2328
+ ctx.emit(M::gen_extend(
2329
+ extend_result,
2330
+ *from_reg,
2331
+ signed,
2332
+ ty_bits(ty) as u8,
2333
+ word_bits as u8,
2334
+ ));
2335
+ locs.push((extend_result.to_reg().into(), ArgLoc::Reg(reg.into())));
2336
+ } else if ty.is_ref() {
2337
+ // Reference-typed args need to be
2338
+ // passed as a copy; the original vreg
2339
+ // is constrained to the stack and
2340
+ // this copy is in a reg.
2341
+ let ref_copy = ctx.alloc_tmp(M::word_type()).only_reg().unwrap();
2342
+ ctx.emit(M::gen_move(ref_copy, *from_reg, M::word_type()));
2343
+
2344
+ locs.push((ref_copy.to_reg().into(), ArgLoc::Reg(reg.into())));
2345
+ } else {
2346
+ locs.push((from_reg.into(), ArgLoc::Reg(reg.into())));
2347
+ }
2348
+ }
2349
+ &ABIArgSlot::Stack {
2350
+ offset,
2351
+ ty,
2352
+ extension,
2353
+ ..
2354
+ } => {
2355
+ let ext = M::get_ext_mode(ctx.sigs()[self.sig].call_conv, extension);
2356
+ let (data, ty) =
2357
+ if ext != ir::ArgumentExtension::None && ty_bits(ty) < word_bits {
2358
+ assert_eq!(word_rc, from_reg.class());
2359
+ let signed = match ext {
2360
+ ir::ArgumentExtension::Uext => false,
2361
+ ir::ArgumentExtension::Sext => true,
2362
+ _ => unreachable!(),
2363
+ };
2364
+ let extend_result =
2365
+ ctx.alloc_tmp(M::word_type()).only_reg().unwrap();
2366
+ ctx.emit(M::gen_extend(
2367
+ extend_result,
2368
+ *from_reg,
2369
+ signed,
2370
+ ty_bits(ty) as u8,
2371
+ word_bits as u8,
2372
+ ));
2373
+ // Store the extended version.
2374
+ (extend_result.to_reg(), M::word_type())
2375
+ } else {
2376
+ (*from_reg, ty)
2377
+ };
2378
+ locs.push((data.into(), ArgLoc::Stack { offset, ty }));
2379
+ }
2380
+ }
2381
+ }
2382
+ }
2383
+ ABIArg::StructArg { pointer, .. } => {
2384
+ assert!(pointer.is_none()); // Only supported via ISLE.
2385
+ }
2386
+ ABIArg::ImplicitPtrArg {
2387
+ offset,
2388
+ pointer,
2389
+ ty,
2390
+ purpose: _,
2391
+ } => {
2392
+ assert_eq!(from_regs.len(), 1);
2393
+ let vreg = from_regs.regs()[0];
2394
+ let amode = StackAMode::SPOffset(offset, ty);
2395
+ let tmp = ctx.alloc_tmp(M::word_type()).only_reg().unwrap();
2396
+ ctx.emit(M::gen_get_stack_addr(amode, tmp, ty));
2397
+ let tmp = tmp.to_reg();
2398
+ ctx.emit(M::gen_store_base_offset(tmp, 0, vreg, ty));
2399
+ let loc = match pointer {
2400
+ ABIArgSlot::Reg { reg, .. } => ArgLoc::Reg(reg.into()),
2401
+ ABIArgSlot::Stack { offset, .. } => {
2402
+ let ty = M::word_type();
2403
+ ArgLoc::Stack { offset, ty }
2404
+ }
2405
+ };
2406
+ locs.push((tmp.into(), loc));
2407
+ }
2408
+ }
2409
+
2410
+ locs
2411
+ }
2412
+
2413
+ /// Call `gen_arg` for each non-hidden argument and emit all instructions
2414
+ /// generated.
2415
+ pub fn emit_args(&mut self, ctx: &mut Lower<M::I>, (inputs, off): isle::ValueSlice) {
2416
+ let num_args = self.num_args(ctx.sigs());
2417
+ assert_eq!(inputs.len(&ctx.dfg().value_lists) - off, num_args);
2418
+
2419
+ let mut arg_value_regs: SmallVec<[_; 16]> = smallvec![];
2420
+ for i in 0..num_args {
2421
+ let input = inputs.get(off + i, &ctx.dfg().value_lists).unwrap();
2422
+ arg_value_regs.push(ctx.put_value_in_regs(input));
2423
+ }
2424
+ for (i, arg_regs) in arg_value_regs.iter().enumerate() {
2425
+ self.emit_copy_regs_to_buffer(ctx, i, *arg_regs);
2426
+ }
2427
+ for (i, value_regs) in arg_value_regs.iter().enumerate() {
2428
+ let moves = self.gen_arg(ctx, i, *value_regs);
2429
+ self.emit_arg_moves(ctx, moves);
2430
+ }
2431
+ }
2432
+
2433
+ /// Emit the code to forward a stack-return pointer argument through a tail
2434
+ /// call.
2435
+ pub fn emit_stack_ret_arg_for_tail_call(&mut self, ctx: &mut Lower<M::I>) {
2436
+ if let Some(i) = ctx.sigs()[self.sig].stack_ret_arg() {
2437
+ let ret_area_ptr = ctx.abi().ret_area_ptr.expect(
2438
+ "if the tail callee has a return pointer, then the tail caller \
2439
+ must as well",
2440
+ );
2441
+ let moves = self.gen_arg(ctx, i.into(), ValueRegs::one(ret_area_ptr.to_reg()));
2442
+ self.emit_arg_moves(ctx, moves);
2443
+ }
2444
+ }
2445
+
2446
+ /// Builds a new temporary callee frame for the tail call and puts arguments into
2447
+ /// registers and stack slots (within the new temporary frame).
2448
+ ///
2449
+ /// It is the caller's responsibility to move the temporary callee frame on
2450
+ /// top of the current caller frame before performing the actual tail call.
2451
+ ///
2452
+ /// Returns a pair of the old caller's stack argument size and the new
2453
+ /// callee's stack argument size.
2454
+ pub fn emit_temporary_tail_call_frame(
2455
+ &mut self,
2456
+ ctx: &mut Lower<M::I>,
2457
+ args: isle::ValueSlice,
2458
+ ) -> (u32, u32) {
2459
+ // Allocate additional stack space for the new stack frame. We will
2460
+ // build it in the newly allocated space, but then copy it over our
2461
+ // current frame at the last moment.
2462
+ let new_stack_arg_size = self.emit_allocate_tail_call_frame(ctx);
2463
+ let old_stack_arg_size = ctx.abi().stack_args_size(ctx.sigs());
2464
+
2465
+ // Put all arguments in registers and stack slots (within that newly
2466
+ // allocated stack space).
2467
+ self.emit_args(ctx, args);
2468
+ self.emit_stack_ret_arg_for_tail_call(ctx);
2469
+
2470
+ (new_stack_arg_size, old_stack_arg_size)
2471
+ }
2472
+
2473
+ /// Define a return value after the call returns.
2474
+ pub fn gen_retval(
2475
+ &mut self,
2476
+ ctx: &Lower<M::I>,
2477
+ idx: usize,
2478
+ into_regs: ValueRegs<Writable<Reg>>,
2479
+ ) -> SmallInstVec<M::I> {
2480
+ let mut insts = smallvec![];
2481
+ match &ctx.sigs().rets(self.sig)[idx] {
2482
+ &ABIArg::Slots { ref slots, .. } => {
2483
+ assert_eq!(into_regs.len(), slots.len());
2484
+ for (slot, into_reg) in slots.iter().zip(into_regs.regs().iter()) {
2485
+ match slot {
2486
+ // Extension mode doesn't matter because we're copying out, not in,
2487
+ // and we ignore high bits in our own registers by convention.
2488
+ &ABIArgSlot::Reg { reg, .. } => {
2489
+ self.defs.push(CallRetPair {
2490
+ vreg: *into_reg,
2491
+ preg: reg.into(),
2492
+ });
2493
+ }
2494
+ &ABIArgSlot::Stack { offset, ty, .. } => {
2495
+ let sig_data = &ctx.sigs()[self.sig];
2496
+ let ret_area_base = if sig_data.call_conv() == isa::CallConv::Tail {
2497
+ // The callee already popped the stack argument
2498
+ // space for us, so the return area is on top of
2499
+ // the stack.
2500
+ 0
2501
+ } else {
2502
+ // The return area is just below the stack
2503
+ // argument area on the stack.
2504
+ sig_data.sized_stack_arg_space()
2505
+ };
2506
+ insts.push(M::gen_load_stack(
2507
+ StackAMode::SPOffset(offset + ret_area_base, ty),
2508
+ *into_reg,
2509
+ ty,
2510
+ ));
2511
+ }
2512
+ }
2513
+ }
2514
+ }
2515
+ &ABIArg::StructArg { .. } => {
2516
+ panic!("StructArg not supported in return position");
2517
+ }
2518
+ &ABIArg::ImplicitPtrArg { .. } => {
2519
+ panic!("ImplicitPtrArg not supported in return position");
2520
+ }
2521
+ }
2522
+ insts
2523
+ }
2524
+
2525
+ /// Emit the call itself.
2526
+ ///
2527
+ /// The returned instruction should have proper use- and def-sets according
2528
+ /// to the argument registers, return-value registers, and clobbered
2529
+ /// registers for this function signature in this ABI.
2530
+ ///
2531
+ /// (Arg registers are uses, and retval registers are defs. Clobbered
2532
+ /// registers are also logically defs, but should never be read; their
2533
+ /// values are "defined" (to the regalloc) but "undefined" in every other
2534
+ /// sense.)
2535
+ ///
2536
+ /// This function should only be called once, as it is allowed to re-use
2537
+ /// parts of the `CallSite` object in emitting instructions.
2538
+ pub fn emit_call(&mut self, ctx: &mut Lower<M::I>) {
2539
+ let word_type = M::word_type();
2540
+ if let Some(i) = ctx.sigs()[self.sig].stack_ret_arg {
2541
+ let rd = ctx.alloc_tmp(word_type).only_reg().unwrap();
2542
+ let ret_area_base = ctx.sigs()[self.sig].sized_stack_arg_space();
2543
+ ctx.emit(M::gen_get_stack_addr(
2544
+ StackAMode::SPOffset(ret_area_base, I8),
2545
+ rd,
2546
+ I8,
2547
+ ));
2548
+ let moves = self.gen_arg(ctx, i.into(), ValueRegs::one(rd.to_reg()));
2549
+ self.emit_arg_moves(ctx, moves);
2550
+ }
2551
+
2552
+ let (uses, defs) = (
2553
+ mem::replace(&mut self.uses, Default::default()),
2554
+ mem::replace(&mut self.defs, Default::default()),
2555
+ );
2556
+
2557
+ let sig = &ctx.sigs()[self.sig];
2558
+ let callee_pop_size = if sig.call_conv() == isa::CallConv::Tail {
2559
+ // The tail calling convention has callees pop stack arguments.
2560
+ sig.sized_stack_arg_space
2561
+ } else {
2562
+ 0
2563
+ };
2564
+
2565
+ let tmp = ctx.alloc_tmp(word_type).only_reg().unwrap();
2566
+ for inst in M::gen_call(
2567
+ &self.dest,
2568
+ uses,
2569
+ defs,
2570
+ self.clobbers,
2571
+ self.opcode,
2572
+ tmp,
2573
+ ctx.sigs()[self.sig].call_conv,
2574
+ self.caller_conv,
2575
+ callee_pop_size,
2576
+ )
2577
+ .into_iter()
2578
+ {
2579
+ ctx.emit(inst);
2580
+ }
2581
+ }
2582
+ }
2583
+
2584
+ #[cfg(test)]
2585
+ mod tests {
2586
+ use super::SigData;
2587
+
2588
+ #[test]
2589
+ fn sig_data_size() {
2590
+ // The size of `SigData` is performance sensitive, so make sure
2591
+ // we don't regress it unintentionally.
2592
+ assert_eq!(std::mem::size_of::<SigData>(), 24);
2593
+ }
2594
+ }