wasmtime 12.0.1 → 13.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2318) hide show
  1. checksums.yaml +4 -4
  2. data/Cargo.lock +176 -221
  3. data/ext/Cargo.toml +6 -6
  4. data/ext/cargo-vendor/cap-net-ext-2.0.0/.cargo-checksum.json +1 -0
  5. data/ext/cargo-vendor/cap-net-ext-2.0.0/COPYRIGHT +29 -0
  6. data/ext/cargo-vendor/cap-net-ext-2.0.0/Cargo.toml +38 -0
  7. data/ext/cargo-vendor/cap-net-ext-2.0.0/README.md +24 -0
  8. data/ext/cargo-vendor/cap-net-ext-2.0.0/src/lib.rs +771 -0
  9. data/ext/cargo-vendor/cranelift-bforest-0.100.0/.cargo-checksum.json +1 -0
  10. data/ext/cargo-vendor/cranelift-bforest-0.100.0/Cargo.toml +31 -0
  11. data/ext/cargo-vendor/cranelift-bforest-0.100.0/src/lib.rs +184 -0
  12. data/ext/cargo-vendor/cranelift-bforest-0.100.0/src/map.rs +922 -0
  13. data/ext/cargo-vendor/cranelift-bforest-0.100.0/src/pool.rs +219 -0
  14. data/ext/cargo-vendor/cranelift-bforest-0.100.0/src/set.rs +597 -0
  15. data/ext/cargo-vendor/cranelift-codegen-0.100.0/.cargo-checksum.json +1 -0
  16. data/ext/cargo-vendor/cranelift-codegen-0.100.0/Cargo.toml +164 -0
  17. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/binemit/mod.rs +141 -0
  18. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/binemit/stack_map.rs +155 -0
  19. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/bitset.rs +166 -0
  20. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/context.rs +372 -0
  21. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/incremental_cache.rs +256 -0
  22. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/atomic_rmw_op.rs +104 -0
  23. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/condcodes.rs +404 -0
  24. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/constant.rs +463 -0
  25. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/dfg.rs +1686 -0
  26. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/dynamic_type.rs +55 -0
  27. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/entities.rs +567 -0
  28. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/extfunc.rs +411 -0
  29. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/extname.rs +333 -0
  30. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/function.rs +475 -0
  31. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/globalvalue.rs +155 -0
  32. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/immediates.rs +1615 -0
  33. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/instructions.rs +1000 -0
  34. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/jumptable.rs +168 -0
  35. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/known_symbol.rs +47 -0
  36. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/libcall.rs +232 -0
  37. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/memflags.rs +279 -0
  38. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/mod.rs +106 -0
  39. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/sourceloc.rs +117 -0
  40. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/stackslot.rs +216 -0
  41. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/table.rs +40 -0
  42. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/trapcode.rs +144 -0
  43. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/ir/types.rs +630 -0
  44. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/abi.rs +1573 -0
  45. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/inst/args.rs +747 -0
  46. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/inst/emit.rs +3911 -0
  47. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/inst/emit_tests.rs +7951 -0
  48. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/inst/mod.rs +3049 -0
  49. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/inst.isle +4173 -0
  50. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/lower/isle.rs +871 -0
  51. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/lower.isle +2889 -0
  52. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/lower.rs +132 -0
  53. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/aarch64/lower_dynamic_neon.isle +98 -0
  54. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/call_conv.rs +119 -0
  55. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/abi.rs +981 -0
  56. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst/args.rs +1900 -0
  57. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst/emit.rs +3203 -0
  58. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst/encode.rs +326 -0
  59. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst/imms.rs +236 -0
  60. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst/mod.rs +2162 -0
  61. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst/vector.rs +1059 -0
  62. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst.isle +3092 -0
  63. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/inst_vector.isle +1887 -0
  64. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/lower/isle.rs +620 -0
  65. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/riscv64/lower.isle +2119 -0
  66. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/s390x/abi.rs +949 -0
  67. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/s390x/inst/mod.rs +3430 -0
  68. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/s390x/inst.isle +5043 -0
  69. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/s390x/lower.isle +3982 -0
  70. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/unwind/systemv.rs +272 -0
  71. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/unwind/winx64.rs +334 -0
  72. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/unwind.rs +182 -0
  73. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/abi.rs +1200 -0
  74. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/encoding/evex.rs +749 -0
  75. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/encoding/rex.rs +589 -0
  76. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/inst/args.rs +2188 -0
  77. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/inst/emit.rs +4300 -0
  78. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/inst/emit_tests.rs +5474 -0
  79. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/inst/mod.rs +2763 -0
  80. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/inst.isle +5110 -0
  81. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/lower/isle.rs +1096 -0
  82. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/lower.isle +4675 -0
  83. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isa/x64/lower.rs +340 -0
  84. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/isle_prelude.rs +899 -0
  85. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/legalizer/mod.rs +356 -0
  86. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/lib.rs +107 -0
  87. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/machinst/abi.rs +2644 -0
  88. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/machinst/buffer.rs +2362 -0
  89. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/machinst/isle.rs +846 -0
  90. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/machinst/mod.rs +553 -0
  91. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/machinst/reg.rs +556 -0
  92. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/machinst/vcode.rs +1646 -0
  93. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/opts/bitops.isle +147 -0
  94. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/opts/cprop.isle +200 -0
  95. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/opts/extends.isle +34 -0
  96. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/opts/icmp.isle +177 -0
  97. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/opts/selects.isle +59 -0
  98. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/opts/vector.isle +88 -0
  99. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/prelude.isle +603 -0
  100. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/prelude_lower.isle +1029 -0
  101. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/value_label.rs +32 -0
  102. data/ext/cargo-vendor/cranelift-codegen-0.100.0/src/verifier/mod.rs +1986 -0
  103. data/ext/cargo-vendor/cranelift-codegen-meta-0.100.0/.cargo-checksum.json +1 -0
  104. data/ext/cargo-vendor/cranelift-codegen-meta-0.100.0/Cargo.toml +26 -0
  105. data/ext/cargo-vendor/cranelift-codegen-meta-0.100.0/src/constant_hash.rs +63 -0
  106. data/ext/cargo-vendor/cranelift-codegen-meta-0.100.0/src/gen_inst.rs +1784 -0
  107. data/ext/cargo-vendor/cranelift-codegen-meta-0.100.0/src/shared/instructions.rs +3810 -0
  108. data/ext/cargo-vendor/cranelift-codegen-shared-0.100.0/.cargo-checksum.json +1 -0
  109. data/ext/cargo-vendor/cranelift-codegen-shared-0.100.0/Cargo.toml +22 -0
  110. data/ext/cargo-vendor/cranelift-codegen-shared-0.100.0/src/lib.rs +12 -0
  111. data/ext/cargo-vendor/cranelift-control-0.100.0/.cargo-checksum.json +1 -0
  112. data/ext/cargo-vendor/cranelift-control-0.100.0/Cargo.toml +30 -0
  113. data/ext/cargo-vendor/cranelift-entity-0.100.0/.cargo-checksum.json +1 -0
  114. data/ext/cargo-vendor/cranelift-entity-0.100.0/Cargo.toml +41 -0
  115. data/ext/cargo-vendor/cranelift-entity-0.100.0/src/lib.rs +316 -0
  116. data/ext/cargo-vendor/cranelift-entity-0.100.0/src/list.rs +955 -0
  117. data/ext/cargo-vendor/cranelift-entity-0.100.0/src/packed_option.rs +171 -0
  118. data/ext/cargo-vendor/cranelift-entity-0.100.0/src/primary.rs +456 -0
  119. data/ext/cargo-vendor/cranelift-entity-0.100.0/src/sparse.rs +368 -0
  120. data/ext/cargo-vendor/cranelift-frontend-0.100.0/.cargo-checksum.json +1 -0
  121. data/ext/cargo-vendor/cranelift-frontend-0.100.0/Cargo.toml +54 -0
  122. data/ext/cargo-vendor/cranelift-frontend-0.100.0/src/lib.rs +191 -0
  123. data/ext/cargo-vendor/cranelift-isle-0.100.0/.cargo-checksum.json +1 -0
  124. data/ext/cargo-vendor/cranelift-isle-0.100.0/Cargo.toml +37 -0
  125. data/ext/cargo-vendor/cranelift-native-0.100.0/.cargo-checksum.json +1 -0
  126. data/ext/cargo-vendor/cranelift-native-0.100.0/Cargo.toml +38 -0
  127. data/ext/cargo-vendor/cranelift-native-0.100.0/src/lib.rs +190 -0
  128. data/ext/cargo-vendor/cranelift-wasm-0.100.0/.cargo-checksum.json +1 -0
  129. data/ext/cargo-vendor/cranelift-wasm-0.100.0/Cargo.toml +92 -0
  130. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/code_translator.rs +3641 -0
  131. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/environ/dummy.rs +942 -0
  132. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/environ/spec.rs +949 -0
  133. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/func_translator.rs +432 -0
  134. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/heap.rs +108 -0
  135. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/lib.rs +64 -0
  136. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/sections_translator.rs +408 -0
  137. data/ext/cargo-vendor/cranelift-wasm-0.100.0/src/translation_utils.rs +97 -0
  138. data/ext/cargo-vendor/fallible-iterator-0.3.0/.cargo-checksum.json +1 -0
  139. data/ext/cargo-vendor/fallible-iterator-0.3.0/CHANGELOG.md +39 -0
  140. data/ext/cargo-vendor/fallible-iterator-0.3.0/Cargo.toml +29 -0
  141. data/ext/cargo-vendor/fallible-iterator-0.3.0/README.md +16 -0
  142. data/ext/cargo-vendor/fallible-iterator-0.3.0/src/lib.rs +2808 -0
  143. data/ext/cargo-vendor/fallible-iterator-0.3.0/src/test.rs +477 -0
  144. data/ext/cargo-vendor/serde-1.0.188/.cargo-checksum.json +1 -0
  145. data/ext/cargo-vendor/serde-1.0.188/Cargo.toml +69 -0
  146. data/ext/cargo-vendor/serde-1.0.188/build.rs +90 -0
  147. data/ext/cargo-vendor/serde-1.0.188/src/de/ignored_any.rs +238 -0
  148. data/ext/cargo-vendor/serde-1.0.188/src/de/impls.rs +2966 -0
  149. data/ext/cargo-vendor/serde-1.0.188/src/de/mod.rs +2290 -0
  150. data/ext/cargo-vendor/serde-1.0.188/src/de/value.rs +1708 -0
  151. data/ext/cargo-vendor/serde-1.0.188/src/integer128.rs +9 -0
  152. data/ext/cargo-vendor/serde-1.0.188/src/lib.rs +327 -0
  153. data/ext/cargo-vendor/serde-1.0.188/src/macros.rs +231 -0
  154. data/ext/cargo-vendor/serde-1.0.188/src/ser/fmt.rs +170 -0
  155. data/ext/cargo-vendor/serde-1.0.188/src/ser/impls.rs +998 -0
  156. data/ext/cargo-vendor/serde-1.0.188/src/ser/mod.rs +1952 -0
  157. data/ext/cargo-vendor/serde_derive-1.0.188/.cargo-checksum.json +1 -0
  158. data/ext/cargo-vendor/serde_derive-1.0.188/Cargo.toml +59 -0
  159. data/ext/cargo-vendor/serde_derive-1.0.188/src/lib.rs +102 -0
  160. data/ext/cargo-vendor/serde_derive-1.0.188/src/ser.rs +1359 -0
  161. data/ext/cargo-vendor/wasi-cap-std-sync-13.0.0/.cargo-checksum.json +1 -0
  162. data/ext/cargo-vendor/wasi-cap-std-sync-13.0.0/Cargo.toml +96 -0
  163. data/ext/cargo-vendor/wasi-cap-std-sync-13.0.0/src/lib.rs +161 -0
  164. data/ext/cargo-vendor/wasi-common-13.0.0/.cargo-checksum.json +1 -0
  165. data/ext/cargo-vendor/wasi-common-13.0.0/Cargo.toml +87 -0
  166. data/ext/cargo-vendor/wasm-encoder-0.32.0/.cargo-checksum.json +1 -0
  167. data/ext/cargo-vendor/wasm-encoder-0.32.0/Cargo.toml +33 -0
  168. data/ext/cargo-vendor/wasm-encoder-0.32.0/src/component/types.rs +769 -0
  169. data/ext/cargo-vendor/wasm-encoder-0.33.1/.cargo-checksum.json +1 -0
  170. data/ext/cargo-vendor/wasm-encoder-0.33.1/Cargo.toml +33 -0
  171. data/ext/cargo-vendor/wasm-encoder-0.33.1/README.md +80 -0
  172. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/aliases.rs +160 -0
  173. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/builder.rs +449 -0
  174. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/canonicals.rs +159 -0
  175. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/components.rs +29 -0
  176. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/exports.rs +127 -0
  177. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/imports.rs +200 -0
  178. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/instances.rs +200 -0
  179. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/modules.rs +29 -0
  180. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/names.rs +149 -0
  181. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/start.rs +52 -0
  182. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component/types.rs +769 -0
  183. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/component.rs +168 -0
  184. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/code.rs +2913 -0
  185. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/custom.rs +73 -0
  186. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/data.rs +185 -0
  187. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/dump.rs +627 -0
  188. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/elements.rs +220 -0
  189. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/exports.rs +85 -0
  190. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/functions.rs +63 -0
  191. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/globals.rs +90 -0
  192. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/imports.rs +142 -0
  193. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/linking.rs +263 -0
  194. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/memories.rs +99 -0
  195. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/names.rs +265 -0
  196. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/producers.rs +180 -0
  197. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/start.rs +39 -0
  198. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/tables.rs +104 -0
  199. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/tags.rs +85 -0
  200. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core/types.rs +372 -0
  201. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/core.rs +168 -0
  202. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/lib.rs +215 -0
  203. data/ext/cargo-vendor/wasm-encoder-0.33.1/src/raw.rs +30 -0
  204. data/ext/cargo-vendor/wasmparser-0.112.0/.cargo-checksum.json +1 -0
  205. data/ext/cargo-vendor/wasmparser-0.112.0/Cargo.lock +644 -0
  206. data/ext/cargo-vendor/wasmparser-0.112.0/Cargo.toml +54 -0
  207. data/ext/cargo-vendor/wasmparser-0.112.0/src/limits.rs +58 -0
  208. data/ext/cargo-vendor/wasmparser-0.112.0/src/readers/component/types.rs +542 -0
  209. data/ext/cargo-vendor/wasmparser-0.112.0/src/readers/core/types.rs +1303 -0
  210. data/ext/cargo-vendor/wasmparser-0.112.0/src/validator/component.rs +3120 -0
  211. data/ext/cargo-vendor/wasmparser-0.112.0/src/validator/core.rs +1352 -0
  212. data/ext/cargo-vendor/wasmparser-0.112.0/src/validator/types.rs +3239 -0
  213. data/ext/cargo-vendor/wasmparser-0.112.0/src/validator.rs +1569 -0
  214. data/ext/cargo-vendor/wasmparser-0.113.1/.cargo-checksum.json +1 -0
  215. data/ext/cargo-vendor/wasmparser-0.113.1/Cargo.lock +644 -0
  216. data/ext/cargo-vendor/wasmparser-0.113.1/Cargo.toml +54 -0
  217. data/ext/cargo-vendor/wasmparser-0.113.1/src/binary_reader.rs +1706 -0
  218. data/ext/cargo-vendor/wasmparser-0.113.1/src/lib.rs +726 -0
  219. data/ext/cargo-vendor/wasmparser-0.113.1/src/limits.rs +58 -0
  220. data/ext/cargo-vendor/wasmparser-0.113.1/src/readers/component/types.rs +542 -0
  221. data/ext/cargo-vendor/wasmparser-0.113.1/src/readers/core/dylink0.rs +132 -0
  222. data/ext/cargo-vendor/wasmparser-0.113.1/src/readers/core/types.rs +1303 -0
  223. data/ext/cargo-vendor/wasmparser-0.113.1/src/readers/core.rs +37 -0
  224. data/ext/cargo-vendor/wasmparser-0.113.1/src/validator/component.rs +3120 -0
  225. data/ext/cargo-vendor/wasmparser-0.113.1/src/validator/core.rs +1352 -0
  226. data/ext/cargo-vendor/wasmparser-0.113.1/src/validator/operators.rs +3466 -0
  227. data/ext/cargo-vendor/wasmparser-0.113.1/src/validator/types.rs +3239 -0
  228. data/ext/cargo-vendor/wasmparser-0.113.1/src/validator.rs +1595 -0
  229. data/ext/cargo-vendor/wasmprinter-0.2.66/.cargo-checksum.json +1 -0
  230. data/ext/cargo-vendor/wasmprinter-0.2.66/Cargo.toml +39 -0
  231. data/ext/cargo-vendor/wasmprinter-0.2.66/src/lib.rs +2965 -0
  232. data/ext/cargo-vendor/wasmprinter-0.2.66/src/operator.rs +873 -0
  233. data/ext/cargo-vendor/wasmtime-13.0.0/.cargo-checksum.json +1 -0
  234. data/ext/cargo-vendor/wasmtime-13.0.0/Cargo.toml +191 -0
  235. data/ext/cargo-vendor/wasmtime-13.0.0/src/component/component.rs +474 -0
  236. data/ext/cargo-vendor/wasmtime-13.0.0/src/component/func/typed.rs +2297 -0
  237. data/ext/cargo-vendor/wasmtime-13.0.0/src/component/instance.rs +793 -0
  238. data/ext/cargo-vendor/wasmtime-13.0.0/src/component/linker.rs +483 -0
  239. data/ext/cargo-vendor/wasmtime-13.0.0/src/component/mod.rs +344 -0
  240. data/ext/cargo-vendor/wasmtime-13.0.0/src/component/types.rs +523 -0
  241. data/ext/cargo-vendor/wasmtime-13.0.0/src/component/values.rs +1272 -0
  242. data/ext/cargo-vendor/wasmtime-13.0.0/src/config.rs +2313 -0
  243. data/ext/cargo-vendor/wasmtime-13.0.0/src/engine/serialization.rs +657 -0
  244. data/ext/cargo-vendor/wasmtime-13.0.0/src/engine.rs +790 -0
  245. data/ext/cargo-vendor/wasmtime-13.0.0/src/instance.rs +884 -0
  246. data/ext/cargo-vendor/wasmtime-13.0.0/src/limits.rs +398 -0
  247. data/ext/cargo-vendor/wasmtime-13.0.0/src/module.rs +1349 -0
  248. data/ext/cargo-vendor/wasmtime-13.0.0/src/store.rs +2246 -0
  249. data/ext/cargo-vendor/wasmtime-13.0.0/src/trampoline/memory.rs +255 -0
  250. data/ext/cargo-vendor/wasmtime-13.0.0/src/trampoline.rs +76 -0
  251. data/ext/cargo-vendor/wasmtime-asm-macros-13.0.0/.cargo-checksum.json +1 -0
  252. data/ext/cargo-vendor/wasmtime-asm-macros-13.0.0/Cargo.toml +22 -0
  253. data/ext/cargo-vendor/wasmtime-cache-13.0.0/.cargo-checksum.json +1 -0
  254. data/ext/cargo-vendor/wasmtime-cache-13.0.0/Cargo.toml +72 -0
  255. data/ext/cargo-vendor/wasmtime-cache-13.0.0/src/config.rs +584 -0
  256. data/ext/cargo-vendor/wasmtime-cache-13.0.0/src/worker/tests.rs +758 -0
  257. data/ext/cargo-vendor/wasmtime-cache-13.0.0/src/worker.rs +894 -0
  258. data/ext/cargo-vendor/wasmtime-component-macro-13.0.0/.cargo-checksum.json +1 -0
  259. data/ext/cargo-vendor/wasmtime-component-macro-13.0.0/Cargo.toml +58 -0
  260. data/ext/cargo-vendor/wasmtime-component-macro-13.0.0/src/bindgen.rs +387 -0
  261. data/ext/cargo-vendor/wasmtime-component-macro-13.0.0/src/component.rs +1295 -0
  262. data/ext/cargo-vendor/wasmtime-component-macro-13.0.0/tests/codegen/resources-import.wit +87 -0
  263. data/ext/cargo-vendor/wasmtime-component-macro-13.0.0/tests/codegen/variants.wit +136 -0
  264. data/ext/cargo-vendor/wasmtime-component-util-13.0.0/.cargo-checksum.json +1 -0
  265. data/ext/cargo-vendor/wasmtime-component-util-13.0.0/Cargo.toml +25 -0
  266. data/ext/cargo-vendor/wasmtime-cranelift-13.0.0/.cargo-checksum.json +1 -0
  267. data/ext/cargo-vendor/wasmtime-cranelift-13.0.0/Cargo.toml +97 -0
  268. data/ext/cargo-vendor/wasmtime-cranelift-13.0.0/src/builder.rs +123 -0
  269. data/ext/cargo-vendor/wasmtime-cranelift-13.0.0/src/compiler.rs +1301 -0
  270. data/ext/cargo-vendor/wasmtime-cranelift-13.0.0/src/debug/transform/attr.rs +340 -0
  271. data/ext/cargo-vendor/wasmtime-cranelift-13.0.0/src/debug.rs +18 -0
  272. data/ext/cargo-vendor/wasmtime-cranelift-13.0.0/src/func_environ.rs +2589 -0
  273. data/ext/cargo-vendor/wasmtime-cranelift-shared-13.0.0/.cargo-checksum.json +1 -0
  274. data/ext/cargo-vendor/wasmtime-cranelift-shared-13.0.0/Cargo.toml +57 -0
  275. data/ext/cargo-vendor/wasmtime-environ-13.0.0/.cargo-checksum.json +1 -0
  276. data/ext/cargo-vendor/wasmtime-environ-13.0.0/Cargo.lock +711 -0
  277. data/ext/cargo-vendor/wasmtime-environ-13.0.0/Cargo.toml +118 -0
  278. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/address_map.rs +192 -0
  279. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/builtin.rs +143 -0
  280. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/compilation.rs +403 -0
  281. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/component/compiler.rs +47 -0
  282. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/component/info.rs +583 -0
  283. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/component/types.rs +1866 -0
  284. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/fact/trampoline.rs +3229 -0
  285. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/fact/transcode.rs +168 -0
  286. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/lib.rs +59 -0
  287. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/module.rs +1083 -0
  288. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/module_environ.rs +876 -0
  289. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/module_types.rs +78 -0
  290. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/stack_map.rs +36 -0
  291. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/tunables.rs +115 -0
  292. data/ext/cargo-vendor/wasmtime-environ-13.0.0/src/vmoffsets.rs +919 -0
  293. data/ext/cargo-vendor/wasmtime-fiber-13.0.0/.cargo-checksum.json +1 -0
  294. data/ext/cargo-vendor/wasmtime-fiber-13.0.0/Cargo.toml +51 -0
  295. data/ext/cargo-vendor/wasmtime-jit-13.0.0/.cargo-checksum.json +1 -0
  296. data/ext/cargo-vendor/wasmtime-jit-13.0.0/Cargo.toml +106 -0
  297. data/ext/cargo-vendor/wasmtime-jit-13.0.0/src/instantiate.rs +760 -0
  298. data/ext/cargo-vendor/wasmtime-jit-13.0.0/src/lib.rs +21 -0
  299. data/ext/cargo-vendor/wasmtime-jit-13.0.0/src/unwind/miri.rs +15 -0
  300. data/ext/cargo-vendor/wasmtime-jit-13.0.0/src/unwind/systemv.rs +90 -0
  301. data/ext/cargo-vendor/wasmtime-jit-13.0.0/src/unwind/winx64.rs +44 -0
  302. data/ext/cargo-vendor/wasmtime-jit-debug-13.0.0/.cargo-checksum.json +1 -0
  303. data/ext/cargo-vendor/wasmtime-jit-debug-13.0.0/Cargo.toml +58 -0
  304. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-13.0.0/.cargo-checksum.json +1 -0
  305. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-13.0.0/Cargo.toml +37 -0
  306. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/.cargo-checksum.json +1 -0
  307. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/Cargo.toml +122 -0
  308. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance/allocator/on_demand.rs +154 -0
  309. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance/allocator/pooling/index_allocator.rs +684 -0
  310. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance/allocator/pooling/memory_pool.rs +460 -0
  311. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance/allocator/pooling/stack_pool.rs +242 -0
  312. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance/allocator/pooling/table_pool.rs +221 -0
  313. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance/allocator/pooling.rs +633 -0
  314. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance/allocator.rs +686 -0
  315. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/instance.rs +1382 -0
  316. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/lib.rs +276 -0
  317. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/libcalls.rs +775 -0
  318. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/memory.rs +958 -0
  319. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/parking_spot.rs +520 -0
  320. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/table.rs +598 -0
  321. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/trampolines/s390x.S +70 -0
  322. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/traphandlers/macos.rs +486 -0
  323. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/traphandlers.rs +815 -0
  324. data/ext/cargo-vendor/wasmtime-runtime-13.0.0/src/vmcontext.rs +1197 -0
  325. data/ext/cargo-vendor/wasmtime-types-13.0.0/.cargo-checksum.json +1 -0
  326. data/ext/cargo-vendor/wasmtime-types-13.0.0/Cargo.toml +36 -0
  327. data/ext/cargo-vendor/wasmtime-types-13.0.0/src/lib.rs +504 -0
  328. data/ext/cargo-vendor/wasmtime-versioned-export-macros-13.0.0/.cargo-checksum.json +1 -0
  329. data/ext/cargo-vendor/wasmtime-versioned-export-macros-13.0.0/Cargo.toml +32 -0
  330. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/.cargo-checksum.json +1 -0
  331. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/Cargo.toml +232 -0
  332. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/lib.rs +135 -0
  333. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/command.rs +121 -0
  334. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/ctx.rs +351 -0
  335. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/filesystem.rs +277 -0
  336. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/clocks.rs +107 -0
  337. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/env.rs +15 -0
  338. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/exit.rs +11 -0
  339. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/filesystem/sync.rs +645 -0
  340. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/filesystem.rs +1167 -0
  341. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/instance_network.rs +11 -0
  342. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/io.rs +553 -0
  343. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/mod.rs +10 -0
  344. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/network.rs +186 -0
  345. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/tcp.rs +511 -0
  346. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/host/tcp_create_socket.rs +18 -0
  347. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/mod.rs +233 -0
  348. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/network.rs +32 -0
  349. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/pipe.rs +1067 -0
  350. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/preview1.rs +2078 -0
  351. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/stdio/unix.rs +160 -0
  352. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/stdio/worker_thread_stdin.rs +140 -0
  353. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/stdio.rs +354 -0
  354. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/stream.rs +347 -0
  355. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/table.rs +293 -0
  356. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/src/preview2/tcp.rs +280 -0
  357. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/command-extended.wit +39 -0
  358. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/cli/command.wit +33 -0
  359. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/cli/environment.wit +18 -0
  360. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/cli/exit.wit +4 -0
  361. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/cli/run.wit +4 -0
  362. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/cli/terminal.wit +59 -0
  363. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/filesystem/preopens.wit +6 -0
  364. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/filesystem/types.wit +824 -0
  365. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/filesystem/world.wit +6 -0
  366. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/http/proxy.wit +34 -0
  367. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/http/types.wit +155 -0
  368. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/io/streams.wit +300 -0
  369. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/logging/logging.wit +37 -0
  370. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/sockets/ip-name-lookup.wit +69 -0
  371. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/sockets/network.wit +187 -0
  372. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/sockets/tcp-create-socket.wit +27 -0
  373. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/sockets/tcp.wit +268 -0
  374. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/sockets/udp-create-socket.wit +27 -0
  375. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/deps/sockets/udp.wit +220 -0
  376. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/main.wit +33 -0
  377. data/ext/cargo-vendor/wasmtime-wasi-13.0.0/wit/test.wit +41 -0
  378. data/ext/cargo-vendor/wasmtime-winch-13.0.0/.cargo-checksum.json +1 -0
  379. data/ext/cargo-vendor/wasmtime-winch-13.0.0/Cargo.toml +63 -0
  380. data/ext/cargo-vendor/wasmtime-wit-bindgen-13.0.0/.cargo-checksum.json +1 -0
  381. data/ext/cargo-vendor/wasmtime-wit-bindgen-13.0.0/Cargo.toml +32 -0
  382. data/ext/cargo-vendor/wasmtime-wit-bindgen-13.0.0/src/lib.rs +1953 -0
  383. data/ext/cargo-vendor/wasmtime-wit-bindgen-13.0.0/src/rust.rs +490 -0
  384. data/ext/cargo-vendor/wasmtime-wit-bindgen-13.0.0/src/types.rs +194 -0
  385. data/ext/cargo-vendor/wasmtime-wmemcheck-13.0.0/.cargo-checksum.json +1 -0
  386. data/ext/cargo-vendor/wasmtime-wmemcheck-13.0.0/Cargo.toml +22 -0
  387. data/ext/cargo-vendor/wasmtime-wmemcheck-13.0.0/src/lib.rs +404 -0
  388. data/ext/cargo-vendor/wast-65.0.1/.cargo-checksum.json +1 -0
  389. data/ext/cargo-vendor/wast-65.0.1/Cargo.toml +50 -0
  390. data/ext/cargo-vendor/wast-65.0.1/src/component/binary.rs +1021 -0
  391. data/ext/cargo-vendor/wast-65.0.1/src/component/expand.rs +875 -0
  392. data/ext/cargo-vendor/wast-65.0.1/src/component/resolve.rs +1005 -0
  393. data/ext/cargo-vendor/wast-65.0.1/src/component/types.rs +991 -0
  394. data/ext/cargo-vendor/wast-65.0.1/src/component/wast.rs +160 -0
  395. data/ext/cargo-vendor/wast-65.0.1/src/core/binary.rs +1241 -0
  396. data/ext/cargo-vendor/wast-65.0.1/src/core/expr.rs +2021 -0
  397. data/ext/cargo-vendor/wast-65.0.1/src/core/table.rs +288 -0
  398. data/ext/cargo-vendor/wast-65.0.1/src/core/types.rs +847 -0
  399. data/ext/cargo-vendor/wast-65.0.1/src/core/wast.rs +256 -0
  400. data/ext/cargo-vendor/wast-65.0.1/src/lib.rs +536 -0
  401. data/ext/cargo-vendor/wat-1.0.73/.cargo-checksum.json +1 -0
  402. data/ext/cargo-vendor/wat-1.0.73/Cargo.toml +27 -0
  403. data/ext/cargo-vendor/wiggle-13.0.0/.cargo-checksum.json +1 -0
  404. data/ext/cargo-vendor/wiggle-13.0.0/Cargo.toml +106 -0
  405. data/ext/cargo-vendor/wiggle-13.0.0/src/lib.rs +1198 -0
  406. data/ext/cargo-vendor/wiggle-generate-13.0.0/.cargo-checksum.json +1 -0
  407. data/ext/cargo-vendor/wiggle-generate-13.0.0/Cargo.toml +58 -0
  408. data/ext/cargo-vendor/wiggle-generate-13.0.0/LICENSE +220 -0
  409. data/ext/cargo-vendor/wiggle-generate-13.0.0/src/config.rs +663 -0
  410. data/ext/cargo-vendor/wiggle-generate-13.0.0/src/types/record.rs +132 -0
  411. data/ext/cargo-vendor/wiggle-generate-13.0.0/src/wasmtime.rs +170 -0
  412. data/ext/cargo-vendor/wiggle-macro-13.0.0/.cargo-checksum.json +1 -0
  413. data/ext/cargo-vendor/wiggle-macro-13.0.0/Cargo.toml +55 -0
  414. data/ext/cargo-vendor/wiggle-macro-13.0.0/LICENSE +220 -0
  415. data/ext/cargo-vendor/winch-codegen-0.11.0/.cargo-checksum.json +1 -0
  416. data/ext/cargo-vendor/winch-codegen-0.11.0/Cargo.toml +62 -0
  417. data/ext/cargo-vendor/winch-codegen-0.11.0/src/abi/mod.rs +269 -0
  418. data/ext/cargo-vendor/winch-codegen-0.11.0/src/codegen/call.rs +219 -0
  419. data/ext/cargo-vendor/winch-codegen-0.11.0/src/codegen/context.rs +423 -0
  420. data/ext/cargo-vendor/winch-codegen-0.11.0/src/codegen/control.rs +456 -0
  421. data/ext/cargo-vendor/winch-codegen-0.11.0/src/codegen/mod.rs +337 -0
  422. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/aarch64/abi.rs +260 -0
  423. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/aarch64/address.rs +144 -0
  424. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/aarch64/asm.rs +250 -0
  425. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/aarch64/masm.rs +357 -0
  426. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/aarch64/regs.rs +177 -0
  427. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/reg.rs +73 -0
  428. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/x64/abi.rs +390 -0
  429. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/x64/address.rs +34 -0
  430. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/x64/asm.rs +847 -0
  431. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/x64/masm.rs +659 -0
  432. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/x64/mod.rs +148 -0
  433. data/ext/cargo-vendor/winch-codegen-0.11.0/src/isa/x64/regs.rs +233 -0
  434. data/ext/cargo-vendor/winch-codegen-0.11.0/src/masm.rs +465 -0
  435. data/ext/cargo-vendor/winch-codegen-0.11.0/src/regalloc.rs +73 -0
  436. data/ext/cargo-vendor/winch-codegen-0.11.0/src/regset.rs +118 -0
  437. data/ext/cargo-vendor/winch-codegen-0.11.0/src/stack.rs +338 -0
  438. data/ext/cargo-vendor/winch-codegen-0.11.0/src/trampoline.rs +489 -0
  439. data/ext/cargo-vendor/winch-codegen-0.11.0/src/visitor.rs +736 -0
  440. data/ext/cargo-vendor/wit-parser-0.11.1/.cargo-checksum.json +1 -0
  441. data/ext/cargo-vendor/wit-parser-0.11.1/Cargo.toml +70 -0
  442. data/ext/cargo-vendor/wit-parser-0.11.1/src/abi.rs +241 -0
  443. data/ext/cargo-vendor/wit-parser-0.11.1/src/ast/lex.rs +714 -0
  444. data/ext/cargo-vendor/wit-parser-0.11.1/src/ast/resolve.rs +1418 -0
  445. data/ext/cargo-vendor/wit-parser-0.11.1/src/ast.rs +1361 -0
  446. data/ext/cargo-vendor/wit-parser-0.11.1/src/lib.rs +711 -0
  447. data/ext/cargo-vendor/wit-parser-0.11.1/src/live.rs +111 -0
  448. data/ext/cargo-vendor/wit-parser-0.11.1/src/resolve.rs +1757 -0
  449. data/ext/cargo-vendor/wit-parser-0.11.1/src/serde_.rs +108 -0
  450. data/ext/cargo-vendor/wit-parser-0.11.1/src/sizealign.rs +144 -0
  451. data/ext/cargo-vendor/wit-parser-0.11.1/tests/all.rs +190 -0
  452. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/comments.wit.json +46 -0
  453. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/complex-include.wit.json +168 -0
  454. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/cross-package-resource.wit.json +67 -0
  455. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/diamond1.wit.json +55 -0
  456. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/disambiguate-diamond.wit.json +107 -0
  457. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/embedded.wit.md.json +40 -0
  458. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/empty.wit.json +12 -0
  459. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/foreign-deps-union.wit.json +380 -0
  460. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/foreign-deps.wit.json +344 -0
  461. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/functions.wit.json +166 -0
  462. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/ignore-files-deps.wit.json +39 -0
  463. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/include-reps.wit.json +60 -0
  464. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/kebab-name-include-with.wit.json +70 -0
  465. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/many-names.wit.json +40 -0
  466. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/multi-file.wit.json +298 -0
  467. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/name-both-resource-and-type.wit.json +89 -0
  468. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/package-syntax1.wit.json +12 -0
  469. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/package-syntax3.wit.json +12 -0
  470. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/package-syntax4.wit.json +12 -0
  471. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/parse-fail/multiple-package-docs/a.wit +2 -0
  472. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/parse-fail/multiple-package-docs/b.wit +2 -0
  473. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/parse-fail/multiple-package-docs.wit.result +8 -0
  474. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/random.wit +27 -0
  475. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/random.wit.json +64 -0
  476. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources-empty.wit.json +72 -0
  477. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources-multiple-returns-borrow.wit.json +74 -0
  478. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources-multiple-returns-own.wit.json +83 -0
  479. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources-multiple.wit.json +281 -0
  480. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources-return-borrow.wit.json +69 -0
  481. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources-return-own.wit.json +78 -0
  482. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources.wit.json +340 -0
  483. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/resources1.wit.json +96 -0
  484. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/shared-types.wit.json +83 -0
  485. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/stress-export-elaborate.wit.json +1136 -0
  486. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/type-then-eof.wit.json +32 -0
  487. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/types.wit +58 -0
  488. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/types.wit.json +751 -0
  489. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/union-fuzz-1.wit.json +35 -0
  490. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/use-chain.wit.json +53 -0
  491. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/use.wit.json +172 -0
  492. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/versions.wit.json +91 -0
  493. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/wasi.wit.json +296 -0
  494. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-diamond.wit +23 -0
  495. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-diamond.wit.json +118 -0
  496. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-iface-no-collide.wit.json +66 -0
  497. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-implicit-import1.wit.json +75 -0
  498. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-implicit-import2.wit.json +70 -0
  499. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-implicit-import3.wit.json +71 -0
  500. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-same-fields4.wit.json +76 -0
  501. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-top-level-funcs.wit.json +86 -0
  502. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/world-top-level-resources.wit.json +240 -0
  503. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/worlds-union-dedup.wit.json +100 -0
  504. data/ext/cargo-vendor/wit-parser-0.11.1/tests/ui/worlds-with-types.wit.json +202 -0
  505. data/ext/src/ruby_api/wasi_ctx_builder.rs +8 -8
  506. data/lib/wasmtime/version.rb +1 -1
  507. metadata +1627 -1813
  508. data/ext/cargo-vendor/addr2line-0.20.0/.cargo-checksum.json +0 -1
  509. data/ext/cargo-vendor/addr2line-0.20.0/CHANGELOG.md +0 -321
  510. data/ext/cargo-vendor/addr2line-0.20.0/Cargo.lock +0 -548
  511. data/ext/cargo-vendor/addr2line-0.20.0/Cargo.toml +0 -145
  512. data/ext/cargo-vendor/addr2line-0.20.0/LICENSE-MIT +0 -25
  513. data/ext/cargo-vendor/addr2line-0.20.0/README.md +0 -48
  514. data/ext/cargo-vendor/addr2line-0.20.0/bench.plot.r +0 -23
  515. data/ext/cargo-vendor/addr2line-0.20.0/benchmark.sh +0 -112
  516. data/ext/cargo-vendor/addr2line-0.20.0/coverage.sh +0 -5
  517. data/ext/cargo-vendor/addr2line-0.20.0/examples/addr2line.rs +0 -306
  518. data/ext/cargo-vendor/addr2line-0.20.0/rustfmt.toml +0 -1
  519. data/ext/cargo-vendor/addr2line-0.20.0/src/builtin_split_dwarf_loader.rs +0 -164
  520. data/ext/cargo-vendor/addr2line-0.20.0/src/function.rs +0 -555
  521. data/ext/cargo-vendor/addr2line-0.20.0/src/lazy.rs +0 -31
  522. data/ext/cargo-vendor/addr2line-0.20.0/src/lib.rs +0 -1729
  523. data/ext/cargo-vendor/addr2line-0.20.0/tests/correctness.rs +0 -126
  524. data/ext/cargo-vendor/addr2line-0.20.0/tests/output_equivalence.rs +0 -135
  525. data/ext/cargo-vendor/addr2line-0.20.0/tests/parse.rs +0 -114
  526. data/ext/cargo-vendor/cranelift-bforest-0.99.1/.cargo-checksum.json +0 -1
  527. data/ext/cargo-vendor/cranelift-bforest-0.99.1/Cargo.toml +0 -31
  528. data/ext/cargo-vendor/cranelift-bforest-0.99.1/src/lib.rs +0 -198
  529. data/ext/cargo-vendor/cranelift-bforest-0.99.1/src/map.rs +0 -923
  530. data/ext/cargo-vendor/cranelift-bforest-0.99.1/src/pool.rs +0 -220
  531. data/ext/cargo-vendor/cranelift-bforest-0.99.1/src/set.rs +0 -598
  532. data/ext/cargo-vendor/cranelift-codegen-0.99.1/.cargo-checksum.json +0 -1
  533. data/ext/cargo-vendor/cranelift-codegen-0.99.1/Cargo.toml +0 -159
  534. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/binemit/mod.rs +0 -141
  535. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/binemit/stack_map.rs +0 -152
  536. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/bitset.rs +0 -163
  537. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/context.rs +0 -368
  538. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/incremental_cache.rs +0 -256
  539. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/atomic_rmw_op.rs +0 -104
  540. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/condcodes.rs +0 -404
  541. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/constant.rs +0 -463
  542. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/dfg.rs +0 -1686
  543. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/dynamic_type.rs +0 -55
  544. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/entities.rs +0 -567
  545. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/extfunc.rs +0 -411
  546. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/extname.rs +0 -333
  547. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/function.rs +0 -469
  548. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/globalvalue.rs +0 -155
  549. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/immediates.rs +0 -1615
  550. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/instructions.rs +0 -1000
  551. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/jumptable.rs +0 -168
  552. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/known_symbol.rs +0 -47
  553. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/libcall.rs +0 -232
  554. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/memflags.rs +0 -279
  555. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/mod.rs +0 -106
  556. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/sourceloc.rs +0 -117
  557. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/stackslot.rs +0 -216
  558. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/table.rs +0 -40
  559. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/trapcode.rs +0 -144
  560. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/ir/types.rs +0 -630
  561. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/abi.rs +0 -1543
  562. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/inst/args.rs +0 -741
  563. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/inst/emit.rs +0 -3919
  564. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/inst/emit_tests.rs +0 -7897
  565. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/inst/mod.rs +0 -3039
  566. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/inst.isle +0 -4048
  567. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/lower/isle.rs +0 -873
  568. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/lower.isle +0 -2907
  569. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/lower.rs +0 -702
  570. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/aarch64/lower_dynamic_neon.isle +0 -110
  571. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/call_conv.rs +0 -119
  572. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/abi.rs +0 -985
  573. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst/args.rs +0 -1812
  574. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst/emit.rs +0 -3254
  575. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst/encode.rs +0 -281
  576. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst/imms.rs +0 -250
  577. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst/mod.rs +0 -2125
  578. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst/vector.rs +0 -939
  579. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst.isle +0 -2972
  580. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/inst_vector.isle +0 -1650
  581. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/lower/isle.rs +0 -620
  582. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/riscv64/lower.isle +0 -2002
  583. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/s390x/abi.rs +0 -948
  584. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/s390x/inst/mod.rs +0 -3426
  585. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/s390x/inst.isle +0 -5043
  586. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/s390x/lower.isle +0 -3983
  587. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/unwind/systemv.rs +0 -272
  588. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/unwind/winx64.rs +0 -334
  589. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/unwind.rs +0 -182
  590. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/abi.rs +0 -1204
  591. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/encoding/evex.rs +0 -749
  592. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/encoding/rex.rs +0 -588
  593. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/inst/args.rs +0 -2193
  594. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/inst/emit.rs +0 -4298
  595. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/inst/emit_tests.rs +0 -5678
  596. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/inst/mod.rs +0 -2759
  597. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/inst.isle +0 -5079
  598. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/lower/isle.rs +0 -1096
  599. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/lower.isle +0 -4651
  600. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isa/x64/lower.rs +0 -340
  601. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/isle_prelude.rs +0 -894
  602. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/legalizer/mod.rs +0 -346
  603. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/lib.rs +0 -140
  604. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/machinst/abi.rs +0 -2641
  605. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/machinst/buffer.rs +0 -2365
  606. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/machinst/isle.rs +0 -837
  607. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/machinst/mod.rs +0 -551
  608. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/machinst/reg.rs +0 -556
  609. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/machinst/vcode.rs +0 -1591
  610. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/opts/bitops.isle +0 -106
  611. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/opts/cprop.isle +0 -200
  612. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/opts/extends.isle +0 -41
  613. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/opts/icmp.isle +0 -177
  614. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/opts/selects.isle +0 -63
  615. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/opts/vector.isle +0 -8
  616. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/prelude.isle +0 -594
  617. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/prelude_lower.isle +0 -1024
  618. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/value_label.rs +0 -32
  619. data/ext/cargo-vendor/cranelift-codegen-0.99.1/src/verifier/mod.rs +0 -1884
  620. data/ext/cargo-vendor/cranelift-codegen-meta-0.99.1/.cargo-checksum.json +0 -1
  621. data/ext/cargo-vendor/cranelift-codegen-meta-0.99.1/Cargo.toml +0 -26
  622. data/ext/cargo-vendor/cranelift-codegen-meta-0.99.1/src/constant_hash.rs +0 -64
  623. data/ext/cargo-vendor/cranelift-codegen-meta-0.99.1/src/gen_inst.rs +0 -1785
  624. data/ext/cargo-vendor/cranelift-codegen-meta-0.99.1/src/shared/instructions.rs +0 -3847
  625. data/ext/cargo-vendor/cranelift-codegen-shared-0.99.1/.cargo-checksum.json +0 -1
  626. data/ext/cargo-vendor/cranelift-codegen-shared-0.99.1/Cargo.toml +0 -22
  627. data/ext/cargo-vendor/cranelift-codegen-shared-0.99.1/src/lib.rs +0 -26
  628. data/ext/cargo-vendor/cranelift-control-0.99.1/.cargo-checksum.json +0 -1
  629. data/ext/cargo-vendor/cranelift-control-0.99.1/Cargo.toml +0 -30
  630. data/ext/cargo-vendor/cranelift-entity-0.99.1/.cargo-checksum.json +0 -1
  631. data/ext/cargo-vendor/cranelift-entity-0.99.1/Cargo.toml +0 -35
  632. data/ext/cargo-vendor/cranelift-entity-0.99.1/src/lib.rs +0 -330
  633. data/ext/cargo-vendor/cranelift-entity-0.99.1/src/list.rs +0 -955
  634. data/ext/cargo-vendor/cranelift-entity-0.99.1/src/packed_option.rs +0 -171
  635. data/ext/cargo-vendor/cranelift-entity-0.99.1/src/primary.rs +0 -456
  636. data/ext/cargo-vendor/cranelift-entity-0.99.1/src/sparse.rs +0 -368
  637. data/ext/cargo-vendor/cranelift-frontend-0.99.1/.cargo-checksum.json +0 -1
  638. data/ext/cargo-vendor/cranelift-frontend-0.99.1/Cargo.toml +0 -53
  639. data/ext/cargo-vendor/cranelift-frontend-0.99.1/src/lib.rs +0 -204
  640. data/ext/cargo-vendor/cranelift-isle-0.99.1/.cargo-checksum.json +0 -1
  641. data/ext/cargo-vendor/cranelift-isle-0.99.1/Cargo.toml +0 -37
  642. data/ext/cargo-vendor/cranelift-native-0.99.1/.cargo-checksum.json +0 -1
  643. data/ext/cargo-vendor/cranelift-native-0.99.1/Cargo.toml +0 -38
  644. data/ext/cargo-vendor/cranelift-native-0.99.1/src/lib.rs +0 -204
  645. data/ext/cargo-vendor/cranelift-wasm-0.99.1/.cargo-checksum.json +0 -1
  646. data/ext/cargo-vendor/cranelift-wasm-0.99.1/Cargo.toml +0 -85
  647. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/code_translator.rs +0 -3608
  648. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/environ/dummy.rs +0 -942
  649. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/environ/spec.rs +0 -913
  650. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/func_translator.rs +0 -431
  651. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/heap.rs +0 -99
  652. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/lib.rs +0 -78
  653. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/sections_translator.rs +0 -420
  654. data/ext/cargo-vendor/cranelift-wasm-0.99.1/src/translation_utils.rs +0 -99
  655. data/ext/cargo-vendor/env_logger-0.10.0/.cargo-checksum.json +0 -1
  656. data/ext/cargo-vendor/env_logger-0.10.0/Cargo.lock +0 -254
  657. data/ext/cargo-vendor/env_logger-0.10.0/Cargo.toml +0 -129
  658. data/ext/cargo-vendor/env_logger-0.10.0/LICENSE-APACHE +0 -201
  659. data/ext/cargo-vendor/env_logger-0.10.0/README.md +0 -183
  660. data/ext/cargo-vendor/env_logger-0.10.0/examples/custom_default_format.rs +0 -40
  661. data/ext/cargo-vendor/env_logger-0.10.0/examples/custom_format.rs +0 -54
  662. data/ext/cargo-vendor/env_logger-0.10.0/examples/custom_logger.rs +0 -62
  663. data/ext/cargo-vendor/env_logger-0.10.0/examples/default.rs +0 -38
  664. data/ext/cargo-vendor/env_logger-0.10.0/examples/direct_logger.rs +0 -39
  665. data/ext/cargo-vendor/env_logger-0.10.0/examples/filters_from_code.rs +0 -20
  666. data/ext/cargo-vendor/env_logger-0.10.0/examples/in_tests.rs +0 -54
  667. data/ext/cargo-vendor/env_logger-0.10.0/examples/syslog_friendly_format.rs +0 -24
  668. data/ext/cargo-vendor/env_logger-0.10.0/src/filter/mod.rs +0 -868
  669. data/ext/cargo-vendor/env_logger-0.10.0/src/filter/regex.rs +0 -29
  670. data/ext/cargo-vendor/env_logger-0.10.0/src/filter/string.rs +0 -24
  671. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/humantime/extern_impl.rs +0 -118
  672. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/humantime/mod.rs +0 -11
  673. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/humantime/shim_impl.rs +0 -5
  674. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/mod.rs +0 -652
  675. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/writer/atty.rs +0 -33
  676. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/writer/mod.rs +0 -253
  677. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/writer/termcolor/extern_impl.rs +0 -532
  678. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/writer/termcolor/mod.rs +0 -12
  679. data/ext/cargo-vendor/env_logger-0.10.0/src/fmt/writer/termcolor/shim_impl.rs +0 -72
  680. data/ext/cargo-vendor/env_logger-0.10.0/src/lib.rs +0 -1311
  681. data/ext/cargo-vendor/env_logger-0.10.0/tests/init-twice-retains-filter.rs +0 -40
  682. data/ext/cargo-vendor/env_logger-0.10.0/tests/log-in-log.rs +0 -39
  683. data/ext/cargo-vendor/env_logger-0.10.0/tests/log_tls_dtors.rs +0 -66
  684. data/ext/cargo-vendor/env_logger-0.10.0/tests/regexp_filter.rs +0 -57
  685. data/ext/cargo-vendor/fallible-iterator-0.2.0/.cargo-checksum.json +0 -1
  686. data/ext/cargo-vendor/fallible-iterator-0.2.0/CHANGELOG.md +0 -26
  687. data/ext/cargo-vendor/fallible-iterator-0.2.0/Cargo.toml +0 -27
  688. data/ext/cargo-vendor/fallible-iterator-0.2.0/README.md +0 -15
  689. data/ext/cargo-vendor/fallible-iterator-0.2.0/src/lib.rs +0 -2606
  690. data/ext/cargo-vendor/fallible-iterator-0.2.0/src/test.rs +0 -455
  691. data/ext/cargo-vendor/file-per-thread-logger-0.2.0/.cargo-checksum.json +0 -1
  692. data/ext/cargo-vendor/file-per-thread-logger-0.2.0/Cargo.toml +0 -36
  693. data/ext/cargo-vendor/file-per-thread-logger-0.2.0/README.md +0 -25
  694. data/ext/cargo-vendor/file-per-thread-logger-0.2.0/run-tests.sh +0 -12
  695. data/ext/cargo-vendor/file-per-thread-logger-0.2.0/src/lib.rs +0 -200
  696. data/ext/cargo-vendor/file-per-thread-logger-0.2.0/tests/test.rs +0 -323
  697. data/ext/cargo-vendor/gimli-0.27.3/.cargo-checksum.json +0 -1
  698. data/ext/cargo-vendor/gimli-0.27.3/CHANGELOG.md +0 -943
  699. data/ext/cargo-vendor/gimli-0.27.3/Cargo.lock +0 -345
  700. data/ext/cargo-vendor/gimli-0.27.3/Cargo.toml +0 -151
  701. data/ext/cargo-vendor/gimli-0.27.3/LICENSE-APACHE +0 -201
  702. data/ext/cargo-vendor/gimli-0.27.3/LICENSE-MIT +0 -25
  703. data/ext/cargo-vendor/gimli-0.27.3/README.md +0 -78
  704. data/ext/cargo-vendor/gimli-0.27.3/examples/dwarf-validate.rs +0 -267
  705. data/ext/cargo-vendor/gimli-0.27.3/examples/dwarfdump.rs +0 -2369
  706. data/ext/cargo-vendor/gimli-0.27.3/examples/simple.rs +0 -67
  707. data/ext/cargo-vendor/gimli-0.27.3/examples/simple_line.rs +0 -106
  708. data/ext/cargo-vendor/gimli-0.27.3/src/arch.rs +0 -751
  709. data/ext/cargo-vendor/gimli-0.27.3/src/common.rs +0 -381
  710. data/ext/cargo-vendor/gimli-0.27.3/src/constants.rs +0 -1426
  711. data/ext/cargo-vendor/gimli-0.27.3/src/endianity.rs +0 -256
  712. data/ext/cargo-vendor/gimli-0.27.3/src/leb128.rs +0 -612
  713. data/ext/cargo-vendor/gimli-0.27.3/src/lib.rs +0 -79
  714. data/ext/cargo-vendor/gimli-0.27.3/src/read/abbrev.rs +0 -1089
  715. data/ext/cargo-vendor/gimli-0.27.3/src/read/addr.rs +0 -128
  716. data/ext/cargo-vendor/gimli-0.27.3/src/read/aranges.rs +0 -660
  717. data/ext/cargo-vendor/gimli-0.27.3/src/read/cfi.rs +0 -7574
  718. data/ext/cargo-vendor/gimli-0.27.3/src/read/dwarf.rs +0 -1184
  719. data/ext/cargo-vendor/gimli-0.27.3/src/read/endian_reader.rs +0 -639
  720. data/ext/cargo-vendor/gimli-0.27.3/src/read/endian_slice.rs +0 -350
  721. data/ext/cargo-vendor/gimli-0.27.3/src/read/index.rs +0 -535
  722. data/ext/cargo-vendor/gimli-0.27.3/src/read/lazy.rs +0 -116
  723. data/ext/cargo-vendor/gimli-0.27.3/src/read/line.rs +0 -3130
  724. data/ext/cargo-vendor/gimli-0.27.3/src/read/lists.rs +0 -68
  725. data/ext/cargo-vendor/gimli-0.27.3/src/read/loclists.rs +0 -1627
  726. data/ext/cargo-vendor/gimli-0.27.3/src/read/lookup.rs +0 -202
  727. data/ext/cargo-vendor/gimli-0.27.3/src/read/mod.rs +0 -830
  728. data/ext/cargo-vendor/gimli-0.27.3/src/read/op.rs +0 -4119
  729. data/ext/cargo-vendor/gimli-0.27.3/src/read/pubnames.rs +0 -141
  730. data/ext/cargo-vendor/gimli-0.27.3/src/read/pubtypes.rs +0 -141
  731. data/ext/cargo-vendor/gimli-0.27.3/src/read/reader.rs +0 -502
  732. data/ext/cargo-vendor/gimli-0.27.3/src/read/rnglists.rs +0 -1458
  733. data/ext/cargo-vendor/gimli-0.27.3/src/read/str.rs +0 -321
  734. data/ext/cargo-vendor/gimli-0.27.3/src/read/unit.rs +0 -6139
  735. data/ext/cargo-vendor/gimli-0.27.3/src/read/util.rs +0 -251
  736. data/ext/cargo-vendor/gimli-0.27.3/src/read/value.rs +0 -1621
  737. data/ext/cargo-vendor/gimli-0.27.3/src/test_util.rs +0 -53
  738. data/ext/cargo-vendor/gimli-0.27.3/src/write/abbrev.rs +0 -188
  739. data/ext/cargo-vendor/gimli-0.27.3/src/write/cfi.rs +0 -1025
  740. data/ext/cargo-vendor/gimli-0.27.3/src/write/dwarf.rs +0 -138
  741. data/ext/cargo-vendor/gimli-0.27.3/src/write/endian_vec.rs +0 -117
  742. data/ext/cargo-vendor/gimli-0.27.3/src/write/line.rs +0 -1957
  743. data/ext/cargo-vendor/gimli-0.27.3/src/write/loc.rs +0 -550
  744. data/ext/cargo-vendor/gimli-0.27.3/src/write/mod.rs +0 -425
  745. data/ext/cargo-vendor/gimli-0.27.3/src/write/op.rs +0 -1618
  746. data/ext/cargo-vendor/gimli-0.27.3/src/write/range.rs +0 -416
  747. data/ext/cargo-vendor/gimli-0.27.3/src/write/section.rs +0 -172
  748. data/ext/cargo-vendor/gimli-0.27.3/src/write/str.rs +0 -172
  749. data/ext/cargo-vendor/gimli-0.27.3/src/write/unit.rs +0 -3152
  750. data/ext/cargo-vendor/gimli-0.27.3/src/write/writer.rs +0 -494
  751. data/ext/cargo-vendor/hashbrown-0.12.3/.cargo-checksum.json +0 -1
  752. data/ext/cargo-vendor/hashbrown-0.12.3/CHANGELOG.md +0 -402
  753. data/ext/cargo-vendor/hashbrown-0.12.3/Cargo.toml +0 -113
  754. data/ext/cargo-vendor/hashbrown-0.12.3/LICENSE-APACHE +0 -201
  755. data/ext/cargo-vendor/hashbrown-0.12.3/LICENSE-MIT +0 -25
  756. data/ext/cargo-vendor/hashbrown-0.12.3/README.md +0 -126
  757. data/ext/cargo-vendor/hashbrown-0.12.3/benches/bench.rs +0 -331
  758. data/ext/cargo-vendor/hashbrown-0.12.3/benches/insert_unique_unchecked.rs +0 -32
  759. data/ext/cargo-vendor/hashbrown-0.12.3/clippy.toml +0 -1
  760. data/ext/cargo-vendor/hashbrown-0.12.3/src/external_trait_impls/mod.rs +0 -4
  761. data/ext/cargo-vendor/hashbrown-0.12.3/src/external_trait_impls/rayon/helpers.rs +0 -27
  762. data/ext/cargo-vendor/hashbrown-0.12.3/src/external_trait_impls/rayon/map.rs +0 -734
  763. data/ext/cargo-vendor/hashbrown-0.12.3/src/external_trait_impls/rayon/mod.rs +0 -4
  764. data/ext/cargo-vendor/hashbrown-0.12.3/src/external_trait_impls/rayon/raw.rs +0 -231
  765. data/ext/cargo-vendor/hashbrown-0.12.3/src/external_trait_impls/rayon/set.rs +0 -659
  766. data/ext/cargo-vendor/hashbrown-0.12.3/src/external_trait_impls/serde.rs +0 -201
  767. data/ext/cargo-vendor/hashbrown-0.12.3/src/lib.rs +0 -150
  768. data/ext/cargo-vendor/hashbrown-0.12.3/src/macros.rs +0 -70
  769. data/ext/cargo-vendor/hashbrown-0.12.3/src/map.rs +0 -8408
  770. data/ext/cargo-vendor/hashbrown-0.12.3/src/raw/alloc.rs +0 -73
  771. data/ext/cargo-vendor/hashbrown-0.12.3/src/raw/bitmask.rs +0 -122
  772. data/ext/cargo-vendor/hashbrown-0.12.3/src/raw/generic.rs +0 -154
  773. data/ext/cargo-vendor/hashbrown-0.12.3/src/raw/mod.rs +0 -2460
  774. data/ext/cargo-vendor/hashbrown-0.12.3/src/raw/sse2.rs +0 -146
  775. data/ext/cargo-vendor/hashbrown-0.12.3/src/rustc_entry.rs +0 -630
  776. data/ext/cargo-vendor/hashbrown-0.12.3/src/scopeguard.rs +0 -74
  777. data/ext/cargo-vendor/hashbrown-0.12.3/src/set.rs +0 -2790
  778. data/ext/cargo-vendor/hashbrown-0.12.3/tests/hasher.rs +0 -65
  779. data/ext/cargo-vendor/hashbrown-0.12.3/tests/rayon.rs +0 -533
  780. data/ext/cargo-vendor/hashbrown-0.12.3/tests/serde.rs +0 -65
  781. data/ext/cargo-vendor/hashbrown-0.12.3/tests/set.rs +0 -34
  782. data/ext/cargo-vendor/humantime-2.1.0/.cargo-checksum.json +0 -1
  783. data/ext/cargo-vendor/humantime-2.1.0/Cargo.toml +0 -37
  784. data/ext/cargo-vendor/humantime-2.1.0/LICENSE-APACHE +0 -202
  785. data/ext/cargo-vendor/humantime-2.1.0/LICENSE-MIT +0 -26
  786. data/ext/cargo-vendor/humantime-2.1.0/README.md +0 -68
  787. data/ext/cargo-vendor/humantime-2.1.0/benches/datetime_format.rs +0 -56
  788. data/ext/cargo-vendor/humantime-2.1.0/benches/datetime_parse.rs +0 -47
  789. data/ext/cargo-vendor/humantime-2.1.0/bulk.yaml +0 -8
  790. data/ext/cargo-vendor/humantime-2.1.0/src/date.rs +0 -623
  791. data/ext/cargo-vendor/humantime-2.1.0/src/duration.rs +0 -456
  792. data/ext/cargo-vendor/humantime-2.1.0/src/lib.rs +0 -34
  793. data/ext/cargo-vendor/humantime-2.1.0/src/wrapper.rs +0 -107
  794. data/ext/cargo-vendor/humantime-2.1.0/vagga.yaml +0 -92
  795. data/ext/cargo-vendor/indexmap-1.9.3/.cargo-checksum.json +0 -1
  796. data/ext/cargo-vendor/indexmap-1.9.3/Cargo.toml +0 -108
  797. data/ext/cargo-vendor/indexmap-1.9.3/LICENSE-APACHE +0 -201
  798. data/ext/cargo-vendor/indexmap-1.9.3/LICENSE-MIT +0 -25
  799. data/ext/cargo-vendor/indexmap-1.9.3/README.md +0 -55
  800. data/ext/cargo-vendor/indexmap-1.9.3/RELEASES.md +0 -388
  801. data/ext/cargo-vendor/indexmap-1.9.3/benches/bench.rs +0 -763
  802. data/ext/cargo-vendor/indexmap-1.9.3/benches/faststring.rs +0 -185
  803. data/ext/cargo-vendor/indexmap-1.9.3/build.rs +0 -8
  804. data/ext/cargo-vendor/indexmap-1.9.3/src/arbitrary.rs +0 -75
  805. data/ext/cargo-vendor/indexmap-1.9.3/src/equivalent.rs +0 -27
  806. data/ext/cargo-vendor/indexmap-1.9.3/src/lib.rs +0 -194
  807. data/ext/cargo-vendor/indexmap-1.9.3/src/macros.rs +0 -178
  808. data/ext/cargo-vendor/indexmap-1.9.3/src/map/core/raw.rs +0 -191
  809. data/ext/cargo-vendor/indexmap-1.9.3/src/map/core.rs +0 -700
  810. data/ext/cargo-vendor/indexmap-1.9.3/src/map.rs +0 -1947
  811. data/ext/cargo-vendor/indexmap-1.9.3/src/mutable_keys.rs +0 -75
  812. data/ext/cargo-vendor/indexmap-1.9.3/src/rayon/map.rs +0 -583
  813. data/ext/cargo-vendor/indexmap-1.9.3/src/rayon/mod.rs +0 -27
  814. data/ext/cargo-vendor/indexmap-1.9.3/src/rayon/set.rs +0 -741
  815. data/ext/cargo-vendor/indexmap-1.9.3/src/rustc.rs +0 -158
  816. data/ext/cargo-vendor/indexmap-1.9.3/src/serde.rs +0 -155
  817. data/ext/cargo-vendor/indexmap-1.9.3/src/serde_seq.rs +0 -112
  818. data/ext/cargo-vendor/indexmap-1.9.3/src/set.rs +0 -1912
  819. data/ext/cargo-vendor/indexmap-1.9.3/src/util.rs +0 -31
  820. data/ext/cargo-vendor/indexmap-1.9.3/tests/equivalent_trait.rs +0 -53
  821. data/ext/cargo-vendor/indexmap-1.9.3/tests/macros_full_path.rs +0 -19
  822. data/ext/cargo-vendor/indexmap-1.9.3/tests/quick.rs +0 -573
  823. data/ext/cargo-vendor/indexmap-1.9.3/tests/tests.rs +0 -28
  824. data/ext/cargo-vendor/object-0.31.1/.cargo-checksum.json +0 -1
  825. data/ext/cargo-vendor/object-0.31.1/CHANGELOG.md +0 -621
  826. data/ext/cargo-vendor/object-0.31.1/Cargo.toml +0 -161
  827. data/ext/cargo-vendor/object-0.31.1/LICENSE-APACHE +0 -201
  828. data/ext/cargo-vendor/object-0.31.1/LICENSE-MIT +0 -25
  829. data/ext/cargo-vendor/object-0.31.1/README.md +0 -58
  830. data/ext/cargo-vendor/object-0.31.1/clippy.toml +0 -1
  831. data/ext/cargo-vendor/object-0.31.1/src/archive.rs +0 -91
  832. data/ext/cargo-vendor/object-0.31.1/src/common.rs +0 -499
  833. data/ext/cargo-vendor/object-0.31.1/src/elf.rs +0 -6146
  834. data/ext/cargo-vendor/object-0.31.1/src/endian.rs +0 -831
  835. data/ext/cargo-vendor/object-0.31.1/src/lib.rs +0 -116
  836. data/ext/cargo-vendor/object-0.31.1/src/macho.rs +0 -3307
  837. data/ext/cargo-vendor/object-0.31.1/src/pe.rs +0 -3050
  838. data/ext/cargo-vendor/object-0.31.1/src/pod.rs +0 -239
  839. data/ext/cargo-vendor/object-0.31.1/src/read/any.rs +0 -1323
  840. data/ext/cargo-vendor/object-0.31.1/src/read/archive.rs +0 -739
  841. data/ext/cargo-vendor/object-0.31.1/src/read/coff/comdat.rs +0 -207
  842. data/ext/cargo-vendor/object-0.31.1/src/read/coff/file.rs +0 -364
  843. data/ext/cargo-vendor/object-0.31.1/src/read/coff/mod.rs +0 -18
  844. data/ext/cargo-vendor/object-0.31.1/src/read/coff/relocation.rs +0 -104
  845. data/ext/cargo-vendor/object-0.31.1/src/read/coff/section.rs +0 -574
  846. data/ext/cargo-vendor/object-0.31.1/src/read/coff/symbol.rs +0 -626
  847. data/ext/cargo-vendor/object-0.31.1/src/read/elf/attributes.rs +0 -303
  848. data/ext/cargo-vendor/object-0.31.1/src/read/elf/comdat.rs +0 -160
  849. data/ext/cargo-vendor/object-0.31.1/src/read/elf/compression.rs +0 -56
  850. data/ext/cargo-vendor/object-0.31.1/src/read/elf/dynamic.rs +0 -117
  851. data/ext/cargo-vendor/object-0.31.1/src/read/elf/file.rs +0 -910
  852. data/ext/cargo-vendor/object-0.31.1/src/read/elf/hash.rs +0 -220
  853. data/ext/cargo-vendor/object-0.31.1/src/read/elf/mod.rs +0 -42
  854. data/ext/cargo-vendor/object-0.31.1/src/read/elf/note.rs +0 -263
  855. data/ext/cargo-vendor/object-0.31.1/src/read/elf/relocation.rs +0 -571
  856. data/ext/cargo-vendor/object-0.31.1/src/read/elf/section.rs +0 -1146
  857. data/ext/cargo-vendor/object-0.31.1/src/read/elf/segment.rs +0 -332
  858. data/ext/cargo-vendor/object-0.31.1/src/read/elf/symbol.rs +0 -577
  859. data/ext/cargo-vendor/object-0.31.1/src/read/elf/version.rs +0 -421
  860. data/ext/cargo-vendor/object-0.31.1/src/read/macho/dyld_cache.rs +0 -343
  861. data/ext/cargo-vendor/object-0.31.1/src/read/macho/fat.rs +0 -122
  862. data/ext/cargo-vendor/object-0.31.1/src/read/macho/file.rs +0 -731
  863. data/ext/cargo-vendor/object-0.31.1/src/read/macho/load_command.rs +0 -373
  864. data/ext/cargo-vendor/object-0.31.1/src/read/macho/mod.rs +0 -30
  865. data/ext/cargo-vendor/object-0.31.1/src/read/macho/relocation.rs +0 -127
  866. data/ext/cargo-vendor/object-0.31.1/src/read/macho/section.rs +0 -387
  867. data/ext/cargo-vendor/object-0.31.1/src/read/macho/segment.rs +0 -301
  868. data/ext/cargo-vendor/object-0.31.1/src/read/macho/symbol.rs +0 -488
  869. data/ext/cargo-vendor/object-0.31.1/src/read/mod.rs +0 -760
  870. data/ext/cargo-vendor/object-0.31.1/src/read/pe/data_directory.rs +0 -211
  871. data/ext/cargo-vendor/object-0.31.1/src/read/pe/export.rs +0 -331
  872. data/ext/cargo-vendor/object-0.31.1/src/read/pe/file.rs +0 -1029
  873. data/ext/cargo-vendor/object-0.31.1/src/read/pe/import.rs +0 -332
  874. data/ext/cargo-vendor/object-0.31.1/src/read/pe/mod.rs +0 -34
  875. data/ext/cargo-vendor/object-0.31.1/src/read/pe/relocation.rs +0 -90
  876. data/ext/cargo-vendor/object-0.31.1/src/read/pe/resource.rs +0 -207
  877. data/ext/cargo-vendor/object-0.31.1/src/read/pe/rich.rs +0 -91
  878. data/ext/cargo-vendor/object-0.31.1/src/read/pe/section.rs +0 -434
  879. data/ext/cargo-vendor/object-0.31.1/src/read/read_cache.rs +0 -182
  880. data/ext/cargo-vendor/object-0.31.1/src/read/read_ref.rs +0 -137
  881. data/ext/cargo-vendor/object-0.31.1/src/read/traits.rs +0 -469
  882. data/ext/cargo-vendor/object-0.31.1/src/read/util.rs +0 -425
  883. data/ext/cargo-vendor/object-0.31.1/src/read/wasm.rs +0 -951
  884. data/ext/cargo-vendor/object-0.31.1/src/read/xcoff/comdat.rs +0 -129
  885. data/ext/cargo-vendor/object-0.31.1/src/read/xcoff/file.rs +0 -629
  886. data/ext/cargo-vendor/object-0.31.1/src/read/xcoff/mod.rs +0 -21
  887. data/ext/cargo-vendor/object-0.31.1/src/read/xcoff/relocation.rs +0 -127
  888. data/ext/cargo-vendor/object-0.31.1/src/read/xcoff/section.rs +0 -427
  889. data/ext/cargo-vendor/object-0.31.1/src/read/xcoff/segment.rs +0 -113
  890. data/ext/cargo-vendor/object-0.31.1/src/read/xcoff/symbol.rs +0 -695
  891. data/ext/cargo-vendor/object-0.31.1/src/write/coff.rs +0 -725
  892. data/ext/cargo-vendor/object-0.31.1/src/write/elf/mod.rs +0 -9
  893. data/ext/cargo-vendor/object-0.31.1/src/write/elf/object.rs +0 -891
  894. data/ext/cargo-vendor/object-0.31.1/src/write/elf/writer.rs +0 -2143
  895. data/ext/cargo-vendor/object-0.31.1/src/write/macho.rs +0 -978
  896. data/ext/cargo-vendor/object-0.31.1/src/write/mod.rs +0 -943
  897. data/ext/cargo-vendor/object-0.31.1/src/write/pe.rs +0 -847
  898. data/ext/cargo-vendor/object-0.31.1/src/write/string.rs +0 -159
  899. data/ext/cargo-vendor/object-0.31.1/src/write/util.rs +0 -260
  900. data/ext/cargo-vendor/object-0.31.1/src/write/xcoff.rs +0 -556
  901. data/ext/cargo-vendor/object-0.31.1/src/xcoff.rs +0 -893
  902. data/ext/cargo-vendor/object-0.31.1/tests/integration.rs +0 -2
  903. data/ext/cargo-vendor/object-0.31.1/tests/parse_self.rs +0 -25
  904. data/ext/cargo-vendor/object-0.31.1/tests/read/coff.rs +0 -23
  905. data/ext/cargo-vendor/object-0.31.1/tests/read/mod.rs +0 -3
  906. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/bss.rs +0 -255
  907. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/coff.rs +0 -56
  908. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/comdat.rs +0 -225
  909. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/common.rs +0 -245
  910. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/elf.rs +0 -289
  911. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/macho.rs +0 -24
  912. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/mod.rs +0 -636
  913. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/section_flags.rs +0 -90
  914. data/ext/cargo-vendor/object-0.31.1/tests/round_trip/tls.rs +0 -316
  915. data/ext/cargo-vendor/serde-1.0.185/.cargo-checksum.json +0 -1
  916. data/ext/cargo-vendor/serde-1.0.185/Cargo.toml +0 -66
  917. data/ext/cargo-vendor/serde-1.0.185/build.rs +0 -97
  918. data/ext/cargo-vendor/serde-1.0.185/src/de/ignored_any.rs +0 -242
  919. data/ext/cargo-vendor/serde-1.0.185/src/de/impls.rs +0 -2968
  920. data/ext/cargo-vendor/serde-1.0.185/src/de/mod.rs +0 -2299
  921. data/ext/cargo-vendor/serde-1.0.185/src/de/utf8.rs +0 -46
  922. data/ext/cargo-vendor/serde-1.0.185/src/de/value.rs +0 -1711
  923. data/ext/cargo-vendor/serde-1.0.185/src/integer128.rs +0 -82
  924. data/ext/cargo-vendor/serde-1.0.185/src/lib.rs +0 -327
  925. data/ext/cargo-vendor/serde-1.0.185/src/macros.rs +0 -235
  926. data/ext/cargo-vendor/serde-1.0.185/src/ser/fmt.rs +0 -175
  927. data/ext/cargo-vendor/serde-1.0.185/src/ser/impls.rs +0 -1012
  928. data/ext/cargo-vendor/serde-1.0.185/src/ser/mod.rs +0 -1958
  929. data/ext/cargo-vendor/serde_derive-1.0.185/.cargo-checksum.json +0 -1
  930. data/ext/cargo-vendor/serde_derive-1.0.185/Cargo.toml +0 -59
  931. data/ext/cargo-vendor/serde_derive-1.0.185/src/lib.rs +0 -102
  932. data/ext/cargo-vendor/serde_derive-1.0.185/src/ser.rs +0 -1359
  933. data/ext/cargo-vendor/termcolor-1.2.0/.cargo-checksum.json +0 -1
  934. data/ext/cargo-vendor/termcolor-1.2.0/COPYING +0 -3
  935. data/ext/cargo-vendor/termcolor-1.2.0/Cargo.toml +0 -40
  936. data/ext/cargo-vendor/termcolor-1.2.0/LICENSE-MIT +0 -21
  937. data/ext/cargo-vendor/termcolor-1.2.0/README.md +0 -115
  938. data/ext/cargo-vendor/termcolor-1.2.0/UNLICENSE +0 -24
  939. data/ext/cargo-vendor/termcolor-1.2.0/rustfmt.toml +0 -2
  940. data/ext/cargo-vendor/termcolor-1.2.0/src/lib.rs +0 -2350
  941. data/ext/cargo-vendor/wasi-cap-std-sync-12.0.1/.cargo-checksum.json +0 -1
  942. data/ext/cargo-vendor/wasi-cap-std-sync-12.0.1/Cargo.toml +0 -96
  943. data/ext/cargo-vendor/wasi-cap-std-sync-12.0.1/src/lib.rs +0 -141
  944. data/ext/cargo-vendor/wasi-common-12.0.1/.cargo-checksum.json +0 -1
  945. data/ext/cargo-vendor/wasi-common-12.0.1/Cargo.toml +0 -87
  946. data/ext/cargo-vendor/wasm-encoder-0.31.1/.cargo-checksum.json +0 -1
  947. data/ext/cargo-vendor/wasm-encoder-0.31.1/Cargo.toml +0 -33
  948. data/ext/cargo-vendor/wasm-encoder-0.31.1/src/component/types.rs +0 -784
  949. data/ext/cargo-vendor/wasmparser-0.110.0/.cargo-checksum.json +0 -1
  950. data/ext/cargo-vendor/wasmparser-0.110.0/Cargo.lock +0 -644
  951. data/ext/cargo-vendor/wasmparser-0.110.0/Cargo.toml +0 -54
  952. data/ext/cargo-vendor/wasmparser-0.110.0/src/limits.rs +0 -59
  953. data/ext/cargo-vendor/wasmparser-0.110.0/src/readers/component/types.rs +0 -548
  954. data/ext/cargo-vendor/wasmparser-0.110.0/src/readers/core/types.rs +0 -1141
  955. data/ext/cargo-vendor/wasmparser-0.110.0/src/readers/core.rs +0 -35
  956. data/ext/cargo-vendor/wasmparser-0.110.0/src/validator/component.rs +0 -3144
  957. data/ext/cargo-vendor/wasmparser-0.110.0/src/validator/core.rs +0 -1314
  958. data/ext/cargo-vendor/wasmparser-0.110.0/src/validator/types.rs +0 -3197
  959. data/ext/cargo-vendor/wasmparser-0.110.0/src/validator.rs +0 -1568
  960. data/ext/cargo-vendor/wasmparser-0.111.0/.cargo-checksum.json +0 -1
  961. data/ext/cargo-vendor/wasmparser-0.111.0/Cargo.lock +0 -644
  962. data/ext/cargo-vendor/wasmparser-0.111.0/Cargo.toml +0 -54
  963. data/ext/cargo-vendor/wasmparser-0.111.0/src/binary_reader.rs +0 -1706
  964. data/ext/cargo-vendor/wasmparser-0.111.0/src/lib.rs +0 -726
  965. data/ext/cargo-vendor/wasmparser-0.111.0/src/limits.rs +0 -59
  966. data/ext/cargo-vendor/wasmparser-0.111.0/src/readers/component/types.rs +0 -548
  967. data/ext/cargo-vendor/wasmparser-0.111.0/src/readers/core/types.rs +0 -1141
  968. data/ext/cargo-vendor/wasmparser-0.111.0/src/validator/component.rs +0 -3148
  969. data/ext/cargo-vendor/wasmparser-0.111.0/src/validator/core.rs +0 -1314
  970. data/ext/cargo-vendor/wasmparser-0.111.0/src/validator/operators.rs +0 -3466
  971. data/ext/cargo-vendor/wasmparser-0.111.0/src/validator/types.rs +0 -3283
  972. data/ext/cargo-vendor/wasmparser-0.111.0/src/validator.rs +0 -1568
  973. data/ext/cargo-vendor/wasmprinter-0.2.63/.cargo-checksum.json +0 -1
  974. data/ext/cargo-vendor/wasmprinter-0.2.63/Cargo.toml +0 -39
  975. data/ext/cargo-vendor/wasmprinter-0.2.63/src/lib.rs +0 -2962
  976. data/ext/cargo-vendor/wasmprinter-0.2.63/src/operator.rs +0 -873
  977. data/ext/cargo-vendor/wasmtime-12.0.1/.cargo-checksum.json +0 -1
  978. data/ext/cargo-vendor/wasmtime-12.0.1/Cargo.toml +0 -186
  979. data/ext/cargo-vendor/wasmtime-12.0.1/src/component/component.rs +0 -466
  980. data/ext/cargo-vendor/wasmtime-12.0.1/src/component/func/typed.rs +0 -2326
  981. data/ext/cargo-vendor/wasmtime-12.0.1/src/component/instance.rs +0 -781
  982. data/ext/cargo-vendor/wasmtime-12.0.1/src/component/linker.rs +0 -479
  983. data/ext/cargo-vendor/wasmtime-12.0.1/src/component/mod.rs +0 -316
  984. data/ext/cargo-vendor/wasmtime-12.0.1/src/component/types.rs +0 -562
  985. data/ext/cargo-vendor/wasmtime-12.0.1/src/component/values.rs +0 -1376
  986. data/ext/cargo-vendor/wasmtime-12.0.1/src/config.rs +0 -2096
  987. data/ext/cargo-vendor/wasmtime-12.0.1/src/engine/serialization.rs +0 -629
  988. data/ext/cargo-vendor/wasmtime-12.0.1/src/engine.rs +0 -756
  989. data/ext/cargo-vendor/wasmtime-12.0.1/src/instance.rs +0 -883
  990. data/ext/cargo-vendor/wasmtime-12.0.1/src/limits.rs +0 -357
  991. data/ext/cargo-vendor/wasmtime-12.0.1/src/module.rs +0 -1346
  992. data/ext/cargo-vendor/wasmtime-12.0.1/src/store.rs +0 -2212
  993. data/ext/cargo-vendor/wasmtime-12.0.1/src/trampoline/memory.rs +0 -202
  994. data/ext/cargo-vendor/wasmtime-12.0.1/src/trampoline.rs +0 -76
  995. data/ext/cargo-vendor/wasmtime-asm-macros-12.0.1/.cargo-checksum.json +0 -1
  996. data/ext/cargo-vendor/wasmtime-asm-macros-12.0.1/Cargo.toml +0 -22
  997. data/ext/cargo-vendor/wasmtime-cache-12.0.1/.cargo-checksum.json +0 -1
  998. data/ext/cargo-vendor/wasmtime-cache-12.0.1/Cargo.toml +0 -73
  999. data/ext/cargo-vendor/wasmtime-cache-12.0.1/src/config.rs +0 -584
  1000. data/ext/cargo-vendor/wasmtime-cache-12.0.1/src/worker/tests.rs +0 -758
  1001. data/ext/cargo-vendor/wasmtime-cache-12.0.1/src/worker.rs +0 -903
  1002. data/ext/cargo-vendor/wasmtime-component-macro-12.0.1/.cargo-checksum.json +0 -1
  1003. data/ext/cargo-vendor/wasmtime-component-macro-12.0.1/Cargo.toml +0 -58
  1004. data/ext/cargo-vendor/wasmtime-component-macro-12.0.1/src/bindgen.rs +0 -343
  1005. data/ext/cargo-vendor/wasmtime-component-macro-12.0.1/src/component.rs +0 -1319
  1006. data/ext/cargo-vendor/wasmtime-component-macro-12.0.1/tests/codegen/unions.wit +0 -66
  1007. data/ext/cargo-vendor/wasmtime-component-macro-12.0.1/tests/codegen/variants.wit +0 -147
  1008. data/ext/cargo-vendor/wasmtime-component-util-12.0.1/.cargo-checksum.json +0 -1
  1009. data/ext/cargo-vendor/wasmtime-component-util-12.0.1/Cargo.toml +0 -25
  1010. data/ext/cargo-vendor/wasmtime-cranelift-12.0.1/.cargo-checksum.json +0 -1
  1011. data/ext/cargo-vendor/wasmtime-cranelift-12.0.1/Cargo.toml +0 -93
  1012. data/ext/cargo-vendor/wasmtime-cranelift-12.0.1/src/builder.rs +0 -116
  1013. data/ext/cargo-vendor/wasmtime-cranelift-12.0.1/src/compiler.rs +0 -1297
  1014. data/ext/cargo-vendor/wasmtime-cranelift-12.0.1/src/debug/transform/attr.rs +0 -339
  1015. data/ext/cargo-vendor/wasmtime-cranelift-12.0.1/src/debug.rs +0 -20
  1016. data/ext/cargo-vendor/wasmtime-cranelift-12.0.1/src/func_environ.rs +0 -2377
  1017. data/ext/cargo-vendor/wasmtime-cranelift-shared-12.0.1/.cargo-checksum.json +0 -1
  1018. data/ext/cargo-vendor/wasmtime-cranelift-shared-12.0.1/Cargo.toml +0 -57
  1019. data/ext/cargo-vendor/wasmtime-environ-12.0.1/.cargo-checksum.json +0 -1
  1020. data/ext/cargo-vendor/wasmtime-environ-12.0.1/Cargo.lock +0 -736
  1021. data/ext/cargo-vendor/wasmtime-environ-12.0.1/Cargo.toml +0 -116
  1022. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/address_map.rs +0 -192
  1023. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/builtin.rs +0 -127
  1024. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/compilation.rs +0 -400
  1025. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/component/compiler.rs +0 -47
  1026. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/component/info.rs +0 -583
  1027. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/component/types.rs +0 -1920
  1028. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/fact/trampoline.rs +0 -3269
  1029. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/fact/transcode.rs +0 -168
  1030. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/lib.rs +0 -76
  1031. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/module.rs +0 -1083
  1032. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/module_environ.rs +0 -887
  1033. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/module_types.rs +0 -78
  1034. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/stack_map.rs +0 -36
  1035. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/tunables.rs +0 -115
  1036. data/ext/cargo-vendor/wasmtime-environ-12.0.1/src/vmoffsets.rs +0 -940
  1037. data/ext/cargo-vendor/wasmtime-fiber-12.0.1/.cargo-checksum.json +0 -1
  1038. data/ext/cargo-vendor/wasmtime-fiber-12.0.1/Cargo.toml +0 -51
  1039. data/ext/cargo-vendor/wasmtime-jit-12.0.1/.cargo-checksum.json +0 -1
  1040. data/ext/cargo-vendor/wasmtime-jit-12.0.1/Cargo.toml +0 -104
  1041. data/ext/cargo-vendor/wasmtime-jit-12.0.1/src/instantiate.rs +0 -760
  1042. data/ext/cargo-vendor/wasmtime-jit-12.0.1/src/lib.rs +0 -38
  1043. data/ext/cargo-vendor/wasmtime-jit-12.0.1/src/unwind/miri.rs +0 -15
  1044. data/ext/cargo-vendor/wasmtime-jit-12.0.1/src/unwind/systemv.rs +0 -90
  1045. data/ext/cargo-vendor/wasmtime-jit-12.0.1/src/unwind/winx64.rs +0 -44
  1046. data/ext/cargo-vendor/wasmtime-jit-debug-12.0.1/.cargo-checksum.json +0 -1
  1047. data/ext/cargo-vendor/wasmtime-jit-debug-12.0.1/Cargo.toml +0 -58
  1048. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-12.0.1/.cargo-checksum.json +0 -1
  1049. data/ext/cargo-vendor/wasmtime-jit-icache-coherence-12.0.1/Cargo.toml +0 -37
  1050. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/.cargo-checksum.json +0 -1
  1051. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/Cargo.toml +0 -119
  1052. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/instance/allocator/on_demand.rs +0 -127
  1053. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/instance/allocator/pooling/index_allocator.rs +0 -599
  1054. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/instance/allocator/pooling.rs +0 -1368
  1055. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/instance/allocator.rs +0 -414
  1056. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/instance.rs +0 -1345
  1057. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/lib.rs +0 -289
  1058. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/libcalls.rs +0 -627
  1059. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/memory.rs +0 -958
  1060. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/parking_spot.rs +0 -522
  1061. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/table.rs +0 -595
  1062. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/trampolines/s390x.S +0 -62
  1063. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/traphandlers/macos.rs +0 -476
  1064. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/traphandlers.rs +0 -782
  1065. data/ext/cargo-vendor/wasmtime-runtime-12.0.1/src/vmcontext.rs +0 -1221
  1066. data/ext/cargo-vendor/wasmtime-types-12.0.1/.cargo-checksum.json +0 -1
  1067. data/ext/cargo-vendor/wasmtime-types-12.0.1/Cargo.toml +0 -34
  1068. data/ext/cargo-vendor/wasmtime-types-12.0.1/src/lib.rs +0 -504
  1069. data/ext/cargo-vendor/wasmtime-versioned-export-macros-12.0.1/.cargo-checksum.json +0 -1
  1070. data/ext/cargo-vendor/wasmtime-versioned-export-macros-12.0.1/Cargo.toml +0 -32
  1071. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/.cargo-checksum.json +0 -1
  1072. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/Cargo.toml +0 -191
  1073. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/lib.rs +0 -131
  1074. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/command.rs +0 -91
  1075. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/ctx.rs +0 -237
  1076. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/filesystem.rs +0 -216
  1077. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/mod.rs +0 -185
  1078. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/pipe.rs +0 -846
  1079. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview1/mod.rs +0 -1870
  1080. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview2/clocks.rs +0 -107
  1081. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview2/env.rs +0 -37
  1082. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview2/exit.rs +0 -11
  1083. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview2/filesystem/sync.rs +0 -613
  1084. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview2/filesystem.rs +0 -1096
  1085. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview2/io.rs +0 -494
  1086. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/preview2/mod.rs +0 -6
  1087. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/stdio/unix.rs +0 -133
  1088. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/stdio/worker_thread_stdin.rs +0 -133
  1089. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/stdio.rs +0 -218
  1090. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/stream.rs +0 -302
  1091. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/src/preview2/table.rs +0 -287
  1092. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/filesystem/filesystem.wit +0 -782
  1093. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/http/types.wit +0 -159
  1094. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/io/streams.wit +0 -254
  1095. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/logging/handler.wit +0 -34
  1096. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/preview/command-extended.wit +0 -36
  1097. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/preview/command.wit +0 -26
  1098. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/preview/proxy.wit +0 -9
  1099. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/preview/reactor.wit +0 -24
  1100. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/sockets/ip-name-lookup.wit +0 -69
  1101. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/sockets/network.wit +0 -187
  1102. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/sockets/tcp-create-socket.wit +0 -27
  1103. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/sockets/tcp.wit +0 -255
  1104. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/sockets/udp-create-socket.wit +0 -27
  1105. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/sockets/udp.wit +0 -211
  1106. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/wasi-cli-base/environment.wit +0 -16
  1107. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/wasi-cli-base/exit.wit +0 -4
  1108. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/deps/wasi-cli-base/preopens.wit +0 -7
  1109. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/main.wit +0 -1
  1110. data/ext/cargo-vendor/wasmtime-wasi-12.0.1/wit/test.wit +0 -28
  1111. data/ext/cargo-vendor/wasmtime-winch-12.0.1/.cargo-checksum.json +0 -1
  1112. data/ext/cargo-vendor/wasmtime-winch-12.0.1/Cargo.toml +0 -63
  1113. data/ext/cargo-vendor/wasmtime-wit-bindgen-12.0.1/.cargo-checksum.json +0 -1
  1114. data/ext/cargo-vendor/wasmtime-wit-bindgen-12.0.1/Cargo.toml +0 -32
  1115. data/ext/cargo-vendor/wasmtime-wit-bindgen-12.0.1/src/lib.rs +0 -1705
  1116. data/ext/cargo-vendor/wasmtime-wit-bindgen-12.0.1/src/rust.rs +0 -498
  1117. data/ext/cargo-vendor/wasmtime-wit-bindgen-12.0.1/src/types.rs +0 -185
  1118. data/ext/cargo-vendor/wast-63.0.0/.cargo-checksum.json +0 -1
  1119. data/ext/cargo-vendor/wast-63.0.0/Cargo.toml +0 -50
  1120. data/ext/cargo-vendor/wast-63.0.0/src/component/binary.rs +0 -1022
  1121. data/ext/cargo-vendor/wast-63.0.0/src/component/expand.rs +0 -880
  1122. data/ext/cargo-vendor/wast-63.0.0/src/component/resolve.rs +0 -1010
  1123. data/ext/cargo-vendor/wast-63.0.0/src/component/types.rs +0 -1013
  1124. data/ext/cargo-vendor/wast-63.0.0/src/component/wast.rs +0 -166
  1125. data/ext/cargo-vendor/wast-63.0.0/src/core/binary.rs +0 -1246
  1126. data/ext/cargo-vendor/wast-63.0.0/src/core/expr.rs +0 -1970
  1127. data/ext/cargo-vendor/wast-63.0.0/src/core/table.rs +0 -305
  1128. data/ext/cargo-vendor/wast-63.0.0/src/core/types.rs +0 -843
  1129. data/ext/cargo-vendor/wast-63.0.0/src/core/wast.rs +0 -236
  1130. data/ext/cargo-vendor/wast-63.0.0/src/lib.rs +0 -537
  1131. data/ext/cargo-vendor/wat-1.0.70/.cargo-checksum.json +0 -1
  1132. data/ext/cargo-vendor/wat-1.0.70/Cargo.toml +0 -27
  1133. data/ext/cargo-vendor/wiggle-12.0.1/.cargo-checksum.json +0 -1
  1134. data/ext/cargo-vendor/wiggle-12.0.1/Cargo.toml +0 -106
  1135. data/ext/cargo-vendor/wiggle-12.0.1/src/lib.rs +0 -1198
  1136. data/ext/cargo-vendor/wiggle-generate-12.0.1/.cargo-checksum.json +0 -1
  1137. data/ext/cargo-vendor/wiggle-generate-12.0.1/Cargo.toml +0 -58
  1138. data/ext/cargo-vendor/wiggle-generate-12.0.1/src/config.rs +0 -697
  1139. data/ext/cargo-vendor/wiggle-generate-12.0.1/src/types/record.rs +0 -117
  1140. data/ext/cargo-vendor/wiggle-generate-12.0.1/src/wasmtime.rs +0 -170
  1141. data/ext/cargo-vendor/wiggle-macro-12.0.1/.cargo-checksum.json +0 -1
  1142. data/ext/cargo-vendor/wiggle-macro-12.0.1/Cargo.toml +0 -55
  1143. data/ext/cargo-vendor/winapi-util-0.1.5/.cargo-checksum.json +0 -1
  1144. data/ext/cargo-vendor/winapi-util-0.1.5/COPYING +0 -3
  1145. data/ext/cargo-vendor/winapi-util-0.1.5/Cargo.toml +0 -30
  1146. data/ext/cargo-vendor/winapi-util-0.1.5/LICENSE-MIT +0 -21
  1147. data/ext/cargo-vendor/winapi-util-0.1.5/README.md +0 -58
  1148. data/ext/cargo-vendor/winapi-util-0.1.5/UNLICENSE +0 -24
  1149. data/ext/cargo-vendor/winapi-util-0.1.5/rustfmt.toml +0 -2
  1150. data/ext/cargo-vendor/winapi-util-0.1.5/src/console.rs +0 -402
  1151. data/ext/cargo-vendor/winapi-util-0.1.5/src/file.rs +0 -168
  1152. data/ext/cargo-vendor/winapi-util-0.1.5/src/lib.rs +0 -32
  1153. data/ext/cargo-vendor/winapi-util-0.1.5/src/win.rs +0 -246
  1154. data/ext/cargo-vendor/winch-codegen-0.10.1/.cargo-checksum.json +0 -1
  1155. data/ext/cargo-vendor/winch-codegen-0.10.1/Cargo.toml +0 -62
  1156. data/ext/cargo-vendor/winch-codegen-0.10.1/LICENSE +0 -219
  1157. data/ext/cargo-vendor/winch-codegen-0.10.1/src/abi/mod.rs +0 -251
  1158. data/ext/cargo-vendor/winch-codegen-0.10.1/src/codegen/call.rs +0 -199
  1159. data/ext/cargo-vendor/winch-codegen-0.10.1/src/codegen/context.rs +0 -368
  1160. data/ext/cargo-vendor/winch-codegen-0.10.1/src/codegen/control.rs +0 -437
  1161. data/ext/cargo-vendor/winch-codegen-0.10.1/src/codegen/mod.rs +0 -330
  1162. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/aarch64/abi.rs +0 -250
  1163. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/aarch64/address.rs +0 -144
  1164. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/aarch64/asm.rs +0 -312
  1165. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/aarch64/masm.rs +0 -293
  1166. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/aarch64/regs.rs +0 -166
  1167. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/reg.rs +0 -51
  1168. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/x64/abi.rs +0 -375
  1169. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/x64/address.rs +0 -17
  1170. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/x64/asm.rs +0 -855
  1171. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/x64/masm.rs +0 -516
  1172. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/x64/mod.rs +0 -149
  1173. data/ext/cargo-vendor/winch-codegen-0.10.1/src/isa/x64/regs.rs +0 -192
  1174. data/ext/cargo-vendor/winch-codegen-0.10.1/src/masm.rs +0 -352
  1175. data/ext/cargo-vendor/winch-codegen-0.10.1/src/regalloc.rs +0 -70
  1176. data/ext/cargo-vendor/winch-codegen-0.10.1/src/regset.rs +0 -90
  1177. data/ext/cargo-vendor/winch-codegen-0.10.1/src/stack.rs +0 -235
  1178. data/ext/cargo-vendor/winch-codegen-0.10.1/src/trampoline.rs +0 -494
  1179. data/ext/cargo-vendor/winch-codegen-0.10.1/src/visitor.rs +0 -656
  1180. data/ext/cargo-vendor/wit-parser-0.9.2/.cargo-checksum.json +0 -1
  1181. data/ext/cargo-vendor/wit-parser-0.9.2/Cargo.toml +0 -62
  1182. data/ext/cargo-vendor/wit-parser-0.9.2/src/abi.rs +0 -2199
  1183. data/ext/cargo-vendor/wit-parser-0.9.2/src/ast/lex.rs +0 -717
  1184. data/ext/cargo-vendor/wit-parser-0.9.2/src/ast/resolve.rs +0 -1437
  1185. data/ext/cargo-vendor/wit-parser-0.9.2/src/ast.rs +0 -1362
  1186. data/ext/cargo-vendor/wit-parser-0.9.2/src/lib.rs +0 -666
  1187. data/ext/cargo-vendor/wit-parser-0.9.2/src/live.rs +0 -116
  1188. data/ext/cargo-vendor/wit-parser-0.9.2/src/resolve.rs +0 -1749
  1189. data/ext/cargo-vendor/wit-parser-0.9.2/src/sizealign.rs +0 -145
  1190. data/ext/cargo-vendor/wit-parser-0.9.2/tests/all.rs +0 -168
  1191. data/ext/cargo-vendor/wit-parser-0.9.2/tests/ui/parse-fail/empty-union.wit +0 -6
  1192. data/ext/cargo-vendor/wit-parser-0.9.2/tests/ui/parse-fail/empty-union.wit.result +0 -5
  1193. data/ext/cargo-vendor/wit-parser-0.9.2/tests/ui/types.wit +0 -61
  1194. data/ext/cargo-vendor/wit-parser-0.9.2/tests/ui/world-diamond.wit +0 -22
  1195. /data/ext/cargo-vendor/{addr2line-0.20.0 → cap-net-ext-2.0.0}/LICENSE-APACHE +0 -0
  1196. /data/ext/cargo-vendor/{cranelift-bforest-0.99.1/LICENSE → cap-net-ext-2.0.0/LICENSE-Apache-2.0_WITH_LLVM-exception} +0 -0
  1197. /data/ext/cargo-vendor/{env_logger-0.10.0 → cap-net-ext-2.0.0}/LICENSE-MIT +0 -0
  1198. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-bforest-0.100.0}/LICENSE +0 -0
  1199. /data/ext/cargo-vendor/{cranelift-bforest-0.99.1 → cranelift-bforest-0.100.0}/README.md +0 -0
  1200. /data/ext/cargo-vendor/{cranelift-bforest-0.99.1 → cranelift-bforest-0.100.0}/src/node.rs +0 -0
  1201. /data/ext/cargo-vendor/{cranelift-bforest-0.99.1 → cranelift-bforest-0.100.0}/src/path.rs +0 -0
  1202. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-0.100.0}/LICENSE +0 -0
  1203. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/README.md +0 -0
  1204. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/benches/x64-evex-encoding.rs +0 -0
  1205. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/build.rs +0 -0
  1206. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/alias_analysis.rs +0 -0
  1207. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/cfg_printer.rs +0 -0
  1208. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/constant_hash.rs +0 -0
  1209. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/ctxhash.rs +0 -0
  1210. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/cursor.rs +0 -0
  1211. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/data_value.rs +0 -0
  1212. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/dbg.rs +0 -0
  1213. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/dce.rs +0 -0
  1214. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/dominator_tree.rs +0 -0
  1215. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/egraph/cost.rs +0 -0
  1216. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/egraph/domtree.rs +0 -0
  1217. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/egraph/elaborate.rs +0 -0
  1218. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/egraph.rs +0 -0
  1219. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/flowgraph.rs +0 -0
  1220. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/fx.rs +0 -0
  1221. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/inst_predicates.rs +0 -0
  1222. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/ir/builder.rs +0 -0
  1223. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/ir/layout.rs +0 -0
  1224. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/ir/progpoint.rs +0 -0
  1225. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/inst/imms.rs +0 -0
  1226. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/inst/regs.rs +0 -0
  1227. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/inst/unwind/systemv.rs +0 -0
  1228. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/inst/unwind.rs +0 -0
  1229. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/inst_neon.isle +0 -0
  1230. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/lower/isle/generated_code.rs +0 -0
  1231. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/mod.rs +0 -0
  1232. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/aarch64/settings.rs +0 -0
  1233. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/mod.rs +0 -0
  1234. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/inst/emit_tests.rs +0 -0
  1235. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/inst/regs.rs +0 -0
  1236. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/inst/unwind/systemv.rs +0 -0
  1237. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/inst/unwind.rs +0 -0
  1238. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/lower/isle/generated_code.rs +0 -0
  1239. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/lower.rs +0 -0
  1240. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/mod.rs +0 -0
  1241. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/riscv64/settings.rs +0 -0
  1242. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/inst/args.rs +0 -0
  1243. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/inst/emit.rs +0 -0
  1244. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/inst/emit_tests.rs +0 -0
  1245. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/inst/imms.rs +0 -0
  1246. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/inst/regs.rs +0 -0
  1247. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/inst/unwind/systemv.rs +0 -0
  1248. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/inst/unwind.rs +0 -0
  1249. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/lower/isle/generated_code.rs +0 -0
  1250. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/lower/isle.rs +0 -0
  1251. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/lower.rs +0 -0
  1252. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/mod.rs +0 -0
  1253. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/s390x/settings.rs +0 -0
  1254. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/encoding/mod.rs +0 -0
  1255. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/encoding/vex.rs +0 -0
  1256. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/inst/emit_state.rs +0 -0
  1257. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/inst/regs.rs +0 -0
  1258. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/inst/unwind/systemv.rs +0 -0
  1259. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/inst/unwind/winx64.rs +0 -0
  1260. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/inst/unwind.rs +0 -0
  1261. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/lower/isle/generated_code.rs +0 -0
  1262. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/mod.rs +0 -0
  1263. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/isa/x64/settings.rs +0 -0
  1264. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/iterators.rs +0 -0
  1265. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/legalizer/globalvalue.rs +0 -0
  1266. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/legalizer/table.rs +0 -0
  1267. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/loop_analysis.rs +0 -0
  1268. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/machinst/blockorder.rs +0 -0
  1269. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/machinst/compile.rs +0 -0
  1270. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/machinst/helpers.rs +0 -0
  1271. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/machinst/inst_common.rs +0 -0
  1272. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/machinst/lower.rs +0 -0
  1273. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/machinst/valueregs.rs +0 -0
  1274. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/nan_canonicalization.rs +0 -0
  1275. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/opts/README.md +0 -0
  1276. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/opts/arithmetic.isle +0 -0
  1277. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/opts/generated_code.rs +0 -0
  1278. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/opts/remat.isle +0 -0
  1279. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/opts/shifts.isle +0 -0
  1280. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/opts.rs +0 -0
  1281. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/prelude_opt.isle +0 -0
  1282. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/print_errors.rs +0 -0
  1283. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/remove_constant_phis.rs +0 -0
  1284. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/result.rs +0 -0
  1285. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/scoped_hash_map.rs +0 -0
  1286. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/settings.rs +0 -0
  1287. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/souper_harvest.rs +0 -0
  1288. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/timing.rs +0 -0
  1289. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/unionfind.rs +0 -0
  1290. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/unreachable_code.rs +0 -0
  1291. /data/ext/cargo-vendor/{cranelift-codegen-0.99.1 → cranelift-codegen-0.100.0}/src/write.rs +0 -0
  1292. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.99.1 → cranelift-codegen-meta-0.100.0}/LICENSE +0 -0
  1293. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/README.md +0 -0
  1294. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/formats.rs +0 -0
  1295. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/instructions.rs +0 -0
  1296. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/isa.rs +0 -0
  1297. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/mod.rs +0 -0
  1298. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/operands.rs +0 -0
  1299. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/settings.rs +0 -0
  1300. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/types.rs +0 -0
  1301. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/cdsl/typevar.rs +0 -0
  1302. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/error.rs +0 -0
  1303. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/gen_settings.rs +0 -0
  1304. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/gen_types.rs +0 -0
  1305. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/isa/arm64.rs +0 -0
  1306. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/isa/mod.rs +0 -0
  1307. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/isa/riscv64.rs +0 -0
  1308. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/isa/s390x.rs +0 -0
  1309. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/isa/x86.rs +0 -0
  1310. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/lib.rs +0 -0
  1311. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/shared/entities.rs +0 -0
  1312. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/shared/formats.rs +0 -0
  1313. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/shared/immediates.rs +0 -0
  1314. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/shared/mod.rs +0 -0
  1315. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/shared/settings.rs +0 -0
  1316. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/shared/types.rs +0 -0
  1317. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/srcgen.rs +0 -0
  1318. /data/ext/cargo-vendor/{cranelift-codegen-meta-0.99.1 → cranelift-codegen-meta-0.100.0}/src/unique_table.rs +0 -0
  1319. /data/ext/cargo-vendor/{cranelift-control-0.99.1 → cranelift-codegen-shared-0.100.0}/LICENSE +0 -0
  1320. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.99.1 → cranelift-codegen-shared-0.100.0}/README.md +0 -0
  1321. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.99.1 → cranelift-codegen-shared-0.100.0}/src/constant_hash.rs +0 -0
  1322. /data/ext/cargo-vendor/{cranelift-codegen-shared-0.99.1 → cranelift-codegen-shared-0.100.0}/src/constants.rs +0 -0
  1323. /data/ext/cargo-vendor/{cranelift-entity-0.99.1 → cranelift-control-0.100.0}/LICENSE +0 -0
  1324. /data/ext/cargo-vendor/{cranelift-control-0.99.1 → cranelift-control-0.100.0}/README.md +0 -0
  1325. /data/ext/cargo-vendor/{cranelift-control-0.99.1 → cranelift-control-0.100.0}/src/chaos.rs +0 -0
  1326. /data/ext/cargo-vendor/{cranelift-control-0.99.1 → cranelift-control-0.100.0}/src/lib.rs +0 -0
  1327. /data/ext/cargo-vendor/{cranelift-control-0.99.1 → cranelift-control-0.100.0}/src/zero_sized.rs +0 -0
  1328. /data/ext/cargo-vendor/{cranelift-frontend-0.99.1 → cranelift-entity-0.100.0}/LICENSE +0 -0
  1329. /data/ext/cargo-vendor/{cranelift-entity-0.99.1 → cranelift-entity-0.100.0}/README.md +0 -0
  1330. /data/ext/cargo-vendor/{cranelift-entity-0.99.1 → cranelift-entity-0.100.0}/src/boxed_slice.rs +0 -0
  1331. /data/ext/cargo-vendor/{cranelift-entity-0.99.1 → cranelift-entity-0.100.0}/src/iter.rs +0 -0
  1332. /data/ext/cargo-vendor/{cranelift-entity-0.99.1 → cranelift-entity-0.100.0}/src/keys.rs +0 -0
  1333. /data/ext/cargo-vendor/{cranelift-entity-0.99.1 → cranelift-entity-0.100.0}/src/map.rs +0 -0
  1334. /data/ext/cargo-vendor/{cranelift-entity-0.99.1 → cranelift-entity-0.100.0}/src/set.rs +0 -0
  1335. /data/ext/cargo-vendor/{cranelift-native-0.99.1 → cranelift-frontend-0.100.0}/LICENSE +0 -0
  1336. /data/ext/cargo-vendor/{cranelift-frontend-0.99.1 → cranelift-frontend-0.100.0}/README.md +0 -0
  1337. /data/ext/cargo-vendor/{cranelift-frontend-0.99.1 → cranelift-frontend-0.100.0}/src/frontend.rs +0 -0
  1338. /data/ext/cargo-vendor/{cranelift-frontend-0.99.1 → cranelift-frontend-0.100.0}/src/ssa.rs +0 -0
  1339. /data/ext/cargo-vendor/{cranelift-frontend-0.99.1 → cranelift-frontend-0.100.0}/src/switch.rs +0 -0
  1340. /data/ext/cargo-vendor/{cranelift-frontend-0.99.1 → cranelift-frontend-0.100.0}/src/variable.rs +0 -0
  1341. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/README.md +0 -0
  1342. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/build.rs +0 -0
  1343. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/bad_converters.isle +0 -0
  1344. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/bound_var_type_mismatch.isle +0 -0
  1345. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/converter_extractor_constructor.isle +0 -0
  1346. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/error1.isle +0 -0
  1347. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/extra_parens.isle +0 -0
  1348. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/impure_expression.isle +0 -0
  1349. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/impure_rhs.isle +0 -0
  1350. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/multi_internal_etor.isle +0 -0
  1351. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/fail/multi_prio.isle +0 -0
  1352. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/borrows.isle +0 -0
  1353. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/borrows_main.rs +0 -0
  1354. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/iflets.isle +0 -0
  1355. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/iflets_main.rs +0 -0
  1356. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/multi_constructor.isle +0 -0
  1357. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/multi_constructor_main.rs +0 -0
  1358. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/multi_extractor.isle +0 -0
  1359. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/multi_extractor_main.rs +0 -0
  1360. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/test.isle +0 -0
  1361. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/link/test_main.rs +0 -0
  1362. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/bound_var.isle +0 -0
  1363. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/construct_and_extract.isle +0 -0
  1364. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/conversions.isle +0 -0
  1365. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/conversions_extern.isle +0 -0
  1366. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/let.isle +0 -0
  1367. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/nodebug.isle +0 -0
  1368. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/prio_trie_bug.isle +0 -0
  1369. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/test2.isle +0 -0
  1370. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/test3.isle +0 -0
  1371. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/test4.isle +0 -0
  1372. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/pass/tutorial.isle +0 -0
  1373. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/run/iconst.isle +0 -0
  1374. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/run/iconst_main.rs +0 -0
  1375. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/run/let_shadowing.isle +0 -0
  1376. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/isle_examples/run/let_shadowing_main.rs +0 -0
  1377. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/ast.rs +0 -0
  1378. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/codegen.rs +0 -0
  1379. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/compile.rs +0 -0
  1380. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/error.rs +0 -0
  1381. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/lexer.rs +0 -0
  1382. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/lib.rs +0 -0
  1383. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/log.rs +0 -0
  1384. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/overlap.rs +0 -0
  1385. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/parser.rs +0 -0
  1386. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/sema.rs +0 -0
  1387. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/serialize.rs +0 -0
  1388. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/src/trie_again.rs +0 -0
  1389. /data/ext/cargo-vendor/{cranelift-isle-0.99.1 → cranelift-isle-0.100.0}/tests/run_tests.rs +0 -0
  1390. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-native-0.100.0}/LICENSE +0 -0
  1391. /data/ext/cargo-vendor/{cranelift-native-0.99.1 → cranelift-native-0.100.0}/README.md +0 -0
  1392. /data/ext/cargo-vendor/{cranelift-native-0.99.1 → cranelift-native-0.100.0}/src/riscv.rs +0 -0
  1393. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → cranelift-wasm-0.100.0}/LICENSE +0 -0
  1394. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/README.md +0 -0
  1395. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/src/code_translator/bounds_checks.rs +0 -0
  1396. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/src/environ/mod.rs +0 -0
  1397. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/src/module_translator.rs +0 -0
  1398. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/src/state.rs +0 -0
  1399. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/tests/wasm_testsuite.rs +0 -0
  1400. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/arith.wat +0 -0
  1401. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/br_table.wat +0 -0
  1402. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/call-simd.wat +0 -0
  1403. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/call.wat +0 -0
  1404. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/embenchen_fannkuch.wat +0 -0
  1405. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/embenchen_fasta.wat +0 -0
  1406. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/embenchen_ifs.wat +0 -0
  1407. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/embenchen_primes.wat +0 -0
  1408. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/fac-multi-value.wat +0 -0
  1409. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/fibonacci.wat +0 -0
  1410. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/globals.wat +0 -0
  1411. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/icall-simd.wat +0 -0
  1412. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/icall.wat +0 -0
  1413. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-reachability-translation-0.wat +0 -0
  1414. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-reachability-translation-1.wat +0 -0
  1415. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-reachability-translation-2.wat +0 -0
  1416. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-reachability-translation-3.wat +0 -0
  1417. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-reachability-translation-4.wat +0 -0
  1418. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-reachability-translation-5.wat +0 -0
  1419. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-reachability-translation-6.wat +0 -0
  1420. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-unreachable-else-params-2.wat +0 -0
  1421. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/if-unreachable-else-params.wat +0 -0
  1422. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/issue-1306-name-section-with-u32-max-function-index.wasm +0 -0
  1423. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/memory.wat +0 -0
  1424. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-0.wat +0 -0
  1425. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-1.wat +0 -0
  1426. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-10.wat +0 -0
  1427. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-11.wat +0 -0
  1428. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-12.wat +0 -0
  1429. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-13.wat +0 -0
  1430. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-14.wat +0 -0
  1431. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-15.wat +0 -0
  1432. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-16.wat +0 -0
  1433. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-17.wat +0 -0
  1434. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-2.wat +0 -0
  1435. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-3.wat +0 -0
  1436. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-4.wat +0 -0
  1437. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-5.wat +0 -0
  1438. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-6.wat +0 -0
  1439. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-7.wat +0 -0
  1440. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-8.wat +0 -0
  1441. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/multi-9.wat +0 -0
  1442. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/nullref.wat +0 -0
  1443. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/passive-data.wat +0 -0
  1444. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/pr2303.wat +0 -0
  1445. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/pr2559.wat +0 -0
  1446. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/ref-func-0.wat +0 -0
  1447. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/rust_fannkuch.wat +0 -0
  1448. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/select.wat +0 -0
  1449. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/simd-store.wat +0 -0
  1450. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/simd.wat +0 -0
  1451. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/table-copy.wat +0 -0
  1452. /data/ext/cargo-vendor/{cranelift-wasm-0.99.1 → cranelift-wasm-0.100.0}/wasmtests/unreachable_code.wat +0 -0
  1453. /data/ext/cargo-vendor/{fallible-iterator-0.2.0 → fallible-iterator-0.3.0}/LICENSE-APACHE +0 -0
  1454. /data/ext/cargo-vendor/{fallible-iterator-0.2.0 → fallible-iterator-0.3.0}/LICENSE-MIT +0 -0
  1455. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/LICENSE-APACHE +0 -0
  1456. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/LICENSE-MIT +0 -0
  1457. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/README.md +0 -0
  1458. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/crates-io.md +0 -0
  1459. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/de/format.rs +0 -0
  1460. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/de/seed.rs +0 -0
  1461. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/de/size_hint.rs +0 -0
  1462. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/private/de.rs +0 -0
  1463. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/private/doc.rs +0 -0
  1464. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/private/mod.rs +0 -0
  1465. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/private/ser.rs +0 -0
  1466. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/ser/impossible.rs +0 -0
  1467. /data/ext/cargo-vendor/{serde-1.0.185 → serde-1.0.188}/src/std_error.rs +0 -0
  1468. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/LICENSE-APACHE +0 -0
  1469. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/LICENSE-MIT +0 -0
  1470. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/README.md +0 -0
  1471. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/crates-io.md +0 -0
  1472. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/bound.rs +0 -0
  1473. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/de.rs +0 -0
  1474. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/dummy.rs +0 -0
  1475. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/fragment.rs +0 -0
  1476. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/ast.rs +0 -0
  1477. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/attr.rs +0 -0
  1478. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/case.rs +0 -0
  1479. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/check.rs +0 -0
  1480. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/ctxt.rs +0 -0
  1481. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/mod.rs +0 -0
  1482. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/receiver.rs +0 -0
  1483. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/respan.rs +0 -0
  1484. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/internals/symbol.rs +0 -0
  1485. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/pretend.rs +0 -0
  1486. /data/ext/cargo-vendor/{serde_derive-1.0.185 → serde_derive-1.0.188}/src/this.rs +0 -0
  1487. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-cap-std-sync-13.0.0}/LICENSE +0 -0
  1488. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/README.md +0 -0
  1489. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/clocks.rs +0 -0
  1490. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/dir.rs +0 -0
  1491. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/file.rs +0 -0
  1492. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/net.rs +0 -0
  1493. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/sched/unix.rs +0 -0
  1494. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/sched/windows.rs +0 -0
  1495. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/sched.rs +0 -0
  1496. /data/ext/cargo-vendor/{wasi-cap-std-sync-12.0.1 → wasi-cap-std-sync-13.0.0}/src/stdio.rs +0 -0
  1497. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasi-common-13.0.0}/LICENSE +0 -0
  1498. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/README.md +0 -0
  1499. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/README.md +0 -0
  1500. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/docs/README.md +0 -0
  1501. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/README.md +0 -0
  1502. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/docs.md +0 -0
  1503. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/typenames.witx +0 -0
  1504. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_args.witx +0 -0
  1505. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_clock.witx +0 -0
  1506. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_environ.witx +0 -0
  1507. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_fd.witx +0 -0
  1508. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_path.witx +0 -0
  1509. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_poll.witx +0 -0
  1510. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_proc.witx +0 -0
  1511. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_random.witx +0 -0
  1512. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_sched.witx +0 -0
  1513. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/ephemeral/witx/wasi_ephemeral_sock.witx +0 -0
  1514. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/old/snapshot_0/docs.md +0 -0
  1515. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/old/snapshot_0/witx/typenames.witx +0 -0
  1516. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/old/snapshot_0/witx/wasi_unstable.witx +0 -0
  1517. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/snapshot/docs.html +0 -0
  1518. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/snapshot/docs.md +0 -0
  1519. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/snapshot/witx/typenames.witx +0 -0
  1520. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/phases/snapshot/witx/wasi_snapshot_preview1.witx +0 -0
  1521. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/proposal-template/README.md +0 -0
  1522. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/proposals/README.md +0 -0
  1523. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/snapshots/README.md +0 -0
  1524. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/WASI/standard/README.md +0 -0
  1525. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/build.rs +0 -0
  1526. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/clocks.rs +0 -0
  1527. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/ctx.rs +0 -0
  1528. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/dir.rs +0 -0
  1529. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/error.rs +0 -0
  1530. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/file.rs +0 -0
  1531. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/lib.rs +0 -0
  1532. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/pipe.rs +0 -0
  1533. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/random.rs +0 -0
  1534. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/sched/subscription.rs +0 -0
  1535. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/sched.rs +0 -0
  1536. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/snapshots/mod.rs +0 -0
  1537. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/snapshots/preview_0.rs +0 -0
  1538. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/snapshots/preview_1/error.rs +0 -0
  1539. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/snapshots/preview_1.rs +0 -0
  1540. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/string_array.rs +0 -0
  1541. /data/ext/cargo-vendor/{wasi-common-12.0.1 → wasi-common-13.0.0}/src/table.rs +0 -0
  1542. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasm-encoder-0.32.0}/LICENSE +0 -0
  1543. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/README.md +0 -0
  1544. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/aliases.rs +0 -0
  1545. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/builder.rs +0 -0
  1546. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/canonicals.rs +0 -0
  1547. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/components.rs +0 -0
  1548. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/exports.rs +0 -0
  1549. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/imports.rs +0 -0
  1550. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/instances.rs +0 -0
  1551. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/modules.rs +0 -0
  1552. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/names.rs +0 -0
  1553. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component/start.rs +0 -0
  1554. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/component.rs +0 -0
  1555. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/code.rs +0 -0
  1556. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/custom.rs +0 -0
  1557. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/data.rs +0 -0
  1558. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/dump.rs +0 -0
  1559. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/elements.rs +0 -0
  1560. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/exports.rs +0 -0
  1561. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/functions.rs +0 -0
  1562. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/globals.rs +0 -0
  1563. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/imports.rs +0 -0
  1564. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/linking.rs +0 -0
  1565. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/memories.rs +0 -0
  1566. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/names.rs +0 -0
  1567. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/producers.rs +0 -0
  1568. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/start.rs +0 -0
  1569. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/tables.rs +0 -0
  1570. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/tags.rs +0 -0
  1571. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core/types.rs +0 -0
  1572. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/core.rs +0 -0
  1573. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/lib.rs +0 -0
  1574. /data/ext/cargo-vendor/{wasm-encoder-0.31.1 → wasm-encoder-0.32.0}/src/raw.rs +0 -0
  1575. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasm-encoder-0.33.1}/LICENSE +0 -0
  1576. /data/ext/cargo-vendor/{wasmprinter-0.2.63 → wasmparser-0.112.0}/LICENSE +0 -0
  1577. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/README.md +0 -0
  1578. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/benches/benchmark.rs +0 -0
  1579. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/examples/simple.rs +0 -0
  1580. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/binary_reader.rs +0 -0
  1581. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/lib.rs +0 -0
  1582. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/parser.rs +0 -0
  1583. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component/aliases.rs +0 -0
  1584. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component/canonicals.rs +0 -0
  1585. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component/exports.rs +0 -0
  1586. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component/imports.rs +0 -0
  1587. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component/instances.rs +0 -0
  1588. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component/names.rs +0 -0
  1589. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component/start.rs +0 -0
  1590. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/component.rs +0 -0
  1591. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/code.rs +0 -0
  1592. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/coredumps.rs +0 -0
  1593. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/custom.rs +0 -0
  1594. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/data.rs +0 -0
  1595. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.112.0}/src/readers/core/dylink0.rs +0 -0
  1596. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/elements.rs +0 -0
  1597. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/exports.rs +0 -0
  1598. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/functions.rs +0 -0
  1599. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/globals.rs +0 -0
  1600. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/imports.rs +0 -0
  1601. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/init.rs +0 -0
  1602. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/memories.rs +0 -0
  1603. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/names.rs +0 -0
  1604. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/operators.rs +0 -0
  1605. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/producers.rs +0 -0
  1606. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/tables.rs +0 -0
  1607. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers/core/tags.rs +0 -0
  1608. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.112.0}/src/readers/core.rs +0 -0
  1609. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/readers.rs +0 -0
  1610. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/resources.rs +0 -0
  1611. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/validator/func.rs +0 -0
  1612. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/validator/names.rs +0 -0
  1613. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/src/validator/operators.rs +0 -0
  1614. /data/ext/cargo-vendor/{wasmparser-0.110.0 → wasmparser-0.112.0}/tests/big-module.rs +0 -0
  1615. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmparser-0.113.1}/LICENSE +0 -0
  1616. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/README.md +0 -0
  1617. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/benches/benchmark.rs +0 -0
  1618. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/examples/simple.rs +0 -0
  1619. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/parser.rs +0 -0
  1620. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component/aliases.rs +0 -0
  1621. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component/canonicals.rs +0 -0
  1622. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component/exports.rs +0 -0
  1623. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component/imports.rs +0 -0
  1624. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component/instances.rs +0 -0
  1625. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component/names.rs +0 -0
  1626. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component/start.rs +0 -0
  1627. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/component.rs +0 -0
  1628. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/code.rs +0 -0
  1629. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/coredumps.rs +0 -0
  1630. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/custom.rs +0 -0
  1631. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/data.rs +0 -0
  1632. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/elements.rs +0 -0
  1633. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/exports.rs +0 -0
  1634. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/functions.rs +0 -0
  1635. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/globals.rs +0 -0
  1636. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/imports.rs +0 -0
  1637. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/init.rs +0 -0
  1638. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/memories.rs +0 -0
  1639. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/names.rs +0 -0
  1640. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/operators.rs +0 -0
  1641. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/producers.rs +0 -0
  1642. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/tables.rs +0 -0
  1643. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers/core/tags.rs +0 -0
  1644. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/readers.rs +0 -0
  1645. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/resources.rs +0 -0
  1646. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/validator/func.rs +0 -0
  1647. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/src/validator/names.rs +0 -0
  1648. /data/ext/cargo-vendor/{wasmparser-0.111.0 → wasmparser-0.113.1}/tests/big-module.rs +0 -0
  1649. /data/ext/cargo-vendor/{wasmtime-cache-12.0.1 → wasmprinter-0.2.66}/LICENSE +0 -0
  1650. /data/ext/cargo-vendor/{wasmprinter-0.2.63 → wasmprinter-0.2.66}/README.md +0 -0
  1651. /data/ext/cargo-vendor/{wasmprinter-0.2.63 → wasmprinter-0.2.66}/tests/all.rs +0 -0
  1652. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-13.0.0}/LICENSE +0 -0
  1653. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/README.md +0 -0
  1654. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/code.rs +0 -0
  1655. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/compiler.rs +0 -0
  1656. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/component/func/host.rs +0 -0
  1657. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/component/func/options.rs +0 -0
  1658. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/component/func.rs +0 -0
  1659. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/component/matching.rs +0 -0
  1660. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/component/resources.rs +0 -0
  1661. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/component/storage.rs +0 -0
  1662. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/component/store.rs +0 -0
  1663. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/coredump.rs +0 -0
  1664. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/externals.rs +0 -0
  1665. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/func/typed.rs +0 -0
  1666. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/func.rs +0 -0
  1667. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/lib.rs +0 -0
  1668. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/linker.rs +0 -0
  1669. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/memory.rs +0 -0
  1670. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/module/registry.rs +0 -0
  1671. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/profiling.rs +0 -0
  1672. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/ref.rs +0 -0
  1673. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/resources.rs +0 -0
  1674. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/signatures.rs +0 -0
  1675. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/store/context.rs +0 -0
  1676. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/store/data.rs +0 -0
  1677. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/store/func_refs.rs +0 -0
  1678. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/trampoline/func.rs +0 -0
  1679. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/trampoline/global.rs +0 -0
  1680. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/trampoline/table.rs +0 -0
  1681. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/trap.rs +0 -0
  1682. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/types/matching.rs +0 -0
  1683. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/types.rs +0 -0
  1684. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/unix.rs +0 -0
  1685. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/values.rs +0 -0
  1686. /data/ext/cargo-vendor/{wasmtime-12.0.1 → wasmtime-13.0.0}/src/windows.rs +0 -0
  1687. /data/ext/cargo-vendor/{wasmtime-asm-macros-12.0.1 → wasmtime-asm-macros-13.0.0}/src/lib.rs +0 -0
  1688. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-cache-13.0.0}/LICENSE +0 -0
  1689. /data/ext/cargo-vendor/{wasmtime-cache-12.0.1 → wasmtime-cache-13.0.0}/build.rs +0 -0
  1690. /data/ext/cargo-vendor/{wasmtime-cache-12.0.1 → wasmtime-cache-13.0.0}/src/config/tests.rs +0 -0
  1691. /data/ext/cargo-vendor/{wasmtime-cache-12.0.1 → wasmtime-cache-13.0.0}/src/lib.rs +0 -0
  1692. /data/ext/cargo-vendor/{wasmtime-cache-12.0.1 → wasmtime-cache-13.0.0}/src/tests.rs +0 -0
  1693. /data/ext/cargo-vendor/{wasmtime-cache-12.0.1 → wasmtime-cache-13.0.0}/src/worker/tests/system_time_stub.rs +0 -0
  1694. /data/ext/cargo-vendor/{wasmtime-cache-12.0.1 → wasmtime-cache-13.0.0}/tests/cache_write_default_config.rs +0 -0
  1695. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/src/lib.rs +0 -0
  1696. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/char.wit +0 -0
  1697. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/conventions.wit +0 -0
  1698. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/direct-import.wit +0 -0
  1699. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/empty.wit +0 -0
  1700. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/flags.wit +0 -0
  1701. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/floats.wit +0 -0
  1702. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/function-new.wit +0 -0
  1703. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/integers.wit +0 -0
  1704. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/lists.wit +0 -0
  1705. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/many-arguments.wit +0 -0
  1706. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/multi-return.wit +0 -0
  1707. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/records.wit +0 -0
  1708. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/rename.wit +0 -0
  1709. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/share-types.wit +0 -0
  1710. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/simple-functions.wit +0 -0
  1711. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/simple-lists.wit +0 -0
  1712. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/simple-wasi.wit +0 -0
  1713. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/small-anonymous.wit +0 -0
  1714. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/smoke-default.wit +0 -0
  1715. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/smoke-export.wit +0 -0
  1716. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/smoke.wit +0 -0
  1717. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/strings.wit +0 -0
  1718. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/use-paths.wit +0 -0
  1719. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen/worlds-with-types.wit +0 -0
  1720. /data/ext/cargo-vendor/{wasmtime-component-macro-12.0.1 → wasmtime-component-macro-13.0.0}/tests/codegen.rs +0 -0
  1721. /data/ext/cargo-vendor/{wasmtime-component-util-12.0.1 → wasmtime-component-util-13.0.0}/src/lib.rs +0 -0
  1722. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-cranelift-13.0.0}/LICENSE +0 -0
  1723. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/SECURITY.md +0 -0
  1724. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/compiler/component.rs +0 -0
  1725. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/gc.rs +0 -0
  1726. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/address_transform.rs +0 -0
  1727. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/expression.rs +0 -0
  1728. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/line_program.rs +0 -0
  1729. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/mod.rs +0 -0
  1730. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/range_info_builder.rs +0 -0
  1731. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/refs.rs +0 -0
  1732. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/simulate.rs +0 -0
  1733. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/unit.rs +0 -0
  1734. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/transform/utils.rs +0 -0
  1735. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/debug/write_debuginfo.rs +0 -0
  1736. /data/ext/cargo-vendor/{wasmtime-cranelift-12.0.1 → wasmtime-cranelift-13.0.0}/src/lib.rs +0 -0
  1737. /data/ext/cargo-vendor/{wasmtime-cranelift-shared-12.0.1 → wasmtime-cranelift-shared-13.0.0}/src/compiled_function.rs +0 -0
  1738. /data/ext/cargo-vendor/{wasmtime-cranelift-shared-12.0.1 → wasmtime-cranelift-shared-13.0.0}/src/isa_builder.rs +0 -0
  1739. /data/ext/cargo-vendor/{wasmtime-cranelift-shared-12.0.1 → wasmtime-cranelift-shared-13.0.0}/src/lib.rs +0 -0
  1740. /data/ext/cargo-vendor/{wasmtime-cranelift-shared-12.0.1 → wasmtime-cranelift-shared-13.0.0}/src/obj.rs +0 -0
  1741. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-environ-13.0.0}/LICENSE +0 -0
  1742. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/examples/factc.rs +0 -0
  1743. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/component/dfg.rs +0 -0
  1744. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/component/translate/adapt.rs +0 -0
  1745. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/component/translate/inline.rs +0 -0
  1746. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/component/translate.rs +0 -0
  1747. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/component/types/resources.rs +0 -0
  1748. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/component/vmcomponent_offsets.rs +0 -0
  1749. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/component.rs +0 -0
  1750. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/fact/core_types.rs +0 -0
  1751. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/fact/signature.rs +0 -0
  1752. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/fact/traps.rs +0 -0
  1753. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/fact.rs +0 -0
  1754. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/obj.rs +0 -0
  1755. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/ref_bits.rs +0 -0
  1756. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/scopevec.rs +0 -0
  1757. /data/ext/cargo-vendor/{wasmtime-environ-12.0.1 → wasmtime-environ-13.0.0}/src/trap_encoding.rs +0 -0
  1758. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-fiber-13.0.0}/LICENSE +0 -0
  1759. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/build.rs +0 -0
  1760. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/lib.rs +0 -0
  1761. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/unix/aarch64.rs +0 -0
  1762. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/unix/arm.rs +0 -0
  1763. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/unix/riscv64.rs +0 -0
  1764. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/unix/s390x.S +0 -0
  1765. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/unix/x86.rs +0 -0
  1766. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/unix/x86_64.rs +0 -0
  1767. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/unix.rs +0 -0
  1768. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/windows.c +0 -0
  1769. /data/ext/cargo-vendor/{wasmtime-fiber-12.0.1 → wasmtime-fiber-13.0.0}/src/windows.rs +0 -0
  1770. /data/ext/cargo-vendor/{wasmtime-types-12.0.1 → wasmtime-jit-13.0.0}/LICENSE +0 -0
  1771. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/code_memory.rs +0 -0
  1772. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/debug.rs +0 -0
  1773. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/demangling.rs +0 -0
  1774. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/profiling/jitdump.rs +0 -0
  1775. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/profiling/perfmap.rs +0 -0
  1776. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/profiling/vtune.rs +0 -0
  1777. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/profiling.rs +0 -0
  1778. /data/ext/cargo-vendor/{wasmtime-jit-12.0.1 → wasmtime-jit-13.0.0}/src/unwind.rs +0 -0
  1779. /data/ext/cargo-vendor/{wasmtime-jit-debug-12.0.1 → wasmtime-jit-debug-13.0.0}/README.md +0 -0
  1780. /data/ext/cargo-vendor/{wasmtime-jit-debug-12.0.1 → wasmtime-jit-debug-13.0.0}/src/gdb_jit_int.rs +0 -0
  1781. /data/ext/cargo-vendor/{wasmtime-jit-debug-12.0.1 → wasmtime-jit-debug-13.0.0}/src/lib.rs +0 -0
  1782. /data/ext/cargo-vendor/{wasmtime-jit-debug-12.0.1 → wasmtime-jit-debug-13.0.0}/src/perf_jitdump.rs +0 -0
  1783. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-12.0.1 → wasmtime-jit-icache-coherence-13.0.0}/src/lib.rs +0 -0
  1784. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-12.0.1 → wasmtime-jit-icache-coherence-13.0.0}/src/libc.rs +0 -0
  1785. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-12.0.1 → wasmtime-jit-icache-coherence-13.0.0}/src/miri.rs +0 -0
  1786. /data/ext/cargo-vendor/{wasmtime-jit-icache-coherence-12.0.1 → wasmtime-jit-icache-coherence-13.0.0}/src/win.rs +0 -0
  1787. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-runtime-13.0.0}/LICENSE +0 -0
  1788. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/build.rs +0 -0
  1789. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/component/libcalls.rs +0 -0
  1790. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/component/resources.rs +0 -0
  1791. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/component.rs +0 -0
  1792. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/cow.rs +0 -0
  1793. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/debug_builtins.rs +0 -0
  1794. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/export.rs +0 -0
  1795. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/externref.rs +0 -0
  1796. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/helpers.c +0 -0
  1797. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/imports.rs +0 -0
  1798. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/instance/allocator/pooling/unix.rs +0 -0
  1799. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/instance/allocator/pooling/windows.rs +0 -0
  1800. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/mmap/miri.rs +0 -0
  1801. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/mmap/unix.rs +0 -0
  1802. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/mmap/windows.rs +0 -0
  1803. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/mmap.rs +0 -0
  1804. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/mmap_vec.rs +0 -0
  1805. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/module_id.rs +0 -0
  1806. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/send_sync_ptr.rs +0 -0
  1807. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/store_box.rs +0 -0
  1808. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/trampolines/aarch64.rs +0 -0
  1809. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/trampolines/riscv64.rs +0 -0
  1810. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/trampolines/s390x.rs +0 -0
  1811. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/trampolines/x86_64.rs +0 -0
  1812. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/trampolines.rs +0 -0
  1813. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/backtrace/aarch64.rs +0 -0
  1814. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/backtrace/riscv64.rs +0 -0
  1815. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/backtrace/s390x.rs +0 -0
  1816. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/backtrace/x86_64.rs +0 -0
  1817. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/backtrace.rs +0 -0
  1818. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/coredump.rs +0 -0
  1819. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/unix.rs +0 -0
  1820. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/traphandlers/windows.rs +0 -0
  1821. /data/ext/cargo-vendor/{wasmtime-runtime-12.0.1 → wasmtime-runtime-13.0.0}/src/vmcontext/vm_host_func_context.rs +0 -0
  1822. /data/ext/cargo-vendor/{wast-63.0.0 → wasmtime-types-13.0.0}/LICENSE +0 -0
  1823. /data/ext/cargo-vendor/{wasmtime-types-12.0.1 → wasmtime-types-13.0.0}/src/error.rs +0 -0
  1824. /data/ext/cargo-vendor/{wasmtime-versioned-export-macros-12.0.1 → wasmtime-versioned-export-macros-13.0.0}/src/lib.rs +0 -0
  1825. /data/ext/cargo-vendor/{wat-1.0.70 → wasmtime-wasi-13.0.0}/LICENSE +0 -0
  1826. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/README.md +0 -0
  1827. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/build.rs +0 -0
  1828. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/src/preview2/clocks/host.rs +0 -0
  1829. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/src/preview2/clocks.rs +0 -0
  1830. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/src/preview2/error.rs +0 -0
  1831. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1/src/preview2/preview2 → wasmtime-wasi-13.0.0/src/preview2/host}/random.rs +0 -0
  1832. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/src/preview2/poll.rs +0 -0
  1833. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/src/preview2/random.rs +0 -0
  1834. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1/wit/deps/wasi-cli-base → wasmtime-wasi-13.0.0/wit/deps/cli}/stdio.wit +0 -0
  1835. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/clocks/monotonic-clock.wit +0 -0
  1836. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/clocks/timezone.wit +0 -0
  1837. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/clocks/wall-clock.wit +0 -0
  1838. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/http/incoming-handler.wit +0 -0
  1839. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/http/outgoing-handler.wit +0 -0
  1840. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/poll/poll.wit +0 -0
  1841. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/random/insecure-seed.wit +0 -0
  1842. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/random/insecure.wit +0 -0
  1843. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/random/random.wit +0 -0
  1844. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/wit/deps/sockets/instance-network.wit +0 -0
  1845. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/witx/typenames.witx +0 -0
  1846. /data/ext/cargo-vendor/{wasmtime-wasi-12.0.1 → wasmtime-wasi-13.0.0}/witx/wasi_snapshot_preview1.witx +0 -0
  1847. /data/ext/cargo-vendor/{file-per-thread-logger-0.2.0 → wasmtime-winch-13.0.0}/LICENSE +0 -0
  1848. /data/ext/cargo-vendor/{wasmtime-winch-12.0.1 → wasmtime-winch-13.0.0}/src/builder.rs +0 -0
  1849. /data/ext/cargo-vendor/{wasmtime-winch-12.0.1 → wasmtime-winch-13.0.0}/src/compiler.rs +0 -0
  1850. /data/ext/cargo-vendor/{wasmtime-winch-12.0.1 → wasmtime-winch-13.0.0}/src/lib.rs +0 -0
  1851. /data/ext/cargo-vendor/{wasmtime-wit-bindgen-12.0.1 → wasmtime-wit-bindgen-13.0.0}/src/source.rs +0 -0
  1852. /data/ext/cargo-vendor/{wiggle-12.0.1 → wast-65.0.1}/LICENSE +0 -0
  1853. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/README.md +0 -0
  1854. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/alias.rs +0 -0
  1855. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/component.rs +0 -0
  1856. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/custom.rs +0 -0
  1857. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/export.rs +0 -0
  1858. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/func.rs +0 -0
  1859. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/import.rs +0 -0
  1860. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/instance.rs +0 -0
  1861. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/item_ref.rs +0 -0
  1862. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component/module.rs +0 -0
  1863. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/component.rs +0 -0
  1864. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/custom.rs +0 -0
  1865. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/export.rs +0 -0
  1866. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/func.rs +0 -0
  1867. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/global.rs +0 -0
  1868. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/import.rs +0 -0
  1869. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/memory.rs +0 -0
  1870. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/module.rs +0 -0
  1871. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/resolve/deinline_import_export.rs +0 -0
  1872. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/resolve/mod.rs +0 -0
  1873. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/resolve/names.rs +0 -0
  1874. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/resolve/types.rs +0 -0
  1875. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core/tag.rs +0 -0
  1876. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/core.rs +0 -0
  1877. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/encode.rs +0 -0
  1878. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/error.rs +0 -0
  1879. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/gensym.rs +0 -0
  1880. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/lexer.rs +0 -0
  1881. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/names.rs +0 -0
  1882. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/parser.rs +0 -0
  1883. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/token.rs +0 -0
  1884. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/wast.rs +0 -0
  1885. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/src/wat.rs +0 -0
  1886. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/annotations.rs +0 -0
  1887. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/comments.rs +0 -0
  1888. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-core-func-alias.wat +0 -0
  1889. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-core-func-alias.wat.err +0 -0
  1890. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-func-alias.wat +0 -0
  1891. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-func-alias.wat.err +0 -0
  1892. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-index.wat +0 -0
  1893. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-index.wat.err +0 -0
  1894. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-name.wat +0 -0
  1895. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-name.wat.err +0 -0
  1896. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-name2.wat +0 -0
  1897. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-name2.wat.err +0 -0
  1898. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-name3.wat +0 -0
  1899. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/bad-name3.wat.err +0 -0
  1900. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/block1.wat +0 -0
  1901. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/block1.wat.err +0 -0
  1902. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/block2.wat +0 -0
  1903. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/block2.wat.err +0 -0
  1904. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/block3.wat +0 -0
  1905. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/block3.wat.err +0 -0
  1906. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment0.wat +0 -0
  1907. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment0.wat.err +0 -0
  1908. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment1.wat +0 -0
  1909. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment1.wat.err +0 -0
  1910. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment2.wat +0 -0
  1911. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment2.wat.err +0 -0
  1912. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment3.wat +0 -0
  1913. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment3.wat.err +0 -0
  1914. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment4.wat +0 -0
  1915. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment4.wat.err +0 -0
  1916. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment5.wat +0 -0
  1917. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment5.wat.err +0 -0
  1918. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment6.wat +0 -0
  1919. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment6.wat.err +0 -0
  1920. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment7.wat +0 -0
  1921. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment7.wat.err +0 -0
  1922. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment8.wat +0 -0
  1923. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-block-comment8.wat.err +0 -0
  1924. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment0.wat +0 -0
  1925. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment0.wat.err +0 -0
  1926. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment1.wat +0 -0
  1927. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment1.wat.err +0 -0
  1928. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment2.wat +0 -0
  1929. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment2.wat.err +0 -0
  1930. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment3.wat +0 -0
  1931. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment3.wat.err +0 -0
  1932. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment4.wat +0 -0
  1933. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment4.wat.err +0 -0
  1934. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment5.wat +0 -0
  1935. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment5.wat.err +0 -0
  1936. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment6.wat +0 -0
  1937. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment6.wat.err +0 -0
  1938. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment7.wat +0 -0
  1939. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment7.wat.err +0 -0
  1940. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment8.wat +0 -0
  1941. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-line-comment8.wat.err +0 -0
  1942. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string0.wat +0 -0
  1943. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string0.wat.err +0 -0
  1944. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string1.wat +0 -0
  1945. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string1.wat.err +0 -0
  1946. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string2.wat +0 -0
  1947. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string2.wat.err +0 -0
  1948. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string3.wat +0 -0
  1949. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string3.wat.err +0 -0
  1950. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string4.wat +0 -0
  1951. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string4.wat.err +0 -0
  1952. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string5.wat +0 -0
  1953. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string5.wat.err +0 -0
  1954. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string6.wat +0 -0
  1955. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string6.wat.err +0 -0
  1956. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string7.wat +0 -0
  1957. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string7.wat.err +0 -0
  1958. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string8.wat +0 -0
  1959. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/confusing-string8.wat.err +0 -0
  1960. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/inline1.wat +0 -0
  1961. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/inline1.wat.err +0 -0
  1962. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/newline-in-string.wat +0 -0
  1963. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/newline-in-string.wat.err +0 -0
  1964. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string1.wat +0 -0
  1965. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string1.wat.err +0 -0
  1966. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string10.wat +0 -0
  1967. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string10.wat.err +0 -0
  1968. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string11.wat +0 -0
  1969. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string11.wat.err +0 -0
  1970. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string12.wat +0 -0
  1971. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string12.wat.err +0 -0
  1972. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string13.wat +0 -0
  1973. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string13.wat.err +0 -0
  1974. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string14.wat +0 -0
  1975. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string14.wat.err +0 -0
  1976. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string15.wat +0 -0
  1977. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string15.wat.err +0 -0
  1978. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string16.wat +0 -0
  1979. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string16.wat.err +0 -0
  1980. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string2.wat +0 -0
  1981. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string2.wat.err +0 -0
  1982. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string3.wat +0 -0
  1983. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string3.wat.err +0 -0
  1984. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string4.wat +0 -0
  1985. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string4.wat.err +0 -0
  1986. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string5.wat +0 -0
  1987. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string5.wat.err +0 -0
  1988. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string6.wat +0 -0
  1989. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string6.wat.err +0 -0
  1990. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string7.wat +0 -0
  1991. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string7.wat.err +0 -0
  1992. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string8.wat +0 -0
  1993. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string8.wat.err +0 -0
  1994. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string9.wat +0 -0
  1995. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/string9.wat.err +0 -0
  1996. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/unbalanced.wat +0 -0
  1997. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail/unbalanced.wat.err +0 -0
  1998. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/parse-fail.rs +0 -0
  1999. /data/ext/cargo-vendor/{wast-63.0.0 → wast-65.0.1}/tests/recursive.rs +0 -0
  2000. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wat-1.0.73}/LICENSE +0 -0
  2001. /data/ext/cargo-vendor/{wat-1.0.70 → wat-1.0.73}/README.md +0 -0
  2002. /data/ext/cargo-vendor/{wat-1.0.70 → wat-1.0.73}/src/lib.rs +0 -0
  2003. /data/ext/cargo-vendor/{wiggle-macro-12.0.1 → wiggle-13.0.0}/LICENSE +0 -0
  2004. /data/ext/cargo-vendor/{wiggle-12.0.1 → wiggle-13.0.0}/README.md +0 -0
  2005. /data/ext/cargo-vendor/{wiggle-12.0.1 → wiggle-13.0.0}/src/borrow.rs +0 -0
  2006. /data/ext/cargo-vendor/{wiggle-12.0.1 → wiggle-13.0.0}/src/error.rs +0 -0
  2007. /data/ext/cargo-vendor/{wiggle-12.0.1 → wiggle-13.0.0}/src/guest_type.rs +0 -0
  2008. /data/ext/cargo-vendor/{wiggle-12.0.1 → wiggle-13.0.0}/src/region.rs +0 -0
  2009. /data/ext/cargo-vendor/{wiggle-12.0.1 → wiggle-13.0.0}/src/wasmtime.rs +0 -0
  2010. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/README.md +0 -0
  2011. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/codegen_settings.rs +0 -0
  2012. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/funcs.rs +0 -0
  2013. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/lib.rs +0 -0
  2014. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/lifetimes.rs +0 -0
  2015. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/module_trait.rs +0 -0
  2016. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/names.rs +0 -0
  2017. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/types/error.rs +0 -0
  2018. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/types/flags.rs +0 -0
  2019. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/types/handle.rs +0 -0
  2020. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/types/mod.rs +0 -0
  2021. /data/ext/cargo-vendor/{wiggle-generate-12.0.1 → wiggle-generate-13.0.0}/src/types/variant.rs +0 -0
  2022. /data/ext/cargo-vendor/{wiggle-macro-12.0.1 → wiggle-macro-13.0.0}/src/lib.rs +0 -0
  2023. /data/ext/cargo-vendor/{wasmtime-winch-12.0.1 → winch-codegen-0.11.0}/LICENSE +0 -0
  2024. /data/ext/cargo-vendor/{winch-codegen-0.10.1 → winch-codegen-0.11.0}/build.rs +0 -0
  2025. /data/ext/cargo-vendor/{winch-codegen-0.10.1 → winch-codegen-0.11.0}/src/abi/local.rs +0 -0
  2026. /data/ext/cargo-vendor/{winch-codegen-0.10.1 → winch-codegen-0.11.0}/src/codegen/env.rs +0 -0
  2027. /data/ext/cargo-vendor/{winch-codegen-0.10.1 → winch-codegen-0.11.0}/src/frame/mod.rs +0 -0
  2028. /data/ext/cargo-vendor/{winch-codegen-0.10.1 → winch-codegen-0.11.0}/src/isa/aarch64/mod.rs +0 -0
  2029. /data/ext/cargo-vendor/{winch-codegen-0.10.1 → winch-codegen-0.11.0}/src/isa/mod.rs +0 -0
  2030. /data/ext/cargo-vendor/{winch-codegen-0.10.1 → winch-codegen-0.11.0}/src/lib.rs +0 -0
  2031. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/README.md +0 -0
  2032. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/src/ast/toposort.rs +0 -0
  2033. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/comments.wit +0 -0
  2034. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/complex-include/deps/bar/root.wit +0 -0
  2035. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/complex-include/deps/baz/root.wit +0 -0
  2036. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/complex-include/root.wit +0 -0
  2037. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/cross-package-resource/deps/foo/foo.wit +0 -0
  2038. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/cross-package-resource/foo.wit +0 -0
  2039. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/diamond1/deps/dep1/types.wit +0 -0
  2040. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/diamond1/deps/dep2/types.wit +0 -0
  2041. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/diamond1/join.wit +0 -0
  2042. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/disambiguate-diamond/shared1.wit +0 -0
  2043. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/disambiguate-diamond/shared2.wit +0 -0
  2044. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/disambiguate-diamond/world.wit +0 -0
  2045. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/embedded.wit.md +0 -0
  2046. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/empty.wit +0 -0
  2047. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/deps/another-pkg/other-doc.wit +0 -0
  2048. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/deps/corp/saas.wit +0 -0
  2049. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/deps/different-pkg/the-doc.wit +0 -0
  2050. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/deps/foreign-pkg/the-doc.wit +0 -0
  2051. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/deps/some-pkg/some-doc.wit +0 -0
  2052. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/deps/wasi/clocks.wit +0 -0
  2053. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/deps/wasi/filesystem.wit +0 -0
  2054. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps/root.wit +0 -0
  2055. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/another-pkg/other-doc.wit +0 -0
  2056. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/corp/saas.wit +0 -0
  2057. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/different-pkg/the-doc.wit +0 -0
  2058. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/foreign-pkg/the-doc.wit +0 -0
  2059. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/some-pkg/some-doc.wit +0 -0
  2060. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/wasi/clocks.wit +0 -0
  2061. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/wasi/filesystem.wit +0 -0
  2062. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/deps/wasi/wasi.wit +0 -0
  2063. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/foreign-deps-union/root.wit +0 -0
  2064. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/functions.wit +0 -0
  2065. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/ignore-files-deps/deps/bar/types.wit +0 -0
  2066. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/ignore-files-deps/deps/ignore-me.txt +0 -0
  2067. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/ignore-files-deps/world.wit +0 -0
  2068. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/include-reps.wit +0 -0
  2069. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/kebab-name-include-with.wit +0 -0
  2070. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/many-names/a.wit +0 -0
  2071. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/many-names/b.wit +0 -0
  2072. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/multi-file/bar.wit +0 -0
  2073. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/multi-file/cycle-a.wit +0 -0
  2074. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/multi-file/cycle-b.wit +0 -0
  2075. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/multi-file/foo.wit +0 -0
  2076. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/name-both-resource-and-type/deps/dep/foo.wit +0 -0
  2077. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/name-both-resource-and-type/foo.wit +0 -0
  2078. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/package-syntax1.wit +0 -0
  2079. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/package-syntax3.wit +0 -0
  2080. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/package-syntax4.wit +0 -0
  2081. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/alias-no-type.wit +0 -0
  2082. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/alias-no-type.wit.result +0 -0
  2083. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/async.wit.result +0 -0
  2084. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/async1.wit.result +0 -0
  2085. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-function.wit +0 -0
  2086. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-function.wit.result +0 -0
  2087. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-function2.wit +0 -0
  2088. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-function2.wit.result +0 -0
  2089. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-include1.wit +0 -0
  2090. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-include1.wit.result +0 -0
  2091. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-include2.wit +0 -0
  2092. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-include2.wit.result +0 -0
  2093. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-include3.wit +0 -0
  2094. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-include3.wit.result +0 -0
  2095. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-list.wit +0 -0
  2096. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-list.wit.result +0 -0
  2097. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg1/root.wit +0 -0
  2098. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg1.wit.result +0 -0
  2099. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg2/deps/bar/empty.wit +0 -0
  2100. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg2/root.wit +0 -0
  2101. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg2.wit.result +0 -0
  2102. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg3/deps/bar/baz.wit +0 -0
  2103. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg3/root.wit +0 -0
  2104. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg3.wit.result +0 -0
  2105. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg4/deps/bar/baz.wit +0 -0
  2106. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg4/root.wit +0 -0
  2107. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg4.wit.result +0 -0
  2108. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg5/deps/bar/baz.wit +0 -0
  2109. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg5/root.wit +0 -0
  2110. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg5.wit.result +0 -0
  2111. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg6/deps/bar/baz.wit +0 -0
  2112. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg6/root.wit +0 -0
  2113. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-pkg6.wit.result +0 -0
  2114. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource1.wit +0 -0
  2115. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource1.wit.result +0 -0
  2116. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource10.wit +0 -0
  2117. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource10.wit.result +0 -0
  2118. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource11.wit +0 -0
  2119. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource11.wit.result +0 -0
  2120. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource12.wit +0 -0
  2121. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource12.wit.result +0 -0
  2122. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource13.wit +0 -0
  2123. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource13.wit.result +0 -0
  2124. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource14.wit +0 -0
  2125. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource14.wit.result +0 -0
  2126. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource15/deps/foo/foo.wit +0 -0
  2127. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource15/foo.wit +0 -0
  2128. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource15.wit.result +0 -0
  2129. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource2.wit +0 -0
  2130. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource2.wit.result +0 -0
  2131. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource3.wit +0 -0
  2132. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource3.wit.result +0 -0
  2133. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource4.wit +0 -0
  2134. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource4.wit.result +0 -0
  2135. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource5.wit +0 -0
  2136. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource5.wit.result +0 -0
  2137. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource6.wit +0 -0
  2138. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource6.wit.result +0 -0
  2139. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource7.wit +0 -0
  2140. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource7.wit.result +0 -0
  2141. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource8.wit +0 -0
  2142. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource8.wit.result +0 -0
  2143. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource9.wit +0 -0
  2144. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-resource9.wit.result +0 -0
  2145. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-world-type1.wit +0 -0
  2146. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/bad-world-type1.wit.result +0 -0
  2147. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/conflicting-package/a.wit +0 -0
  2148. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/conflicting-package/b.wit +0 -0
  2149. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/conflicting-package.wit.result +0 -0
  2150. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle.wit +0 -0
  2151. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle.wit.result +0 -0
  2152. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle2.wit +0 -0
  2153. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle2.wit.result +0 -0
  2154. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle3.wit +0 -0
  2155. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle3.wit.result +0 -0
  2156. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle4.wit +0 -0
  2157. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle4.wit.result +0 -0
  2158. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle5.wit +0 -0
  2159. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/cycle5.wit.result +0 -0
  2160. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/dangling-type.wit +0 -0
  2161. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/dangling-type.wit.result +0 -0
  2162. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-functions.wit +0 -0
  2163. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-functions.wit.result +0 -0
  2164. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-interface.wit +0 -0
  2165. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-interface.wit.result +0 -0
  2166. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-interface2/foo.wit +0 -0
  2167. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-interface2/foo2.wit +0 -0
  2168. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-interface2.wit.result +0 -0
  2169. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-type.wit +0 -0
  2170. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/duplicate-type.wit.result +0 -0
  2171. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/empty-enum.wit +0 -0
  2172. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/empty-enum.wit.result +0 -0
  2173. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/empty-variant1.wit +0 -0
  2174. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/empty-variant1.wit.result +0 -0
  2175. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/export-twice.wit +0 -0
  2176. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/export-twice.wit.result +0 -0
  2177. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export1.wit +0 -0
  2178. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export1.wit.result +0 -0
  2179. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export2.wit +0 -0
  2180. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export2.wit.result +0 -0
  2181. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export3.wit +0 -0
  2182. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export3.wit.result +0 -0
  2183. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export4.wit +0 -0
  2184. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export4.wit.result +0 -0
  2185. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export5.wit +0 -0
  2186. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-and-export5.wit.result +0 -0
  2187. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-export-overlap1.wit +0 -0
  2188. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-export-overlap1.wit.result +0 -0
  2189. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-export-overlap2.wit +0 -0
  2190. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-export-overlap2.wit.result +0 -0
  2191. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-twice.wit +0 -0
  2192. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/import-twice.wit.result +0 -0
  2193. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-cycle.wit +0 -0
  2194. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-cycle.wit.result +0 -0
  2195. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-foreign/deps/bar/empty.wit +0 -0
  2196. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-foreign/root.wit +0 -0
  2197. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-foreign.wit.result +0 -0
  2198. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-with-id.wit +0 -0
  2199. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-with-id.wit.result +0 -0
  2200. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-with-on-id.wit +0 -0
  2201. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/include-with-on-id.wit.result +0 -0
  2202. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-md.md +0 -0
  2203. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-md.wit.result +0 -0
  2204. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-toplevel.wit +0 -0
  2205. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-toplevel.wit.result +0 -0
  2206. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-type-reference.wit +0 -0
  2207. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-type-reference.wit.result +0 -0
  2208. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-type-reference2.wit +0 -0
  2209. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/invalid-type-reference2.wit.result +0 -0
  2210. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/kebab-name-include-not-found.wit +0 -0
  2211. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/kebab-name-include-not-found.wit.result +0 -0
  2212. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/kebab-name-include.wit +0 -0
  2213. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/kebab-name-include.wit.result +0 -0
  2214. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/keyword.wit +0 -0
  2215. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/keyword.wit.result +0 -0
  2216. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/missing-package.wit +0 -0
  2217. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/missing-package.wit.result +0 -0
  2218. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/no-access-to-sibling-use/bar.wit +0 -0
  2219. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/no-access-to-sibling-use/foo.wit +0 -0
  2220. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/no-access-to-sibling-use.wit.result +0 -0
  2221. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/non-existance-world-include/deps/bar/baz.wit +0 -0
  2222. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/non-existance-world-include/root.wit +0 -0
  2223. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/non-existance-world-include.wit.result +0 -0
  2224. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/pkg-cycle/deps/a1/root.wit +0 -0
  2225. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/pkg-cycle/root.wit +0 -0
  2226. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/pkg-cycle.wit.result +0 -0
  2227. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/pkg-cycle2/deps/a1/root.wit +0 -0
  2228. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/pkg-cycle2/deps/a2/root.wit +0 -0
  2229. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/pkg-cycle2/root.wit +0 -0
  2230. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/pkg-cycle2.wit.result +0 -0
  2231. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/type-and-resource-same-name/deps/dep/foo.wit +0 -0
  2232. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/type-and-resource-same-name/foo.wit +0 -0
  2233. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/type-and-resource-same-name.wit.result +0 -0
  2234. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/undefined-typed.wit +0 -0
  2235. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/undefined-typed.wit.result +0 -0
  2236. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/union-fuzz-2.wit +0 -0
  2237. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/union-fuzz-2.wit.result +0 -0
  2238. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unknown-interface.wit +0 -0
  2239. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unknown-interface.wit.result +0 -0
  2240. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface1.wit +0 -0
  2241. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface1.wit.result +0 -0
  2242. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface2.wit +0 -0
  2243. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface2.wit.result +0 -0
  2244. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface3.wit +0 -0
  2245. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface3.wit.result +0 -0
  2246. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface4.wit +0 -0
  2247. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-interface4.wit.result +0 -0
  2248. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use1.wit +0 -0
  2249. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use1.wit.result +0 -0
  2250. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use10/bar.wit +0 -0
  2251. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use10/foo.wit +0 -0
  2252. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use10.wit.result +0 -0
  2253. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use2.wit +0 -0
  2254. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use2.wit.result +0 -0
  2255. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use3.wit +0 -0
  2256. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use3.wit.result +0 -0
  2257. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use7.wit +0 -0
  2258. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use7.wit.result +0 -0
  2259. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use8.wit +0 -0
  2260. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use8.wit.result +0 -0
  2261. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use9.wit +0 -0
  2262. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unresolved-use9.wit.result +0 -0
  2263. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/unterminated-string.wit.result +0 -0
  2264. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-and-include-world/deps/bar/baz.wit +0 -0
  2265. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-and-include-world/root.wit +0 -0
  2266. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-and-include-world.wit.result +0 -0
  2267. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-conflict.wit +0 -0
  2268. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-conflict.wit.result +0 -0
  2269. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-conflict2.wit +0 -0
  2270. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-conflict2.wit.result +0 -0
  2271. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-conflict3.wit +0 -0
  2272. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-conflict3.wit.result +0 -0
  2273. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-cycle1.wit +0 -0
  2274. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-cycle1.wit.result +0 -0
  2275. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-cycle4.wit +0 -0
  2276. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-cycle4.wit.result +0 -0
  2277. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-shadow1.wit +0 -0
  2278. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-shadow1.wit.result +0 -0
  2279. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-world/deps/bar/baz.wit +0 -0
  2280. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-world/root.wit +0 -0
  2281. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/use-world.wit.result +0 -0
  2282. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-interface-clash.wit +0 -0
  2283. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-interface-clash.wit.result +0 -0
  2284. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-same-fields2.wit +0 -0
  2285. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-same-fields2.wit.result +0 -0
  2286. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-same-fields3.wit +0 -0
  2287. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-same-fields3.wit.result +0 -0
  2288. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-top-level-func.wit +0 -0
  2289. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-top-level-func.wit.result +0 -0
  2290. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-top-level-func2.wit +0 -0
  2291. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/parse-fail/world-top-level-func2.wit.result +0 -0
  2292. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources-empty.wit +0 -0
  2293. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources-multiple-returns-borrow.wit +0 -0
  2294. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources-multiple-returns-own.wit +0 -0
  2295. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources-multiple.wit +0 -0
  2296. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources-return-borrow.wit +0 -0
  2297. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources-return-own.wit +0 -0
  2298. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources.wit +0 -0
  2299. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/resources1.wit +0 -0
  2300. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/shared-types.wit +0 -0
  2301. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/stress-export-elaborate.wit +0 -0
  2302. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/type-then-eof.wit +0 -0
  2303. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/union-fuzz-1.wit +0 -0
  2304. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/use-chain.wit +0 -0
  2305. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/use.wit +0 -0
  2306. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/versions/deps/a1/foo.wit +0 -0
  2307. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/versions/deps/a2/foo.wit +0 -0
  2308. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/versions/foo.wit +0 -0
  2309. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/wasi.wit +0 -0
  2310. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/world-iface-no-collide.wit +0 -0
  2311. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/world-implicit-import1.wit +0 -0
  2312. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/world-implicit-import2.wit +0 -0
  2313. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/world-implicit-import3.wit +0 -0
  2314. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/world-same-fields4.wit +0 -0
  2315. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/world-top-level-funcs.wit +0 -0
  2316. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/world-top-level-resources.wit +0 -0
  2317. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/worlds-union-dedup.wit +0 -0
  2318. /data/ext/cargo-vendor/{wit-parser-0.9.2 → wit-parser-0.11.1}/tests/ui/worlds-with-types.wit +0 -0
@@ -1,4119 +0,0 @@
1
- //! Functions for parsing and evaluating DWARF expressions.
2
-
3
- #[cfg(feature = "read")]
4
- use alloc::vec::Vec;
5
- use core::mem;
6
-
7
- use super::util::{ArrayLike, ArrayVec};
8
- use crate::common::{DebugAddrIndex, DebugInfoOffset, Encoding, Register};
9
- use crate::constants;
10
- use crate::read::{Error, Reader, ReaderOffset, Result, StoreOnHeap, UnitOffset, Value, ValueType};
11
-
12
- /// A reference to a DIE, either relative to the current CU or
13
- /// relative to the section.
14
- #[derive(Debug, Clone, Copy, PartialEq, Eq)]
15
- pub enum DieReference<T = usize> {
16
- /// A CU-relative reference.
17
- UnitRef(UnitOffset<T>),
18
- /// A section-relative reference.
19
- DebugInfoRef(DebugInfoOffset<T>),
20
- }
21
-
22
- /// A single decoded DWARF expression operation.
23
- ///
24
- /// DWARF expression evaluation is done in two parts: first the raw
25
- /// bytes of the next part of the expression are decoded; and then the
26
- /// decoded operation is evaluated. This approach lets other
27
- /// consumers inspect the DWARF expression without reimplementing the
28
- /// decoding operation.
29
- ///
30
- /// Multiple DWARF opcodes may decode into a single `Operation`. For
31
- /// example, both `DW_OP_deref` and `DW_OP_xderef` are represented
32
- /// using `Operation::Deref`.
33
- #[derive(Debug, Clone, Copy, PartialEq, Eq)]
34
- pub enum Operation<R, Offset = <R as Reader>::Offset>
35
- where
36
- R: Reader<Offset = Offset>,
37
- Offset: ReaderOffset,
38
- {
39
- /// Dereference the topmost value of the stack.
40
- Deref {
41
- /// The DIE of the base type or 0 to indicate the generic type
42
- base_type: UnitOffset<Offset>,
43
- /// The size of the data to dereference.
44
- size: u8,
45
- /// True if the dereference operation takes an address space
46
- /// argument from the stack; false otherwise.
47
- space: bool,
48
- },
49
- /// Drop an item from the stack.
50
- Drop,
51
- /// Pick an item from the stack and push it on top of the stack.
52
- /// This operation handles `DW_OP_pick`, `DW_OP_dup`, and
53
- /// `DW_OP_over`.
54
- Pick {
55
- /// The index, from the top of the stack, of the item to copy.
56
- index: u8,
57
- },
58
- /// Swap the top two stack items.
59
- Swap,
60
- /// Rotate the top three stack items.
61
- Rot,
62
- /// Take the absolute value of the top of the stack.
63
- Abs,
64
- /// Bitwise `and` of the top two values on the stack.
65
- And,
66
- /// Divide the top two values on the stack.
67
- Div,
68
- /// Subtract the top two values on the stack.
69
- Minus,
70
- /// Modulus of the top two values on the stack.
71
- Mod,
72
- /// Multiply the top two values on the stack.
73
- Mul,
74
- /// Negate the top of the stack.
75
- Neg,
76
- /// Bitwise `not` of the top of the stack.
77
- Not,
78
- /// Bitwise `or` of the top two values on the stack.
79
- Or,
80
- /// Add the top two values on the stack.
81
- Plus,
82
- /// Add a constant to the topmost value on the stack.
83
- PlusConstant {
84
- /// The value to add.
85
- value: u64,
86
- },
87
- /// Logical left shift of the 2nd value on the stack by the number
88
- /// of bits given by the topmost value on the stack.
89
- Shl,
90
- /// Right shift of the 2nd value on the stack by the number of
91
- /// bits given by the topmost value on the stack.
92
- Shr,
93
- /// Arithmetic left shift of the 2nd value on the stack by the
94
- /// number of bits given by the topmost value on the stack.
95
- Shra,
96
- /// Bitwise `xor` of the top two values on the stack.
97
- Xor,
98
- /// Branch to the target location if the top of stack is nonzero.
99
- Bra {
100
- /// The relative offset to the target bytecode.
101
- target: i16,
102
- },
103
- /// Compare the top two stack values for equality.
104
- Eq,
105
- /// Compare the top two stack values using `>=`.
106
- Ge,
107
- /// Compare the top two stack values using `>`.
108
- Gt,
109
- /// Compare the top two stack values using `<=`.
110
- Le,
111
- /// Compare the top two stack values using `<`.
112
- Lt,
113
- /// Compare the top two stack values using `!=`.
114
- Ne,
115
- /// Unconditional branch to the target location.
116
- Skip {
117
- /// The relative offset to the target bytecode.
118
- target: i16,
119
- },
120
- /// Push an unsigned constant value on the stack. This handles multiple
121
- /// DWARF opcodes.
122
- UnsignedConstant {
123
- /// The value to push.
124
- value: u64,
125
- },
126
- /// Push a signed constant value on the stack. This handles multiple
127
- /// DWARF opcodes.
128
- SignedConstant {
129
- /// The value to push.
130
- value: i64,
131
- },
132
- /// Indicate that this piece's location is in the given register.
133
- ///
134
- /// Completes the piece or expression.
135
- Register {
136
- /// The register number.
137
- register: Register,
138
- },
139
- /// Find the value of the given register, add the offset, and then
140
- /// push the resulting sum on the stack.
141
- RegisterOffset {
142
- /// The register number.
143
- register: Register,
144
- /// The offset to add.
145
- offset: i64,
146
- /// The DIE of the base type or 0 to indicate the generic type
147
- base_type: UnitOffset<Offset>,
148
- },
149
- /// Compute the frame base (using `DW_AT_frame_base`), add the
150
- /// given offset, and then push the resulting sum on the stack.
151
- FrameOffset {
152
- /// The offset to add.
153
- offset: i64,
154
- },
155
- /// No operation.
156
- Nop,
157
- /// Push the object address on the stack.
158
- PushObjectAddress,
159
- /// Evaluate a DWARF expression as a subroutine. The expression
160
- /// comes from the `DW_AT_location` attribute of the indicated
161
- /// DIE.
162
- Call {
163
- /// The DIE to use.
164
- offset: DieReference<Offset>,
165
- },
166
- /// Compute the address of a thread-local variable and push it on
167
- /// the stack.
168
- TLS,
169
- /// Compute the call frame CFA and push it on the stack.
170
- CallFrameCFA,
171
- /// Terminate a piece.
172
- Piece {
173
- /// The size of this piece in bits.
174
- size_in_bits: u64,
175
- /// The bit offset of this piece. If `None`, then this piece
176
- /// was specified using `DW_OP_piece` and should start at the
177
- /// next byte boundary.
178
- bit_offset: Option<u64>,
179
- },
180
- /// The object has no location, but has a known constant value.
181
- ///
182
- /// Represents `DW_OP_implicit_value`.
183
- /// Completes the piece or expression.
184
- ImplicitValue {
185
- /// The implicit value to use.
186
- data: R,
187
- },
188
- /// The object has no location, but its value is at the top of the stack.
189
- ///
190
- /// Represents `DW_OP_stack_value`.
191
- /// Completes the piece or expression.
192
- StackValue,
193
- /// The object is a pointer to a value which has no actual location,
194
- /// such as an implicit value or a stack value.
195
- ///
196
- /// Represents `DW_OP_implicit_pointer`.
197
- /// Completes the piece or expression.
198
- ImplicitPointer {
199
- /// The `.debug_info` offset of the value that this is an implicit pointer into.
200
- value: DebugInfoOffset<Offset>,
201
- /// The byte offset into the value that the implicit pointer points to.
202
- byte_offset: i64,
203
- },
204
- /// Evaluate an expression at the entry to the current subprogram, and push it on the stack.
205
- ///
206
- /// Represents `DW_OP_entry_value`.
207
- EntryValue {
208
- /// The expression to be evaluated.
209
- expression: R,
210
- },
211
- /// This represents a parameter that was optimized out.
212
- ///
213
- /// The offset points to the definition of the parameter, and is
214
- /// matched to the `DW_TAG_GNU_call_site_parameter` in the caller that also
215
- /// points to the same definition of the parameter.
216
- ///
217
- /// Represents `DW_OP_GNU_parameter_ref`.
218
- ParameterRef {
219
- /// The DIE to use.
220
- offset: UnitOffset<Offset>,
221
- },
222
- /// Relocate the address if needed, and push it on the stack.
223
- ///
224
- /// Represents `DW_OP_addr`.
225
- Address {
226
- /// The offset to add.
227
- address: u64,
228
- },
229
- /// Read the address at the given index in `.debug_addr, relocate the address if needed,
230
- /// and push it on the stack.
231
- ///
232
- /// Represents `DW_OP_addrx`.
233
- AddressIndex {
234
- /// The index of the address in `.debug_addr`.
235
- index: DebugAddrIndex<Offset>,
236
- },
237
- /// Read the address at the given index in `.debug_addr, and push it on the stack.
238
- /// Do not relocate the address.
239
- ///
240
- /// Represents `DW_OP_constx`.
241
- ConstantIndex {
242
- /// The index of the address in `.debug_addr`.
243
- index: DebugAddrIndex<Offset>,
244
- },
245
- /// Interpret the value bytes as a constant of a given type, and push it on the stack.
246
- ///
247
- /// Represents `DW_OP_const_type`.
248
- TypedLiteral {
249
- /// The DIE of the base type.
250
- base_type: UnitOffset<Offset>,
251
- /// The value bytes.
252
- value: R,
253
- },
254
- /// Pop the top stack entry, convert it to a different type, and push it on the stack.
255
- ///
256
- /// Represents `DW_OP_convert`.
257
- Convert {
258
- /// The DIE of the base type.
259
- base_type: UnitOffset<Offset>,
260
- },
261
- /// Pop the top stack entry, reinterpret the bits in its value as a different type,
262
- /// and push it on the stack.
263
- ///
264
- /// Represents `DW_OP_reinterpret`.
265
- Reinterpret {
266
- /// The DIE of the base type.
267
- base_type: UnitOffset<Offset>,
268
- },
269
- /// The index of a local in the currently executing function.
270
- ///
271
- /// Represents `DW_OP_WASM_location 0x00`.
272
- /// Completes the piece or expression.
273
- WasmLocal {
274
- /// The index of the local.
275
- index: u32,
276
- },
277
- /// The index of a global.
278
- ///
279
- /// Represents `DW_OP_WASM_location 0x01` or `DW_OP_WASM_location 0x03`.
280
- /// Completes the piece or expression.
281
- WasmGlobal {
282
- /// The index of the global.
283
- index: u32,
284
- },
285
- /// The index of an item on the operand stack.
286
- ///
287
- /// Represents `DW_OP_WASM_location 0x02`.
288
- /// Completes the piece or expression.
289
- WasmStack {
290
- /// The index of the stack item. 0 is the bottom of the operand stack.
291
- index: u32,
292
- },
293
- }
294
-
295
- #[derive(Debug)]
296
- enum OperationEvaluationResult<R: Reader> {
297
- Piece,
298
- Incomplete,
299
- Complete { location: Location<R> },
300
- Waiting(EvaluationWaiting<R>, EvaluationResult<R>),
301
- }
302
-
303
- /// A single location of a piece of the result of a DWARF expression.
304
- #[derive(Debug, Clone, Copy, PartialEq)]
305
- pub enum Location<R, Offset = <R as Reader>::Offset>
306
- where
307
- R: Reader<Offset = Offset>,
308
- Offset: ReaderOffset,
309
- {
310
- /// The piece is empty. Ordinarily this means the piece has been
311
- /// optimized away.
312
- Empty,
313
- /// The piece is found in a register.
314
- Register {
315
- /// The register number.
316
- register: Register,
317
- },
318
- /// The piece is found in memory.
319
- Address {
320
- /// The address.
321
- address: u64,
322
- },
323
- /// The piece has no location but its value is known.
324
- Value {
325
- /// The value.
326
- value: Value,
327
- },
328
- /// The piece is represented by some constant bytes.
329
- Bytes {
330
- /// The value.
331
- value: R,
332
- },
333
- /// The piece is a pointer to a value which has no actual location.
334
- ImplicitPointer {
335
- /// The `.debug_info` offset of the value that this is an implicit pointer into.
336
- value: DebugInfoOffset<Offset>,
337
- /// The byte offset into the value that the implicit pointer points to.
338
- byte_offset: i64,
339
- },
340
- }
341
-
342
- impl<R, Offset> Location<R, Offset>
343
- where
344
- R: Reader<Offset = Offset>,
345
- Offset: ReaderOffset,
346
- {
347
- /// Return true if the piece is empty.
348
- pub fn is_empty(&self) -> bool {
349
- matches!(*self, Location::Empty)
350
- }
351
- }
352
-
353
- /// The description of a single piece of the result of a DWARF
354
- /// expression.
355
- #[derive(Debug, Clone, Copy, PartialEq)]
356
- pub struct Piece<R, Offset = <R as Reader>::Offset>
357
- where
358
- R: Reader<Offset = Offset>,
359
- Offset: ReaderOffset,
360
- {
361
- /// If given, the size of the piece in bits. If `None`, there
362
- /// must be only one piece whose size is all of the object.
363
- pub size_in_bits: Option<u64>,
364
- /// If given, the bit offset of the piece within the location.
365
- /// If the location is a `Location::Register` or `Location::Value`,
366
- /// then this offset is from the least significant bit end of
367
- /// the register or value.
368
- /// If the location is a `Location::Address` then the offset uses
369
- /// the bit numbering and direction conventions of the language
370
- /// and target system.
371
- ///
372
- /// If `None`, the piece starts at the location. If the
373
- /// location is a register whose size is larger than the piece,
374
- /// then placement within the register is defined by the ABI.
375
- pub bit_offset: Option<u64>,
376
- /// Where this piece is to be found.
377
- pub location: Location<R, Offset>,
378
- }
379
-
380
- // A helper function to handle branch offsets.
381
- fn compute_pc<R: Reader>(pc: &R, bytecode: &R, offset: i16) -> Result<R> {
382
- let pc_offset = pc.offset_from(bytecode);
383
- let new_pc_offset = pc_offset.wrapping_add(R::Offset::from_i16(offset));
384
- if new_pc_offset > bytecode.len() {
385
- Err(Error::BadBranchTarget(new_pc_offset.into_u64()))
386
- } else {
387
- let mut new_pc = bytecode.clone();
388
- new_pc.skip(new_pc_offset)?;
389
- Ok(new_pc)
390
- }
391
- }
392
-
393
- fn generic_type<O: ReaderOffset>() -> UnitOffset<O> {
394
- UnitOffset(O::from_u64(0).unwrap())
395
- }
396
-
397
- impl<R, Offset> Operation<R, Offset>
398
- where
399
- R: Reader<Offset = Offset>,
400
- Offset: ReaderOffset,
401
- {
402
- /// Parse a single DWARF expression operation.
403
- ///
404
- /// This is useful when examining a DWARF expression for reasons other
405
- /// than direct evaluation.
406
- ///
407
- /// `bytes` points to a the operation to decode. It should point into
408
- /// the same array as `bytecode`, which should be the entire
409
- /// expression.
410
- pub fn parse(bytes: &mut R, encoding: Encoding) -> Result<Operation<R, Offset>> {
411
- let opcode = bytes.read_u8()?;
412
- let name = constants::DwOp(opcode);
413
- match name {
414
- constants::DW_OP_addr => {
415
- let address = bytes.read_address(encoding.address_size)?;
416
- Ok(Operation::Address { address })
417
- }
418
- constants::DW_OP_deref => Ok(Operation::Deref {
419
- base_type: generic_type(),
420
- size: encoding.address_size,
421
- space: false,
422
- }),
423
- constants::DW_OP_const1u => {
424
- let value = bytes.read_u8()?;
425
- Ok(Operation::UnsignedConstant {
426
- value: u64::from(value),
427
- })
428
- }
429
- constants::DW_OP_const1s => {
430
- let value = bytes.read_i8()?;
431
- Ok(Operation::SignedConstant {
432
- value: i64::from(value),
433
- })
434
- }
435
- constants::DW_OP_const2u => {
436
- let value = bytes.read_u16()?;
437
- Ok(Operation::UnsignedConstant {
438
- value: u64::from(value),
439
- })
440
- }
441
- constants::DW_OP_const2s => {
442
- let value = bytes.read_i16()?;
443
- Ok(Operation::SignedConstant {
444
- value: i64::from(value),
445
- })
446
- }
447
- constants::DW_OP_const4u => {
448
- let value = bytes.read_u32()?;
449
- Ok(Operation::UnsignedConstant {
450
- value: u64::from(value),
451
- })
452
- }
453
- constants::DW_OP_const4s => {
454
- let value = bytes.read_i32()?;
455
- Ok(Operation::SignedConstant {
456
- value: i64::from(value),
457
- })
458
- }
459
- constants::DW_OP_const8u => {
460
- let value = bytes.read_u64()?;
461
- Ok(Operation::UnsignedConstant { value })
462
- }
463
- constants::DW_OP_const8s => {
464
- let value = bytes.read_i64()?;
465
- Ok(Operation::SignedConstant { value })
466
- }
467
- constants::DW_OP_constu => {
468
- let value = bytes.read_uleb128()?;
469
- Ok(Operation::UnsignedConstant { value })
470
- }
471
- constants::DW_OP_consts => {
472
- let value = bytes.read_sleb128()?;
473
- Ok(Operation::SignedConstant { value })
474
- }
475
- constants::DW_OP_dup => Ok(Operation::Pick { index: 0 }),
476
- constants::DW_OP_drop => Ok(Operation::Drop),
477
- constants::DW_OP_over => Ok(Operation::Pick { index: 1 }),
478
- constants::DW_OP_pick => {
479
- let value = bytes.read_u8()?;
480
- Ok(Operation::Pick { index: value })
481
- }
482
- constants::DW_OP_swap => Ok(Operation::Swap),
483
- constants::DW_OP_rot => Ok(Operation::Rot),
484
- constants::DW_OP_xderef => Ok(Operation::Deref {
485
- base_type: generic_type(),
486
- size: encoding.address_size,
487
- space: true,
488
- }),
489
- constants::DW_OP_abs => Ok(Operation::Abs),
490
- constants::DW_OP_and => Ok(Operation::And),
491
- constants::DW_OP_div => Ok(Operation::Div),
492
- constants::DW_OP_minus => Ok(Operation::Minus),
493
- constants::DW_OP_mod => Ok(Operation::Mod),
494
- constants::DW_OP_mul => Ok(Operation::Mul),
495
- constants::DW_OP_neg => Ok(Operation::Neg),
496
- constants::DW_OP_not => Ok(Operation::Not),
497
- constants::DW_OP_or => Ok(Operation::Or),
498
- constants::DW_OP_plus => Ok(Operation::Plus),
499
- constants::DW_OP_plus_uconst => {
500
- let value = bytes.read_uleb128()?;
501
- Ok(Operation::PlusConstant { value })
502
- }
503
- constants::DW_OP_shl => Ok(Operation::Shl),
504
- constants::DW_OP_shr => Ok(Operation::Shr),
505
- constants::DW_OP_shra => Ok(Operation::Shra),
506
- constants::DW_OP_xor => Ok(Operation::Xor),
507
- constants::DW_OP_bra => {
508
- let target = bytes.read_i16()?;
509
- Ok(Operation::Bra { target })
510
- }
511
- constants::DW_OP_eq => Ok(Operation::Eq),
512
- constants::DW_OP_ge => Ok(Operation::Ge),
513
- constants::DW_OP_gt => Ok(Operation::Gt),
514
- constants::DW_OP_le => Ok(Operation::Le),
515
- constants::DW_OP_lt => Ok(Operation::Lt),
516
- constants::DW_OP_ne => Ok(Operation::Ne),
517
- constants::DW_OP_skip => {
518
- let target = bytes.read_i16()?;
519
- Ok(Operation::Skip { target })
520
- }
521
- constants::DW_OP_lit0
522
- | constants::DW_OP_lit1
523
- | constants::DW_OP_lit2
524
- | constants::DW_OP_lit3
525
- | constants::DW_OP_lit4
526
- | constants::DW_OP_lit5
527
- | constants::DW_OP_lit6
528
- | constants::DW_OP_lit7
529
- | constants::DW_OP_lit8
530
- | constants::DW_OP_lit9
531
- | constants::DW_OP_lit10
532
- | constants::DW_OP_lit11
533
- | constants::DW_OP_lit12
534
- | constants::DW_OP_lit13
535
- | constants::DW_OP_lit14
536
- | constants::DW_OP_lit15
537
- | constants::DW_OP_lit16
538
- | constants::DW_OP_lit17
539
- | constants::DW_OP_lit18
540
- | constants::DW_OP_lit19
541
- | constants::DW_OP_lit20
542
- | constants::DW_OP_lit21
543
- | constants::DW_OP_lit22
544
- | constants::DW_OP_lit23
545
- | constants::DW_OP_lit24
546
- | constants::DW_OP_lit25
547
- | constants::DW_OP_lit26
548
- | constants::DW_OP_lit27
549
- | constants::DW_OP_lit28
550
- | constants::DW_OP_lit29
551
- | constants::DW_OP_lit30
552
- | constants::DW_OP_lit31 => Ok(Operation::UnsignedConstant {
553
- value: (opcode - constants::DW_OP_lit0.0).into(),
554
- }),
555
- constants::DW_OP_reg0
556
- | constants::DW_OP_reg1
557
- | constants::DW_OP_reg2
558
- | constants::DW_OP_reg3
559
- | constants::DW_OP_reg4
560
- | constants::DW_OP_reg5
561
- | constants::DW_OP_reg6
562
- | constants::DW_OP_reg7
563
- | constants::DW_OP_reg8
564
- | constants::DW_OP_reg9
565
- | constants::DW_OP_reg10
566
- | constants::DW_OP_reg11
567
- | constants::DW_OP_reg12
568
- | constants::DW_OP_reg13
569
- | constants::DW_OP_reg14
570
- | constants::DW_OP_reg15
571
- | constants::DW_OP_reg16
572
- | constants::DW_OP_reg17
573
- | constants::DW_OP_reg18
574
- | constants::DW_OP_reg19
575
- | constants::DW_OP_reg20
576
- | constants::DW_OP_reg21
577
- | constants::DW_OP_reg22
578
- | constants::DW_OP_reg23
579
- | constants::DW_OP_reg24
580
- | constants::DW_OP_reg25
581
- | constants::DW_OP_reg26
582
- | constants::DW_OP_reg27
583
- | constants::DW_OP_reg28
584
- | constants::DW_OP_reg29
585
- | constants::DW_OP_reg30
586
- | constants::DW_OP_reg31 => Ok(Operation::Register {
587
- register: Register((opcode - constants::DW_OP_reg0.0).into()),
588
- }),
589
- constants::DW_OP_breg0
590
- | constants::DW_OP_breg1
591
- | constants::DW_OP_breg2
592
- | constants::DW_OP_breg3
593
- | constants::DW_OP_breg4
594
- | constants::DW_OP_breg5
595
- | constants::DW_OP_breg6
596
- | constants::DW_OP_breg7
597
- | constants::DW_OP_breg8
598
- | constants::DW_OP_breg9
599
- | constants::DW_OP_breg10
600
- | constants::DW_OP_breg11
601
- | constants::DW_OP_breg12
602
- | constants::DW_OP_breg13
603
- | constants::DW_OP_breg14
604
- | constants::DW_OP_breg15
605
- | constants::DW_OP_breg16
606
- | constants::DW_OP_breg17
607
- | constants::DW_OP_breg18
608
- | constants::DW_OP_breg19
609
- | constants::DW_OP_breg20
610
- | constants::DW_OP_breg21
611
- | constants::DW_OP_breg22
612
- | constants::DW_OP_breg23
613
- | constants::DW_OP_breg24
614
- | constants::DW_OP_breg25
615
- | constants::DW_OP_breg26
616
- | constants::DW_OP_breg27
617
- | constants::DW_OP_breg28
618
- | constants::DW_OP_breg29
619
- | constants::DW_OP_breg30
620
- | constants::DW_OP_breg31 => {
621
- let value = bytes.read_sleb128()?;
622
- Ok(Operation::RegisterOffset {
623
- register: Register((opcode - constants::DW_OP_breg0.0).into()),
624
- offset: value,
625
- base_type: generic_type(),
626
- })
627
- }
628
- constants::DW_OP_regx => {
629
- let register = bytes.read_uleb128().and_then(Register::from_u64)?;
630
- Ok(Operation::Register { register })
631
- }
632
- constants::DW_OP_fbreg => {
633
- let value = bytes.read_sleb128()?;
634
- Ok(Operation::FrameOffset { offset: value })
635
- }
636
- constants::DW_OP_bregx => {
637
- let register = bytes.read_uleb128().and_then(Register::from_u64)?;
638
- let offset = bytes.read_sleb128()?;
639
- Ok(Operation::RegisterOffset {
640
- register,
641
- offset,
642
- base_type: generic_type(),
643
- })
644
- }
645
- constants::DW_OP_piece => {
646
- let size = bytes.read_uleb128()?;
647
- Ok(Operation::Piece {
648
- size_in_bits: 8 * size,
649
- bit_offset: None,
650
- })
651
- }
652
- constants::DW_OP_deref_size => {
653
- let size = bytes.read_u8()?;
654
- Ok(Operation::Deref {
655
- base_type: generic_type(),
656
- size,
657
- space: false,
658
- })
659
- }
660
- constants::DW_OP_xderef_size => {
661
- let size = bytes.read_u8()?;
662
- Ok(Operation::Deref {
663
- base_type: generic_type(),
664
- size,
665
- space: true,
666
- })
667
- }
668
- constants::DW_OP_nop => Ok(Operation::Nop),
669
- constants::DW_OP_push_object_address => Ok(Operation::PushObjectAddress),
670
- constants::DW_OP_call2 => {
671
- let value = bytes.read_u16().map(R::Offset::from_u16)?;
672
- Ok(Operation::Call {
673
- offset: DieReference::UnitRef(UnitOffset(value)),
674
- })
675
- }
676
- constants::DW_OP_call4 => {
677
- let value = bytes.read_u32().map(R::Offset::from_u32)?;
678
- Ok(Operation::Call {
679
- offset: DieReference::UnitRef(UnitOffset(value)),
680
- })
681
- }
682
- constants::DW_OP_call_ref => {
683
- let value = bytes.read_offset(encoding.format)?;
684
- Ok(Operation::Call {
685
- offset: DieReference::DebugInfoRef(DebugInfoOffset(value)),
686
- })
687
- }
688
- constants::DW_OP_form_tls_address | constants::DW_OP_GNU_push_tls_address => {
689
- Ok(Operation::TLS)
690
- }
691
- constants::DW_OP_call_frame_cfa => Ok(Operation::CallFrameCFA),
692
- constants::DW_OP_bit_piece => {
693
- let size = bytes.read_uleb128()?;
694
- let offset = bytes.read_uleb128()?;
695
- Ok(Operation::Piece {
696
- size_in_bits: size,
697
- bit_offset: Some(offset),
698
- })
699
- }
700
- constants::DW_OP_implicit_value => {
701
- let len = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
702
- let data = bytes.split(len)?;
703
- Ok(Operation::ImplicitValue { data })
704
- }
705
- constants::DW_OP_stack_value => Ok(Operation::StackValue),
706
- constants::DW_OP_implicit_pointer | constants::DW_OP_GNU_implicit_pointer => {
707
- let value = if encoding.version == 2 {
708
- bytes
709
- .read_address(encoding.address_size)
710
- .and_then(Offset::from_u64)?
711
- } else {
712
- bytes.read_offset(encoding.format)?
713
- };
714
- let byte_offset = bytes.read_sleb128()?;
715
- Ok(Operation::ImplicitPointer {
716
- value: DebugInfoOffset(value),
717
- byte_offset,
718
- })
719
- }
720
- constants::DW_OP_addrx | constants::DW_OP_GNU_addr_index => {
721
- let index = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
722
- Ok(Operation::AddressIndex {
723
- index: DebugAddrIndex(index),
724
- })
725
- }
726
- constants::DW_OP_constx | constants::DW_OP_GNU_const_index => {
727
- let index = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
728
- Ok(Operation::ConstantIndex {
729
- index: DebugAddrIndex(index),
730
- })
731
- }
732
- constants::DW_OP_entry_value | constants::DW_OP_GNU_entry_value => {
733
- let len = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
734
- let expression = bytes.split(len)?;
735
- Ok(Operation::EntryValue { expression })
736
- }
737
- constants::DW_OP_GNU_parameter_ref => {
738
- let value = bytes.read_u32().map(R::Offset::from_u32)?;
739
- Ok(Operation::ParameterRef {
740
- offset: UnitOffset(value),
741
- })
742
- }
743
- constants::DW_OP_const_type | constants::DW_OP_GNU_const_type => {
744
- let base_type = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
745
- let len = bytes.read_u8()?;
746
- let value = bytes.split(R::Offset::from_u8(len))?;
747
- Ok(Operation::TypedLiteral {
748
- base_type: UnitOffset(base_type),
749
- value,
750
- })
751
- }
752
- constants::DW_OP_regval_type | constants::DW_OP_GNU_regval_type => {
753
- let register = bytes.read_uleb128().and_then(Register::from_u64)?;
754
- let base_type = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
755
- Ok(Operation::RegisterOffset {
756
- register,
757
- offset: 0,
758
- base_type: UnitOffset(base_type),
759
- })
760
- }
761
- constants::DW_OP_deref_type | constants::DW_OP_GNU_deref_type => {
762
- let size = bytes.read_u8()?;
763
- let base_type = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
764
- Ok(Operation::Deref {
765
- base_type: UnitOffset(base_type),
766
- size,
767
- space: false,
768
- })
769
- }
770
- constants::DW_OP_xderef_type => {
771
- let size = bytes.read_u8()?;
772
- let base_type = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
773
- Ok(Operation::Deref {
774
- base_type: UnitOffset(base_type),
775
- size,
776
- space: true,
777
- })
778
- }
779
- constants::DW_OP_convert | constants::DW_OP_GNU_convert => {
780
- let base_type = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
781
- Ok(Operation::Convert {
782
- base_type: UnitOffset(base_type),
783
- })
784
- }
785
- constants::DW_OP_reinterpret | constants::DW_OP_GNU_reinterpret => {
786
- let base_type = bytes.read_uleb128().and_then(R::Offset::from_u64)?;
787
- Ok(Operation::Reinterpret {
788
- base_type: UnitOffset(base_type),
789
- })
790
- }
791
- constants::DW_OP_WASM_location => match bytes.read_u8()? {
792
- 0x0 => {
793
- let index = bytes.read_uleb128_u32()?;
794
- Ok(Operation::WasmLocal { index })
795
- }
796
- 0x1 => {
797
- let index = bytes.read_uleb128_u32()?;
798
- Ok(Operation::WasmGlobal { index })
799
- }
800
- 0x2 => {
801
- let index = bytes.read_uleb128_u32()?;
802
- Ok(Operation::WasmStack { index })
803
- }
804
- 0x3 => {
805
- let index = bytes.read_u32()?;
806
- Ok(Operation::WasmGlobal { index })
807
- }
808
- _ => Err(Error::InvalidExpression(name)),
809
- },
810
- _ => Err(Error::InvalidExpression(name)),
811
- }
812
- }
813
- }
814
-
815
- #[derive(Debug)]
816
- enum EvaluationState<R: Reader> {
817
- Start(Option<u64>),
818
- Ready,
819
- Error(Error),
820
- Complete,
821
- Waiting(EvaluationWaiting<R>),
822
- }
823
-
824
- #[derive(Debug)]
825
- enum EvaluationWaiting<R: Reader> {
826
- Memory,
827
- Register { offset: i64 },
828
- FrameBase { offset: i64 },
829
- Tls,
830
- Cfa,
831
- AtLocation,
832
- EntryValue,
833
- ParameterRef,
834
- RelocatedAddress,
835
- IndexedAddress,
836
- TypedLiteral { value: R },
837
- Convert,
838
- Reinterpret,
839
- }
840
-
841
- /// The state of an `Evaluation` after evaluating a DWARF expression.
842
- /// The evaluation is either `Complete`, or it requires more data
843
- /// to continue, as described by the variant.
844
- #[derive(Debug, PartialEq)]
845
- pub enum EvaluationResult<R: Reader> {
846
- /// The `Evaluation` is complete, and `Evaluation::result()` can be called.
847
- Complete,
848
- /// The `Evaluation` needs a value from memory to proceed further. Once the
849
- /// caller determines what value to provide it should resume the `Evaluation`
850
- /// by calling `Evaluation::resume_with_memory`.
851
- RequiresMemory {
852
- /// The address of the value required.
853
- address: u64,
854
- /// The size of the value required. This is guaranteed to be at most the
855
- /// word size of the target architecture.
856
- size: u8,
857
- /// If not `None`, a target-specific address space value.
858
- space: Option<u64>,
859
- /// The DIE of the base type or 0 to indicate the generic type
860
- base_type: UnitOffset<R::Offset>,
861
- },
862
- /// The `Evaluation` needs a value from a register to proceed further. Once
863
- /// the caller determines what value to provide it should resume the
864
- /// `Evaluation` by calling `Evaluation::resume_with_register`.
865
- RequiresRegister {
866
- /// The register number.
867
- register: Register,
868
- /// The DIE of the base type or 0 to indicate the generic type
869
- base_type: UnitOffset<R::Offset>,
870
- },
871
- /// The `Evaluation` needs the frame base address to proceed further. Once
872
- /// the caller determines what value to provide it should resume the
873
- /// `Evaluation` by calling `Evaluation::resume_with_frame_base`. The frame
874
- /// base address is the address produced by the location description in the
875
- /// `DW_AT_frame_base` attribute of the current function.
876
- RequiresFrameBase,
877
- /// The `Evaluation` needs a value from TLS to proceed further. Once the
878
- /// caller determines what value to provide it should resume the
879
- /// `Evaluation` by calling `Evaluation::resume_with_tls`.
880
- RequiresTls(u64),
881
- /// The `Evaluation` needs the CFA to proceed further. Once the caller
882
- /// determines what value to provide it should resume the `Evaluation` by
883
- /// calling `Evaluation::resume_with_call_frame_cfa`.
884
- RequiresCallFrameCfa,
885
- /// The `Evaluation` needs the DWARF expression at the given location to
886
- /// proceed further. Once the caller determines what value to provide it
887
- /// should resume the `Evaluation` by calling
888
- /// `Evaluation::resume_with_at_location`.
889
- RequiresAtLocation(DieReference<R::Offset>),
890
- /// The `Evaluation` needs the value produced by evaluating a DWARF
891
- /// expression at the entry point of the current subprogram. Once the
892
- /// caller determines what value to provide it should resume the
893
- /// `Evaluation` by calling `Evaluation::resume_with_entry_value`.
894
- RequiresEntryValue(Expression<R>),
895
- /// The `Evaluation` needs the value of the parameter at the given location
896
- /// in the current function's caller. Once the caller determines what value
897
- /// to provide it should resume the `Evaluation` by calling
898
- /// `Evaluation::resume_with_parameter_ref`.
899
- RequiresParameterRef(UnitOffset<R::Offset>),
900
- /// The `Evaluation` needs an address to be relocated to proceed further.
901
- /// Once the caller determines what value to provide it should resume the
902
- /// `Evaluation` by calling `Evaluation::resume_with_relocated_address`.
903
- RequiresRelocatedAddress(u64),
904
- /// The `Evaluation` needs an address from the `.debug_addr` section.
905
- /// This address may also need to be relocated.
906
- /// Once the caller determines what value to provide it should resume the
907
- /// `Evaluation` by calling `Evaluation::resume_with_indexed_address`.
908
- RequiresIndexedAddress {
909
- /// The index of the address in the `.debug_addr` section,
910
- /// relative to the `DW_AT_addr_base` of the compilation unit.
911
- index: DebugAddrIndex<R::Offset>,
912
- /// Whether the address also needs to be relocated.
913
- relocate: bool,
914
- },
915
- /// The `Evaluation` needs the `ValueType` for the base type DIE at
916
- /// the give unit offset. Once the caller determines what value to provide it
917
- /// should resume the `Evaluation` by calling
918
- /// `Evaluation::resume_with_base_type`.
919
- RequiresBaseType(UnitOffset<R::Offset>),
920
- }
921
-
922
- /// The bytecode for a DWARF expression or location description.
923
- #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
924
- pub struct Expression<R: Reader>(pub R);
925
-
926
- impl<R: Reader> Expression<R> {
927
- /// Create an evaluation for this expression.
928
- ///
929
- /// The `encoding` is determined by the
930
- /// [`CompilationUnitHeader`](struct.CompilationUnitHeader.html) or
931
- /// [`TypeUnitHeader`](struct.TypeUnitHeader.html) that this expression
932
- /// relates to.
933
- ///
934
- /// # Examples
935
- /// ```rust,no_run
936
- /// use gimli::Expression;
937
- /// # let endian = gimli::LittleEndian;
938
- /// # let debug_info = gimli::DebugInfo::from(gimli::EndianSlice::new(&[], endian));
939
- /// # let unit = debug_info.units().next().unwrap().unwrap();
940
- /// # let bytecode = gimli::EndianSlice::new(&[], endian);
941
- /// let expression = gimli::Expression(bytecode);
942
- /// let mut eval = expression.evaluation(unit.encoding());
943
- /// let mut result = eval.evaluate().unwrap();
944
- /// ```
945
- #[cfg(feature = "read")]
946
- #[inline]
947
- pub fn evaluation(self, encoding: Encoding) -> Evaluation<R> {
948
- Evaluation::new(self.0, encoding)
949
- }
950
-
951
- /// Return an iterator for the operations in the expression.
952
- pub fn operations(self, encoding: Encoding) -> OperationIter<R> {
953
- OperationIter {
954
- input: self.0,
955
- encoding,
956
- }
957
- }
958
- }
959
-
960
- /// An iterator for the operations in an expression.
961
- #[derive(Debug, Clone, Copy)]
962
- pub struct OperationIter<R: Reader> {
963
- input: R,
964
- encoding: Encoding,
965
- }
966
-
967
- impl<R: Reader> OperationIter<R> {
968
- /// Read the next operation in an expression.
969
- pub fn next(&mut self) -> Result<Option<Operation<R>>> {
970
- if self.input.is_empty() {
971
- return Ok(None);
972
- }
973
- match Operation::parse(&mut self.input, self.encoding) {
974
- Ok(op) => Ok(Some(op)),
975
- Err(e) => {
976
- self.input.empty();
977
- Err(e)
978
- }
979
- }
980
- }
981
-
982
- /// Return the current byte offset of the iterator.
983
- pub fn offset_from(&self, expression: &Expression<R>) -> R::Offset {
984
- self.input.offset_from(&expression.0)
985
- }
986
- }
987
-
988
- #[cfg(feature = "fallible-iterator")]
989
- impl<R: Reader> fallible_iterator::FallibleIterator for OperationIter<R> {
990
- type Item = Operation<R>;
991
- type Error = Error;
992
-
993
- fn next(&mut self) -> ::core::result::Result<Option<Self::Item>, Self::Error> {
994
- OperationIter::next(self)
995
- }
996
- }
997
-
998
- /// Specification of what storage should be used for [`Evaluation`].
999
- ///
1000
- #[cfg_attr(
1001
- feature = "read",
1002
- doc = "
1003
- Normally you would only need to use [`StoreOnHeap`], which places the stacks and the results
1004
- on the heap using [`Vec`]. This is the default storage type parameter for [`Evaluation`].
1005
- "
1006
- )]
1007
- ///
1008
- /// If you need to avoid [`Evaluation`] from allocating memory, e.g. for signal safety,
1009
- /// you can provide you own storage specification:
1010
- /// ```rust,no_run
1011
- /// # use gimli::*;
1012
- /// # let bytecode = EndianSlice::new(&[], LittleEndian);
1013
- /// # let encoding = unimplemented!();
1014
- /// # let get_register_value = |_, _| Value::Generic(42);
1015
- /// # let get_frame_base = || 0xdeadbeef;
1016
- /// #
1017
- /// struct StoreOnStack;
1018
- ///
1019
- /// impl<R: Reader> EvaluationStorage<R> for StoreOnStack {
1020
- /// type Stack = [Value; 64];
1021
- /// type ExpressionStack = [(R, R); 4];
1022
- /// type Result = [Piece<R>; 1];
1023
- /// }
1024
- ///
1025
- /// let mut eval = Evaluation::<_, StoreOnStack>::new_in(bytecode, encoding);
1026
- /// let mut result = eval.evaluate().unwrap();
1027
- /// while result != EvaluationResult::Complete {
1028
- /// match result {
1029
- /// EvaluationResult::RequiresRegister { register, base_type } => {
1030
- /// let value = get_register_value(register, base_type);
1031
- /// result = eval.resume_with_register(value).unwrap();
1032
- /// },
1033
- /// EvaluationResult::RequiresFrameBase => {
1034
- /// let frame_base = get_frame_base();
1035
- /// result = eval.resume_with_frame_base(frame_base).unwrap();
1036
- /// },
1037
- /// _ => unimplemented!(),
1038
- /// };
1039
- /// }
1040
- ///
1041
- /// let result = eval.as_result();
1042
- /// println!("{:?}", result);
1043
- /// ```
1044
- pub trait EvaluationStorage<R: Reader> {
1045
- /// The storage used for the evaluation stack.
1046
- type Stack: ArrayLike<Item = Value>;
1047
- /// The storage used for the expression stack.
1048
- type ExpressionStack: ArrayLike<Item = (R, R)>;
1049
- /// The storage used for the results.
1050
- type Result: ArrayLike<Item = Piece<R>>;
1051
- }
1052
-
1053
- #[cfg(feature = "read")]
1054
- impl<R: Reader> EvaluationStorage<R> for StoreOnHeap {
1055
- type Stack = Vec<Value>;
1056
- type ExpressionStack = Vec<(R, R)>;
1057
- type Result = Vec<Piece<R>>;
1058
- }
1059
-
1060
- /// A DWARF expression evaluator.
1061
- ///
1062
- /// # Usage
1063
- /// A DWARF expression may require additional data to produce a final result,
1064
- /// such as the value of a register or a memory location. Once initial setup
1065
- /// is complete (i.e. `set_initial_value()`, `set_object_address()`) the
1066
- /// consumer calls the `evaluate()` method. That returns an `EvaluationResult`,
1067
- /// which is either `EvaluationResult::Complete` or a value indicating what
1068
- /// data is needed to resume the `Evaluation`. The consumer is responsible for
1069
- /// producing that data and resuming the computation with the correct method,
1070
- /// as documented for `EvaluationResult`. Only once an `EvaluationResult::Complete`
1071
- /// is returned can the consumer call `result()`.
1072
- ///
1073
- /// This design allows the consumer of `Evaluation` to decide how and when to
1074
- /// produce the required data and resume the computation. The `Evaluation` can
1075
- /// be driven synchronously (as shown below) or by some asynchronous mechanism
1076
- /// such as futures.
1077
- ///
1078
- /// # Examples
1079
- /// ```rust,no_run
1080
- /// use gimli::{EndianSlice, Evaluation, EvaluationResult, Format, LittleEndian, Value};
1081
- /// # let bytecode = EndianSlice::new(&[], LittleEndian);
1082
- /// # let encoding = unimplemented!();
1083
- /// # let get_register_value = |_, _| Value::Generic(42);
1084
- /// # let get_frame_base = || 0xdeadbeef;
1085
- ///
1086
- /// let mut eval = Evaluation::new(bytecode, encoding);
1087
- /// let mut result = eval.evaluate().unwrap();
1088
- /// while result != EvaluationResult::Complete {
1089
- /// match result {
1090
- /// EvaluationResult::RequiresRegister { register, base_type } => {
1091
- /// let value = get_register_value(register, base_type);
1092
- /// result = eval.resume_with_register(value).unwrap();
1093
- /// },
1094
- /// EvaluationResult::RequiresFrameBase => {
1095
- /// let frame_base = get_frame_base();
1096
- /// result = eval.resume_with_frame_base(frame_base).unwrap();
1097
- /// },
1098
- /// _ => unimplemented!(),
1099
- /// };
1100
- /// }
1101
- ///
1102
- /// let result = eval.result();
1103
- /// println!("{:?}", result);
1104
- /// ```
1105
- #[derive(Debug)]
1106
- pub struct Evaluation<R: Reader, S: EvaluationStorage<R> = StoreOnHeap> {
1107
- bytecode: R,
1108
- encoding: Encoding,
1109
- object_address: Option<u64>,
1110
- max_iterations: Option<u32>,
1111
- iteration: u32,
1112
- state: EvaluationState<R>,
1113
-
1114
- // Stack operations are done on word-sized values. We do all
1115
- // operations on 64-bit values, and then mask the results
1116
- // appropriately when popping.
1117
- addr_mask: u64,
1118
-
1119
- // The stack.
1120
- stack: ArrayVec<S::Stack>,
1121
-
1122
- // The next operation to decode and evaluate.
1123
- pc: R,
1124
-
1125
- // If we see a DW_OP_call* operation, the previous PC and bytecode
1126
- // is stored here while evaluating the subroutine.
1127
- expression_stack: ArrayVec<S::ExpressionStack>,
1128
-
1129
- result: ArrayVec<S::Result>,
1130
- }
1131
-
1132
- #[cfg(feature = "read")]
1133
- impl<R: Reader> Evaluation<R> {
1134
- /// Create a new DWARF expression evaluator.
1135
- ///
1136
- /// The new evaluator is created without an initial value, without
1137
- /// an object address, and without a maximum number of iterations.
1138
- pub fn new(bytecode: R, encoding: Encoding) -> Self {
1139
- Self::new_in(bytecode, encoding)
1140
- }
1141
-
1142
- /// Get the result of this `Evaluation`.
1143
- ///
1144
- /// # Panics
1145
- /// Panics if this `Evaluation` has not been driven to completion.
1146
- pub fn result(self) -> Vec<Piece<R>> {
1147
- match self.state {
1148
- EvaluationState::Complete => self.result.into_vec(),
1149
- _ => {
1150
- panic!("Called `Evaluation::result` on an `Evaluation` that has not been completed")
1151
- }
1152
- }
1153
- }
1154
- }
1155
-
1156
- impl<R: Reader, S: EvaluationStorage<R>> Evaluation<R, S> {
1157
- /// Create a new DWARF expression evaluator.
1158
- ///
1159
- /// The new evaluator is created without an initial value, without
1160
- /// an object address, and without a maximum number of iterations.
1161
- pub fn new_in(bytecode: R, encoding: Encoding) -> Self {
1162
- let pc = bytecode.clone();
1163
- Evaluation {
1164
- bytecode,
1165
- encoding,
1166
- object_address: None,
1167
- max_iterations: None,
1168
- iteration: 0,
1169
- state: EvaluationState::Start(None),
1170
- addr_mask: if encoding.address_size == 8 {
1171
- !0u64
1172
- } else {
1173
- (1 << (8 * u64::from(encoding.address_size))) - 1
1174
- },
1175
- stack: Default::default(),
1176
- expression_stack: Default::default(),
1177
- pc,
1178
- result: Default::default(),
1179
- }
1180
- }
1181
-
1182
- /// Set an initial value to be pushed on the DWARF expression
1183
- /// evaluator's stack. This can be used in cases like
1184
- /// `DW_AT_vtable_elem_location`, which require a value on the
1185
- /// stack before evaluation commences. If no initial value is
1186
- /// set, and the expression uses an opcode requiring the initial
1187
- /// value, then evaluation will fail with an error.
1188
- ///
1189
- /// # Panics
1190
- /// Panics if `set_initial_value()` has already been called, or if
1191
- /// `evaluate()` has already been called.
1192
- pub fn set_initial_value(&mut self, value: u64) {
1193
- match self.state {
1194
- EvaluationState::Start(None) => {
1195
- self.state = EvaluationState::Start(Some(value));
1196
- }
1197
- _ => panic!(
1198
- "`Evaluation::set_initial_value` was called twice, or after evaluation began."
1199
- ),
1200
- };
1201
- }
1202
-
1203
- /// Set the enclosing object's address, as used by
1204
- /// `DW_OP_push_object_address`. If no object address is set, and
1205
- /// the expression uses an opcode requiring the object address,
1206
- /// then evaluation will fail with an error.
1207
- pub fn set_object_address(&mut self, value: u64) {
1208
- self.object_address = Some(value);
1209
- }
1210
-
1211
- /// Set the maximum number of iterations to be allowed by the
1212
- /// expression evaluator.
1213
- ///
1214
- /// An iteration corresponds approximately to the evaluation of a
1215
- /// single operation in an expression ("approximately" because the
1216
- /// implementation may allow two such operations in some cases).
1217
- /// The default is not to have a maximum; once set, it's not
1218
- /// possible to go back to this default state. This value can be
1219
- /// set to avoid denial of service attacks by bad DWARF bytecode.
1220
- pub fn set_max_iterations(&mut self, value: u32) {
1221
- self.max_iterations = Some(value);
1222
- }
1223
-
1224
- fn pop(&mut self) -> Result<Value> {
1225
- match self.stack.pop() {
1226
- Some(value) => Ok(value),
1227
- None => Err(Error::NotEnoughStackItems),
1228
- }
1229
- }
1230
-
1231
- fn push(&mut self, value: Value) -> Result<()> {
1232
- self.stack.try_push(value).map_err(|_| Error::StackFull)
1233
- }
1234
-
1235
- fn evaluate_one_operation(&mut self) -> Result<OperationEvaluationResult<R>> {
1236
- let operation = Operation::parse(&mut self.pc, self.encoding)?;
1237
-
1238
- match operation {
1239
- Operation::Deref {
1240
- base_type,
1241
- size,
1242
- space,
1243
- } => {
1244
- let entry = self.pop()?;
1245
- let addr = entry.to_u64(self.addr_mask)?;
1246
- let addr_space = if space {
1247
- let entry = self.pop()?;
1248
- let value = entry.to_u64(self.addr_mask)?;
1249
- Some(value)
1250
- } else {
1251
- None
1252
- };
1253
- return Ok(OperationEvaluationResult::Waiting(
1254
- EvaluationWaiting::Memory,
1255
- EvaluationResult::RequiresMemory {
1256
- address: addr,
1257
- size,
1258
- space: addr_space,
1259
- base_type,
1260
- },
1261
- ));
1262
- }
1263
-
1264
- Operation::Drop => {
1265
- self.pop()?;
1266
- }
1267
- Operation::Pick { index } => {
1268
- let len = self.stack.len();
1269
- let index = index as usize;
1270
- if index >= len {
1271
- return Err(Error::NotEnoughStackItems);
1272
- }
1273
- let value = self.stack[len - index - 1];
1274
- self.push(value)?;
1275
- }
1276
- Operation::Swap => {
1277
- let top = self.pop()?;
1278
- let next = self.pop()?;
1279
- self.push(top)?;
1280
- self.push(next)?;
1281
- }
1282
- Operation::Rot => {
1283
- let one = self.pop()?;
1284
- let two = self.pop()?;
1285
- let three = self.pop()?;
1286
- self.push(one)?;
1287
- self.push(three)?;
1288
- self.push(two)?;
1289
- }
1290
-
1291
- Operation::Abs => {
1292
- let value = self.pop()?;
1293
- let result = value.abs(self.addr_mask)?;
1294
- self.push(result)?;
1295
- }
1296
- Operation::And => {
1297
- let rhs = self.pop()?;
1298
- let lhs = self.pop()?;
1299
- let result = lhs.and(rhs, self.addr_mask)?;
1300
- self.push(result)?;
1301
- }
1302
- Operation::Div => {
1303
- let rhs = self.pop()?;
1304
- let lhs = self.pop()?;
1305
- let result = lhs.div(rhs, self.addr_mask)?;
1306
- self.push(result)?;
1307
- }
1308
- Operation::Minus => {
1309
- let rhs = self.pop()?;
1310
- let lhs = self.pop()?;
1311
- let result = lhs.sub(rhs, self.addr_mask)?;
1312
- self.push(result)?;
1313
- }
1314
- Operation::Mod => {
1315
- let rhs = self.pop()?;
1316
- let lhs = self.pop()?;
1317
- let result = lhs.rem(rhs, self.addr_mask)?;
1318
- self.push(result)?;
1319
- }
1320
- Operation::Mul => {
1321
- let rhs = self.pop()?;
1322
- let lhs = self.pop()?;
1323
- let result = lhs.mul(rhs, self.addr_mask)?;
1324
- self.push(result)?;
1325
- }
1326
- Operation::Neg => {
1327
- let v = self.pop()?;
1328
- let result = v.neg(self.addr_mask)?;
1329
- self.push(result)?;
1330
- }
1331
- Operation::Not => {
1332
- let value = self.pop()?;
1333
- let result = value.not(self.addr_mask)?;
1334
- self.push(result)?;
1335
- }
1336
- Operation::Or => {
1337
- let rhs = self.pop()?;
1338
- let lhs = self.pop()?;
1339
- let result = lhs.or(rhs, self.addr_mask)?;
1340
- self.push(result)?;
1341
- }
1342
- Operation::Plus => {
1343
- let rhs = self.pop()?;
1344
- let lhs = self.pop()?;
1345
- let result = lhs.add(rhs, self.addr_mask)?;
1346
- self.push(result)?;
1347
- }
1348
- Operation::PlusConstant { value } => {
1349
- let lhs = self.pop()?;
1350
- let rhs = Value::from_u64(lhs.value_type(), value)?;
1351
- let result = lhs.add(rhs, self.addr_mask)?;
1352
- self.push(result)?;
1353
- }
1354
- Operation::Shl => {
1355
- let rhs = self.pop()?;
1356
- let lhs = self.pop()?;
1357
- let result = lhs.shl(rhs, self.addr_mask)?;
1358
- self.push(result)?;
1359
- }
1360
- Operation::Shr => {
1361
- let rhs = self.pop()?;
1362
- let lhs = self.pop()?;
1363
- let result = lhs.shr(rhs, self.addr_mask)?;
1364
- self.push(result)?;
1365
- }
1366
- Operation::Shra => {
1367
- let rhs = self.pop()?;
1368
- let lhs = self.pop()?;
1369
- let result = lhs.shra(rhs, self.addr_mask)?;
1370
- self.push(result)?;
1371
- }
1372
- Operation::Xor => {
1373
- let rhs = self.pop()?;
1374
- let lhs = self.pop()?;
1375
- let result = lhs.xor(rhs, self.addr_mask)?;
1376
- self.push(result)?;
1377
- }
1378
-
1379
- Operation::Bra { target } => {
1380
- let entry = self.pop()?;
1381
- let v = entry.to_u64(self.addr_mask)?;
1382
- if v != 0 {
1383
- self.pc = compute_pc(&self.pc, &self.bytecode, target)?;
1384
- }
1385
- }
1386
-
1387
- Operation::Eq => {
1388
- let rhs = self.pop()?;
1389
- let lhs = self.pop()?;
1390
- let result = lhs.eq(rhs, self.addr_mask)?;
1391
- self.push(result)?;
1392
- }
1393
- Operation::Ge => {
1394
- let rhs = self.pop()?;
1395
- let lhs = self.pop()?;
1396
- let result = lhs.ge(rhs, self.addr_mask)?;
1397
- self.push(result)?;
1398
- }
1399
- Operation::Gt => {
1400
- let rhs = self.pop()?;
1401
- let lhs = self.pop()?;
1402
- let result = lhs.gt(rhs, self.addr_mask)?;
1403
- self.push(result)?;
1404
- }
1405
- Operation::Le => {
1406
- let rhs = self.pop()?;
1407
- let lhs = self.pop()?;
1408
- let result = lhs.le(rhs, self.addr_mask)?;
1409
- self.push(result)?;
1410
- }
1411
- Operation::Lt => {
1412
- let rhs = self.pop()?;
1413
- let lhs = self.pop()?;
1414
- let result = lhs.lt(rhs, self.addr_mask)?;
1415
- self.push(result)?;
1416
- }
1417
- Operation::Ne => {
1418
- let rhs = self.pop()?;
1419
- let lhs = self.pop()?;
1420
- let result = lhs.ne(rhs, self.addr_mask)?;
1421
- self.push(result)?;
1422
- }
1423
-
1424
- Operation::Skip { target } => {
1425
- self.pc = compute_pc(&self.pc, &self.bytecode, target)?;
1426
- }
1427
-
1428
- Operation::UnsignedConstant { value } => {
1429
- self.push(Value::Generic(value))?;
1430
- }
1431
-
1432
- Operation::SignedConstant { value } => {
1433
- self.push(Value::Generic(value as u64))?;
1434
- }
1435
-
1436
- Operation::RegisterOffset {
1437
- register,
1438
- offset,
1439
- base_type,
1440
- } => {
1441
- return Ok(OperationEvaluationResult::Waiting(
1442
- EvaluationWaiting::Register { offset },
1443
- EvaluationResult::RequiresRegister {
1444
- register,
1445
- base_type,
1446
- },
1447
- ));
1448
- }
1449
-
1450
- Operation::FrameOffset { offset } => {
1451
- return Ok(OperationEvaluationResult::Waiting(
1452
- EvaluationWaiting::FrameBase { offset },
1453
- EvaluationResult::RequiresFrameBase,
1454
- ));
1455
- }
1456
-
1457
- Operation::Nop => {}
1458
-
1459
- Operation::PushObjectAddress => {
1460
- if let Some(value) = self.object_address {
1461
- self.push(Value::Generic(value))?;
1462
- } else {
1463
- return Err(Error::InvalidPushObjectAddress);
1464
- }
1465
- }
1466
-
1467
- Operation::Call { offset } => {
1468
- return Ok(OperationEvaluationResult::Waiting(
1469
- EvaluationWaiting::AtLocation,
1470
- EvaluationResult::RequiresAtLocation(offset),
1471
- ));
1472
- }
1473
-
1474
- Operation::TLS => {
1475
- let entry = self.pop()?;
1476
- let index = entry.to_u64(self.addr_mask)?;
1477
- return Ok(OperationEvaluationResult::Waiting(
1478
- EvaluationWaiting::Tls,
1479
- EvaluationResult::RequiresTls(index),
1480
- ));
1481
- }
1482
-
1483
- Operation::CallFrameCFA => {
1484
- return Ok(OperationEvaluationResult::Waiting(
1485
- EvaluationWaiting::Cfa,
1486
- EvaluationResult::RequiresCallFrameCfa,
1487
- ));
1488
- }
1489
-
1490
- Operation::Register { register } => {
1491
- let location = Location::Register { register };
1492
- return Ok(OperationEvaluationResult::Complete { location });
1493
- }
1494
-
1495
- Operation::ImplicitValue { ref data } => {
1496
- let location = Location::Bytes {
1497
- value: data.clone(),
1498
- };
1499
- return Ok(OperationEvaluationResult::Complete { location });
1500
- }
1501
-
1502
- Operation::StackValue => {
1503
- let value = self.pop()?;
1504
- let location = Location::Value { value };
1505
- return Ok(OperationEvaluationResult::Complete { location });
1506
- }
1507
-
1508
- Operation::ImplicitPointer { value, byte_offset } => {
1509
- let location = Location::ImplicitPointer { value, byte_offset };
1510
- return Ok(OperationEvaluationResult::Complete { location });
1511
- }
1512
-
1513
- Operation::EntryValue { ref expression } => {
1514
- return Ok(OperationEvaluationResult::Waiting(
1515
- EvaluationWaiting::EntryValue,
1516
- EvaluationResult::RequiresEntryValue(Expression(expression.clone())),
1517
- ));
1518
- }
1519
-
1520
- Operation::ParameterRef { offset } => {
1521
- return Ok(OperationEvaluationResult::Waiting(
1522
- EvaluationWaiting::ParameterRef,
1523
- EvaluationResult::RequiresParameterRef(offset),
1524
- ));
1525
- }
1526
-
1527
- Operation::Address { address } => {
1528
- return Ok(OperationEvaluationResult::Waiting(
1529
- EvaluationWaiting::RelocatedAddress,
1530
- EvaluationResult::RequiresRelocatedAddress(address),
1531
- ));
1532
- }
1533
-
1534
- Operation::AddressIndex { index } => {
1535
- return Ok(OperationEvaluationResult::Waiting(
1536
- EvaluationWaiting::IndexedAddress,
1537
- EvaluationResult::RequiresIndexedAddress {
1538
- index,
1539
- relocate: true,
1540
- },
1541
- ));
1542
- }
1543
-
1544
- Operation::ConstantIndex { index } => {
1545
- return Ok(OperationEvaluationResult::Waiting(
1546
- EvaluationWaiting::IndexedAddress,
1547
- EvaluationResult::RequiresIndexedAddress {
1548
- index,
1549
- relocate: false,
1550
- },
1551
- ));
1552
- }
1553
-
1554
- Operation::Piece {
1555
- size_in_bits,
1556
- bit_offset,
1557
- } => {
1558
- let location = if self.stack.is_empty() {
1559
- Location::Empty
1560
- } else {
1561
- let entry = self.pop()?;
1562
- let address = entry.to_u64(self.addr_mask)?;
1563
- Location::Address { address }
1564
- };
1565
- self.result
1566
- .try_push(Piece {
1567
- size_in_bits: Some(size_in_bits),
1568
- bit_offset,
1569
- location,
1570
- })
1571
- .map_err(|_| Error::StackFull)?;
1572
- return Ok(OperationEvaluationResult::Piece);
1573
- }
1574
-
1575
- Operation::TypedLiteral { base_type, value } => {
1576
- return Ok(OperationEvaluationResult::Waiting(
1577
- EvaluationWaiting::TypedLiteral { value },
1578
- EvaluationResult::RequiresBaseType(base_type),
1579
- ));
1580
- }
1581
- Operation::Convert { base_type } => {
1582
- return Ok(OperationEvaluationResult::Waiting(
1583
- EvaluationWaiting::Convert,
1584
- EvaluationResult::RequiresBaseType(base_type),
1585
- ));
1586
- }
1587
- Operation::Reinterpret { base_type } => {
1588
- return Ok(OperationEvaluationResult::Waiting(
1589
- EvaluationWaiting::Reinterpret,
1590
- EvaluationResult::RequiresBaseType(base_type),
1591
- ));
1592
- }
1593
- Operation::WasmLocal { .. }
1594
- | Operation::WasmGlobal { .. }
1595
- | Operation::WasmStack { .. } => {
1596
- return Err(Error::UnsupportedEvaluation);
1597
- }
1598
- }
1599
-
1600
- Ok(OperationEvaluationResult::Incomplete)
1601
- }
1602
-
1603
- /// Get the result of this `Evaluation`.
1604
- ///
1605
- /// # Panics
1606
- /// Panics if this `Evaluation` has not been driven to completion.
1607
- pub fn as_result(&self) -> &[Piece<R>] {
1608
- match self.state {
1609
- EvaluationState::Complete => &self.result,
1610
- _ => {
1611
- panic!("Called `Evaluation::result` on an `Evaluation` that has not been completed")
1612
- }
1613
- }
1614
- }
1615
-
1616
- /// Evaluate a DWARF expression. This method should only ever be called
1617
- /// once. If the returned `EvaluationResult` is not
1618
- /// `EvaluationResult::Complete`, the caller should provide the required
1619
- /// value and resume the evaluation by calling the appropriate resume_with
1620
- /// method on `Evaluation`.
1621
- pub fn evaluate(&mut self) -> Result<EvaluationResult<R>> {
1622
- match self.state {
1623
- EvaluationState::Start(initial_value) => {
1624
- if let Some(value) = initial_value {
1625
- self.push(Value::Generic(value))?;
1626
- }
1627
- self.state = EvaluationState::Ready;
1628
- }
1629
- EvaluationState::Ready => {}
1630
- EvaluationState::Error(err) => return Err(err),
1631
- EvaluationState::Complete => return Ok(EvaluationResult::Complete),
1632
- EvaluationState::Waiting(_) => panic!(),
1633
- };
1634
-
1635
- match self.evaluate_internal() {
1636
- Ok(r) => Ok(r),
1637
- Err(e) => {
1638
- self.state = EvaluationState::Error(e);
1639
- Err(e)
1640
- }
1641
- }
1642
- }
1643
-
1644
- /// Resume the `Evaluation` with the provided memory `value`. This will apply
1645
- /// the provided memory value to the evaluation and continue evaluating
1646
- /// opcodes until the evaluation is completed, reaches an error, or needs
1647
- /// more information again.
1648
- ///
1649
- /// # Panics
1650
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresMemory`.
1651
- pub fn resume_with_memory(&mut self, value: Value) -> Result<EvaluationResult<R>> {
1652
- match self.state {
1653
- EvaluationState::Error(err) => return Err(err),
1654
- EvaluationState::Waiting(EvaluationWaiting::Memory) => {
1655
- self.push(value)?;
1656
- }
1657
- _ => panic!(
1658
- "Called `Evaluation::resume_with_memory` without a preceding `EvaluationResult::RequiresMemory`"
1659
- ),
1660
- };
1661
-
1662
- self.evaluate_internal()
1663
- }
1664
-
1665
- /// Resume the `Evaluation` with the provided `register` value. This will apply
1666
- /// the provided register value to the evaluation and continue evaluating
1667
- /// opcodes until the evaluation is completed, reaches an error, or needs
1668
- /// more information again.
1669
- ///
1670
- /// # Panics
1671
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresRegister`.
1672
- pub fn resume_with_register(&mut self, value: Value) -> Result<EvaluationResult<R>> {
1673
- match self.state {
1674
- EvaluationState::Error(err) => return Err(err),
1675
- EvaluationState::Waiting(EvaluationWaiting::Register { offset }) => {
1676
- let offset = Value::from_u64(value.value_type(), offset as u64)?;
1677
- let value = value.add(offset, self.addr_mask)?;
1678
- self.push(value)?;
1679
- }
1680
- _ => panic!(
1681
- "Called `Evaluation::resume_with_register` without a preceding `EvaluationResult::RequiresRegister`"
1682
- ),
1683
- };
1684
-
1685
- self.evaluate_internal()
1686
- }
1687
-
1688
- /// Resume the `Evaluation` with the provided `frame_base`. This will
1689
- /// apply the provided frame base value to the evaluation and continue
1690
- /// evaluating opcodes until the evaluation is completed, reaches an error,
1691
- /// or needs more information again.
1692
- ///
1693
- /// # Panics
1694
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresFrameBase`.
1695
- pub fn resume_with_frame_base(&mut self, frame_base: u64) -> Result<EvaluationResult<R>> {
1696
- match self.state {
1697
- EvaluationState::Error(err) => return Err(err),
1698
- EvaluationState::Waiting(EvaluationWaiting::FrameBase { offset }) => {
1699
- self.push(Value::Generic(frame_base.wrapping_add(offset as u64)))?;
1700
- }
1701
- _ => panic!(
1702
- "Called `Evaluation::resume_with_frame_base` without a preceding `EvaluationResult::RequiresFrameBase`"
1703
- ),
1704
- };
1705
-
1706
- self.evaluate_internal()
1707
- }
1708
-
1709
- /// Resume the `Evaluation` with the provided `value`. This will apply
1710
- /// the provided TLS value to the evaluation and continue evaluating
1711
- /// opcodes until the evaluation is completed, reaches an error, or needs
1712
- /// more information again.
1713
- ///
1714
- /// # Panics
1715
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresTls`.
1716
- pub fn resume_with_tls(&mut self, value: u64) -> Result<EvaluationResult<R>> {
1717
- match self.state {
1718
- EvaluationState::Error(err) => return Err(err),
1719
- EvaluationState::Waiting(EvaluationWaiting::Tls) => {
1720
- self.push(Value::Generic(value))?;
1721
- }
1722
- _ => panic!(
1723
- "Called `Evaluation::resume_with_tls` without a preceding `EvaluationResult::RequiresTls`"
1724
- ),
1725
- };
1726
-
1727
- self.evaluate_internal()
1728
- }
1729
-
1730
- /// Resume the `Evaluation` with the provided `cfa`. This will
1731
- /// apply the provided CFA value to the evaluation and continue evaluating
1732
- /// opcodes until the evaluation is completed, reaches an error, or needs
1733
- /// more information again.
1734
- ///
1735
- /// # Panics
1736
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresCallFrameCfa`.
1737
- pub fn resume_with_call_frame_cfa(&mut self, cfa: u64) -> Result<EvaluationResult<R>> {
1738
- match self.state {
1739
- EvaluationState::Error(err) => return Err(err),
1740
- EvaluationState::Waiting(EvaluationWaiting::Cfa) => {
1741
- self.push(Value::Generic(cfa))?;
1742
- }
1743
- _ => panic!(
1744
- "Called `Evaluation::resume_with_call_frame_cfa` without a preceding `EvaluationResult::RequiresCallFrameCfa`"
1745
- ),
1746
- };
1747
-
1748
- self.evaluate_internal()
1749
- }
1750
-
1751
- /// Resume the `Evaluation` with the provided `bytes`. This will
1752
- /// continue processing the evaluation with the new expression provided
1753
- /// until the evaluation is completed, reaches an error, or needs more
1754
- /// information again.
1755
- ///
1756
- /// # Panics
1757
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresAtLocation`.
1758
- pub fn resume_with_at_location(&mut self, mut bytes: R) -> Result<EvaluationResult<R>> {
1759
- match self.state {
1760
- EvaluationState::Error(err) => return Err(err),
1761
- EvaluationState::Waiting(EvaluationWaiting::AtLocation) => {
1762
- if !bytes.is_empty() {
1763
- let mut pc = bytes.clone();
1764
- mem::swap(&mut pc, &mut self.pc);
1765
- mem::swap(&mut bytes, &mut self.bytecode);
1766
- self.expression_stack.try_push((pc, bytes)).map_err(|_| Error::StackFull)?;
1767
- }
1768
- }
1769
- _ => panic!(
1770
- "Called `Evaluation::resume_with_at_location` without a precedeing `EvaluationResult::RequiresAtLocation`"
1771
- ),
1772
- };
1773
-
1774
- self.evaluate_internal()
1775
- }
1776
-
1777
- /// Resume the `Evaluation` with the provided `entry_value`. This will
1778
- /// apply the provided entry value to the evaluation and continue evaluating
1779
- /// opcodes until the evaluation is completed, reaches an error, or needs
1780
- /// more information again.
1781
- ///
1782
- /// # Panics
1783
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresEntryValue`.
1784
- pub fn resume_with_entry_value(&mut self, entry_value: Value) -> Result<EvaluationResult<R>> {
1785
- match self.state {
1786
- EvaluationState::Error(err) => return Err(err),
1787
- EvaluationState::Waiting(EvaluationWaiting::EntryValue) => {
1788
- self.push(entry_value)?;
1789
- }
1790
- _ => panic!(
1791
- "Called `Evaluation::resume_with_entry_value` without a preceding `EvaluationResult::RequiresEntryValue`"
1792
- ),
1793
- };
1794
-
1795
- self.evaluate_internal()
1796
- }
1797
-
1798
- /// Resume the `Evaluation` with the provided `parameter_value`. This will
1799
- /// apply the provided parameter value to the evaluation and continue evaluating
1800
- /// opcodes until the evaluation is completed, reaches an error, or needs
1801
- /// more information again.
1802
- ///
1803
- /// # Panics
1804
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresParameterRef`.
1805
- pub fn resume_with_parameter_ref(
1806
- &mut self,
1807
- parameter_value: u64,
1808
- ) -> Result<EvaluationResult<R>> {
1809
- match self.state {
1810
- EvaluationState::Error(err) => return Err(err),
1811
- EvaluationState::Waiting(EvaluationWaiting::ParameterRef) => {
1812
- self.push(Value::Generic(parameter_value))?;
1813
- }
1814
- _ => panic!(
1815
- "Called `Evaluation::resume_with_parameter_ref` without a preceding `EvaluationResult::RequiresParameterRef`"
1816
- ),
1817
- };
1818
-
1819
- self.evaluate_internal()
1820
- }
1821
-
1822
- /// Resume the `Evaluation` with the provided relocated `address`. This will use the
1823
- /// provided relocated address for the operation that required it, and continue evaluating
1824
- /// opcodes until the evaluation is completed, reaches an error, or needs
1825
- /// more information again.
1826
- ///
1827
- /// # Panics
1828
- /// Panics if this `Evaluation` did not previously stop with
1829
- /// `EvaluationResult::RequiresRelocatedAddress`.
1830
- pub fn resume_with_relocated_address(&mut self, address: u64) -> Result<EvaluationResult<R>> {
1831
- match self.state {
1832
- EvaluationState::Error(err) => return Err(err),
1833
- EvaluationState::Waiting(EvaluationWaiting::RelocatedAddress) => {
1834
- self.push(Value::Generic(address))?;
1835
- }
1836
- _ => panic!(
1837
- "Called `Evaluation::resume_with_relocated_address` without a preceding `EvaluationResult::RequiresRelocatedAddress`"
1838
- ),
1839
- };
1840
-
1841
- self.evaluate_internal()
1842
- }
1843
-
1844
- /// Resume the `Evaluation` with the provided indexed `address`. This will use the
1845
- /// provided indexed address for the operation that required it, and continue evaluating
1846
- /// opcodes until the evaluation is completed, reaches an error, or needs
1847
- /// more information again.
1848
- ///
1849
- /// # Panics
1850
- /// Panics if this `Evaluation` did not previously stop with
1851
- /// `EvaluationResult::RequiresIndexedAddress`.
1852
- pub fn resume_with_indexed_address(&mut self, address: u64) -> Result<EvaluationResult<R>> {
1853
- match self.state {
1854
- EvaluationState::Error(err) => return Err(err),
1855
- EvaluationState::Waiting(EvaluationWaiting::IndexedAddress) => {
1856
- self.push(Value::Generic(address))?;
1857
- }
1858
- _ => panic!(
1859
- "Called `Evaluation::resume_with_indexed_address` without a preceding `EvaluationResult::RequiresIndexedAddress`"
1860
- ),
1861
- };
1862
-
1863
- self.evaluate_internal()
1864
- }
1865
-
1866
- /// Resume the `Evaluation` with the provided `base_type`. This will use the
1867
- /// provided base type for the operation that required it, and continue evaluating
1868
- /// opcodes until the evaluation is completed, reaches an error, or needs
1869
- /// more information again.
1870
- ///
1871
- /// # Panics
1872
- /// Panics if this `Evaluation` did not previously stop with `EvaluationResult::RequiresBaseType`.
1873
- pub fn resume_with_base_type(&mut self, base_type: ValueType) -> Result<EvaluationResult<R>> {
1874
- let value = match self.state {
1875
- EvaluationState::Error(err) => return Err(err),
1876
- EvaluationState::Waiting(EvaluationWaiting::TypedLiteral { ref value }) => {
1877
- Value::parse(base_type, value.clone())?
1878
- }
1879
- EvaluationState::Waiting(EvaluationWaiting::Convert) => {
1880
- let entry = self.pop()?;
1881
- entry.convert(base_type, self.addr_mask)?
1882
- }
1883
- EvaluationState::Waiting(EvaluationWaiting::Reinterpret) => {
1884
- let entry = self.pop()?;
1885
- entry.reinterpret(base_type, self.addr_mask)?
1886
- }
1887
- _ => panic!(
1888
- "Called `Evaluation::resume_with_base_type` without a preceding `EvaluationResult::RequiresBaseType`"
1889
- ),
1890
- };
1891
- self.push(value)?;
1892
- self.evaluate_internal()
1893
- }
1894
-
1895
- fn end_of_expression(&mut self) -> bool {
1896
- while self.pc.is_empty() {
1897
- match self.expression_stack.pop() {
1898
- Some((newpc, newbytes)) => {
1899
- self.pc = newpc;
1900
- self.bytecode = newbytes;
1901
- }
1902
- None => return true,
1903
- }
1904
- }
1905
- false
1906
- }
1907
-
1908
- fn evaluate_internal(&mut self) -> Result<EvaluationResult<R>> {
1909
- while !self.end_of_expression() {
1910
- self.iteration += 1;
1911
- if let Some(max_iterations) = self.max_iterations {
1912
- if self.iteration > max_iterations {
1913
- return Err(Error::TooManyIterations);
1914
- }
1915
- }
1916
-
1917
- let op_result = self.evaluate_one_operation()?;
1918
- match op_result {
1919
- OperationEvaluationResult::Piece => {}
1920
- OperationEvaluationResult::Incomplete => {
1921
- if self.end_of_expression() && !self.result.is_empty() {
1922
- // We saw a piece earlier and then some
1923
- // unterminated piece. It's not clear this is
1924
- // well-defined.
1925
- return Err(Error::InvalidPiece);
1926
- }
1927
- }
1928
- OperationEvaluationResult::Complete { location } => {
1929
- if self.end_of_expression() {
1930
- if !self.result.is_empty() {
1931
- // We saw a piece earlier and then some
1932
- // unterminated piece. It's not clear this is
1933
- // well-defined.
1934
- return Err(Error::InvalidPiece);
1935
- }
1936
- self.result
1937
- .try_push(Piece {
1938
- size_in_bits: None,
1939
- bit_offset: None,
1940
- location,
1941
- })
1942
- .map_err(|_| Error::StackFull)?;
1943
- } else {
1944
- // If there are more operations, then the next operation must
1945
- // be a Piece.
1946
- match Operation::parse(&mut self.pc, self.encoding)? {
1947
- Operation::Piece {
1948
- size_in_bits,
1949
- bit_offset,
1950
- } => {
1951
- self.result
1952
- .try_push(Piece {
1953
- size_in_bits: Some(size_in_bits),
1954
- bit_offset,
1955
- location,
1956
- })
1957
- .map_err(|_| Error::StackFull)?;
1958
- }
1959
- _ => {
1960
- let value =
1961
- self.bytecode.len().into_u64() - self.pc.len().into_u64() - 1;
1962
- return Err(Error::InvalidExpressionTerminator(value));
1963
- }
1964
- }
1965
- }
1966
- }
1967
- OperationEvaluationResult::Waiting(waiting, result) => {
1968
- self.state = EvaluationState::Waiting(waiting);
1969
- return Ok(result);
1970
- }
1971
- };
1972
- }
1973
-
1974
- // If no pieces have been seen, use the stack top as the
1975
- // result.
1976
- if self.result.is_empty() {
1977
- let entry = self.pop()?;
1978
- let addr = entry.to_u64(self.addr_mask)?;
1979
- self.result
1980
- .try_push(Piece {
1981
- size_in_bits: None,
1982
- bit_offset: None,
1983
- location: Location::Address { address: addr },
1984
- })
1985
- .map_err(|_| Error::StackFull)?;
1986
- }
1987
-
1988
- self.state = EvaluationState::Complete;
1989
- Ok(EvaluationResult::Complete)
1990
- }
1991
- }
1992
-
1993
- #[cfg(test)]
1994
- // Tests require leb128::write.
1995
- #[cfg(feature = "write")]
1996
- mod tests {
1997
- use super::*;
1998
- use crate::common::Format;
1999
- use crate::constants;
2000
- use crate::endianity::LittleEndian;
2001
- use crate::leb128;
2002
- use crate::read::{EndianSlice, Error, Result, UnitOffset};
2003
- use crate::test_util::GimliSectionMethods;
2004
- use core::usize;
2005
- use test_assembler::{Endian, Section};
2006
-
2007
- fn encoding4() -> Encoding {
2008
- Encoding {
2009
- format: Format::Dwarf32,
2010
- version: 4,
2011
- address_size: 4,
2012
- }
2013
- }
2014
-
2015
- fn encoding8() -> Encoding {
2016
- Encoding {
2017
- format: Format::Dwarf64,
2018
- version: 4,
2019
- address_size: 8,
2020
- }
2021
- }
2022
-
2023
- #[test]
2024
- fn test_compute_pc() {
2025
- // Contents don't matter for this test, just length.
2026
- let bytes = [0, 1, 2, 3, 4];
2027
- let bytecode = &bytes[..];
2028
- let ebuf = &EndianSlice::new(bytecode, LittleEndian);
2029
-
2030
- assert_eq!(compute_pc(ebuf, ebuf, 0), Ok(*ebuf));
2031
- assert_eq!(
2032
- compute_pc(ebuf, ebuf, -1),
2033
- Err(Error::BadBranchTarget(usize::MAX as u64))
2034
- );
2035
- assert_eq!(compute_pc(ebuf, ebuf, 5), Ok(ebuf.range_from(5..)));
2036
- assert_eq!(
2037
- compute_pc(&ebuf.range_from(3..), ebuf, -2),
2038
- Ok(ebuf.range_from(1..))
2039
- );
2040
- assert_eq!(
2041
- compute_pc(&ebuf.range_from(2..), ebuf, 2),
2042
- Ok(ebuf.range_from(4..))
2043
- );
2044
- }
2045
-
2046
- fn check_op_parse_simple<'input>(
2047
- input: &'input [u8],
2048
- expect: &Operation<EndianSlice<'input, LittleEndian>>,
2049
- encoding: Encoding,
2050
- ) {
2051
- let buf = EndianSlice::new(input, LittleEndian);
2052
- let mut pc = buf;
2053
- let value = Operation::parse(&mut pc, encoding);
2054
- match value {
2055
- Ok(val) => {
2056
- assert_eq!(val, *expect);
2057
- assert_eq!(pc.len(), 0);
2058
- }
2059
- _ => panic!("Unexpected result"),
2060
- }
2061
- }
2062
-
2063
- fn check_op_parse_eof(input: &[u8], encoding: Encoding) {
2064
- let buf = EndianSlice::new(input, LittleEndian);
2065
- let mut pc = buf;
2066
- match Operation::parse(&mut pc, encoding) {
2067
- Err(Error::UnexpectedEof(id)) => {
2068
- assert!(buf.lookup_offset_id(id).is_some());
2069
- }
2070
-
2071
- _ => panic!("Unexpected result"),
2072
- }
2073
- }
2074
-
2075
- fn check_op_parse<F>(
2076
- input: F,
2077
- expect: &Operation<EndianSlice<LittleEndian>>,
2078
- encoding: Encoding,
2079
- ) where
2080
- F: Fn(Section) -> Section,
2081
- {
2082
- let input = input(Section::with_endian(Endian::Little))
2083
- .get_contents()
2084
- .unwrap();
2085
- for i in 1..input.len() {
2086
- check_op_parse_eof(&input[..i], encoding);
2087
- }
2088
- check_op_parse_simple(&input, expect, encoding);
2089
- }
2090
-
2091
- #[test]
2092
- fn test_op_parse_onebyte() {
2093
- // Doesn't matter for this test.
2094
- let encoding = encoding4();
2095
-
2096
- // Test all single-byte opcodes.
2097
- #[rustfmt::skip]
2098
- let inputs = [
2099
- (
2100
- constants::DW_OP_deref,
2101
- Operation::Deref {
2102
- base_type: generic_type(),
2103
- size: encoding.address_size,
2104
- space: false,
2105
- },
2106
- ),
2107
- (constants::DW_OP_dup, Operation::Pick { index: 0 }),
2108
- (constants::DW_OP_drop, Operation::Drop),
2109
- (constants::DW_OP_over, Operation::Pick { index: 1 }),
2110
- (constants::DW_OP_swap, Operation::Swap),
2111
- (constants::DW_OP_rot, Operation::Rot),
2112
- (
2113
- constants::DW_OP_xderef,
2114
- Operation::Deref {
2115
- base_type: generic_type(),
2116
- size: encoding.address_size,
2117
- space: true,
2118
- },
2119
- ),
2120
- (constants::DW_OP_abs, Operation::Abs),
2121
- (constants::DW_OP_and, Operation::And),
2122
- (constants::DW_OP_div, Operation::Div),
2123
- (constants::DW_OP_minus, Operation::Minus),
2124
- (constants::DW_OP_mod, Operation::Mod),
2125
- (constants::DW_OP_mul, Operation::Mul),
2126
- (constants::DW_OP_neg, Operation::Neg),
2127
- (constants::DW_OP_not, Operation::Not),
2128
- (constants::DW_OP_or, Operation::Or),
2129
- (constants::DW_OP_plus, Operation::Plus),
2130
- (constants::DW_OP_shl, Operation::Shl),
2131
- (constants::DW_OP_shr, Operation::Shr),
2132
- (constants::DW_OP_shra, Operation::Shra),
2133
- (constants::DW_OP_xor, Operation::Xor),
2134
- (constants::DW_OP_eq, Operation::Eq),
2135
- (constants::DW_OP_ge, Operation::Ge),
2136
- (constants::DW_OP_gt, Operation::Gt),
2137
- (constants::DW_OP_le, Operation::Le),
2138
- (constants::DW_OP_lt, Operation::Lt),
2139
- (constants::DW_OP_ne, Operation::Ne),
2140
- (constants::DW_OP_lit0, Operation::UnsignedConstant { value: 0 }),
2141
- (constants::DW_OP_lit1, Operation::UnsignedConstant { value: 1 }),
2142
- (constants::DW_OP_lit2, Operation::UnsignedConstant { value: 2 }),
2143
- (constants::DW_OP_lit3, Operation::UnsignedConstant { value: 3 }),
2144
- (constants::DW_OP_lit4, Operation::UnsignedConstant { value: 4 }),
2145
- (constants::DW_OP_lit5, Operation::UnsignedConstant { value: 5 }),
2146
- (constants::DW_OP_lit6, Operation::UnsignedConstant { value: 6 }),
2147
- (constants::DW_OP_lit7, Operation::UnsignedConstant { value: 7 }),
2148
- (constants::DW_OP_lit8, Operation::UnsignedConstant { value: 8 }),
2149
- (constants::DW_OP_lit9, Operation::UnsignedConstant { value: 9 }),
2150
- (constants::DW_OP_lit10, Operation::UnsignedConstant { value: 10 }),
2151
- (constants::DW_OP_lit11, Operation::UnsignedConstant { value: 11 }),
2152
- (constants::DW_OP_lit12, Operation::UnsignedConstant { value: 12 }),
2153
- (constants::DW_OP_lit13, Operation::UnsignedConstant { value: 13 }),
2154
- (constants::DW_OP_lit14, Operation::UnsignedConstant { value: 14 }),
2155
- (constants::DW_OP_lit15, Operation::UnsignedConstant { value: 15 }),
2156
- (constants::DW_OP_lit16, Operation::UnsignedConstant { value: 16 }),
2157
- (constants::DW_OP_lit17, Operation::UnsignedConstant { value: 17 }),
2158
- (constants::DW_OP_lit18, Operation::UnsignedConstant { value: 18 }),
2159
- (constants::DW_OP_lit19, Operation::UnsignedConstant { value: 19 }),
2160
- (constants::DW_OP_lit20, Operation::UnsignedConstant { value: 20 }),
2161
- (constants::DW_OP_lit21, Operation::UnsignedConstant { value: 21 }),
2162
- (constants::DW_OP_lit22, Operation::UnsignedConstant { value: 22 }),
2163
- (constants::DW_OP_lit23, Operation::UnsignedConstant { value: 23 }),
2164
- (constants::DW_OP_lit24, Operation::UnsignedConstant { value: 24 }),
2165
- (constants::DW_OP_lit25, Operation::UnsignedConstant { value: 25 }),
2166
- (constants::DW_OP_lit26, Operation::UnsignedConstant { value: 26 }),
2167
- (constants::DW_OP_lit27, Operation::UnsignedConstant { value: 27 }),
2168
- (constants::DW_OP_lit28, Operation::UnsignedConstant { value: 28 }),
2169
- (constants::DW_OP_lit29, Operation::UnsignedConstant { value: 29 }),
2170
- (constants::DW_OP_lit30, Operation::UnsignedConstant { value: 30 }),
2171
- (constants::DW_OP_lit31, Operation::UnsignedConstant { value: 31 }),
2172
- (constants::DW_OP_reg0, Operation::Register { register: Register(0) }),
2173
- (constants::DW_OP_reg1, Operation::Register { register: Register(1) }),
2174
- (constants::DW_OP_reg2, Operation::Register { register: Register(2) }),
2175
- (constants::DW_OP_reg3, Operation::Register { register: Register(3) }),
2176
- (constants::DW_OP_reg4, Operation::Register { register: Register(4) }),
2177
- (constants::DW_OP_reg5, Operation::Register { register: Register(5) }),
2178
- (constants::DW_OP_reg6, Operation::Register { register: Register(6) }),
2179
- (constants::DW_OP_reg7, Operation::Register { register: Register(7) }),
2180
- (constants::DW_OP_reg8, Operation::Register { register: Register(8) }),
2181
- (constants::DW_OP_reg9, Operation::Register { register: Register(9) }),
2182
- (constants::DW_OP_reg10, Operation::Register { register: Register(10) }),
2183
- (constants::DW_OP_reg11, Operation::Register { register: Register(11) }),
2184
- (constants::DW_OP_reg12, Operation::Register { register: Register(12) }),
2185
- (constants::DW_OP_reg13, Operation::Register { register: Register(13) }),
2186
- (constants::DW_OP_reg14, Operation::Register { register: Register(14) }),
2187
- (constants::DW_OP_reg15, Operation::Register { register: Register(15) }),
2188
- (constants::DW_OP_reg16, Operation::Register { register: Register(16) }),
2189
- (constants::DW_OP_reg17, Operation::Register { register: Register(17) }),
2190
- (constants::DW_OP_reg18, Operation::Register { register: Register(18) }),
2191
- (constants::DW_OP_reg19, Operation::Register { register: Register(19) }),
2192
- (constants::DW_OP_reg20, Operation::Register { register: Register(20) }),
2193
- (constants::DW_OP_reg21, Operation::Register { register: Register(21) }),
2194
- (constants::DW_OP_reg22, Operation::Register { register: Register(22) }),
2195
- (constants::DW_OP_reg23, Operation::Register { register: Register(23) }),
2196
- (constants::DW_OP_reg24, Operation::Register { register: Register(24) }),
2197
- (constants::DW_OP_reg25, Operation::Register { register: Register(25) }),
2198
- (constants::DW_OP_reg26, Operation::Register { register: Register(26) }),
2199
- (constants::DW_OP_reg27, Operation::Register { register: Register(27) }),
2200
- (constants::DW_OP_reg28, Operation::Register { register: Register(28) }),
2201
- (constants::DW_OP_reg29, Operation::Register { register: Register(29) }),
2202
- (constants::DW_OP_reg30, Operation::Register { register: Register(30) }),
2203
- (constants::DW_OP_reg31, Operation::Register { register: Register(31) }),
2204
- (constants::DW_OP_nop, Operation::Nop),
2205
- (constants::DW_OP_push_object_address, Operation::PushObjectAddress),
2206
- (constants::DW_OP_form_tls_address, Operation::TLS),
2207
- (constants::DW_OP_GNU_push_tls_address, Operation::TLS),
2208
- (constants::DW_OP_call_frame_cfa, Operation::CallFrameCFA),
2209
- (constants::DW_OP_stack_value, Operation::StackValue),
2210
- ];
2211
-
2212
- let input = [];
2213
- check_op_parse_eof(&input[..], encoding);
2214
-
2215
- for item in inputs.iter() {
2216
- let (opcode, ref result) = *item;
2217
- check_op_parse(|s| s.D8(opcode.0), result, encoding);
2218
- }
2219
- }
2220
-
2221
- #[test]
2222
- fn test_op_parse_twobyte() {
2223
- // Doesn't matter for this test.
2224
- let encoding = encoding4();
2225
-
2226
- let inputs = [
2227
- (
2228
- constants::DW_OP_const1u,
2229
- 23,
2230
- Operation::UnsignedConstant { value: 23 },
2231
- ),
2232
- (
2233
- constants::DW_OP_const1s,
2234
- (-23i8) as u8,
2235
- Operation::SignedConstant { value: -23 },
2236
- ),
2237
- (constants::DW_OP_pick, 7, Operation::Pick { index: 7 }),
2238
- (
2239
- constants::DW_OP_deref_size,
2240
- 19,
2241
- Operation::Deref {
2242
- base_type: generic_type(),
2243
- size: 19,
2244
- space: false,
2245
- },
2246
- ),
2247
- (
2248
- constants::DW_OP_xderef_size,
2249
- 19,
2250
- Operation::Deref {
2251
- base_type: generic_type(),
2252
- size: 19,
2253
- space: true,
2254
- },
2255
- ),
2256
- ];
2257
-
2258
- for item in inputs.iter() {
2259
- let (opcode, arg, ref result) = *item;
2260
- check_op_parse(|s| s.D8(opcode.0).D8(arg), result, encoding);
2261
- }
2262
- }
2263
-
2264
- #[test]
2265
- fn test_op_parse_threebyte() {
2266
- // Doesn't matter for this test.
2267
- let encoding = encoding4();
2268
-
2269
- // While bra and skip are 3-byte opcodes, they aren't tested here,
2270
- // but rather specially in their own function.
2271
- let inputs = [
2272
- (
2273
- constants::DW_OP_const2u,
2274
- 23,
2275
- Operation::UnsignedConstant { value: 23 },
2276
- ),
2277
- (
2278
- constants::DW_OP_const2s,
2279
- (-23i16) as u16,
2280
- Operation::SignedConstant { value: -23 },
2281
- ),
2282
- (
2283
- constants::DW_OP_call2,
2284
- 1138,
2285
- Operation::Call {
2286
- offset: DieReference::UnitRef(UnitOffset(1138)),
2287
- },
2288
- ),
2289
- (
2290
- constants::DW_OP_bra,
2291
- (-23i16) as u16,
2292
- Operation::Bra { target: -23 },
2293
- ),
2294
- (
2295
- constants::DW_OP_skip,
2296
- (-23i16) as u16,
2297
- Operation::Skip { target: -23 },
2298
- ),
2299
- ];
2300
-
2301
- for item in inputs.iter() {
2302
- let (opcode, arg, ref result) = *item;
2303
- check_op_parse(|s| s.D8(opcode.0).L16(arg), result, encoding);
2304
- }
2305
- }
2306
-
2307
- #[test]
2308
- fn test_op_parse_fivebyte() {
2309
- // There are some tests here that depend on address size.
2310
- let encoding = encoding4();
2311
-
2312
- let inputs = [
2313
- (
2314
- constants::DW_OP_addr,
2315
- 0x1234_5678,
2316
- Operation::Address {
2317
- address: 0x1234_5678,
2318
- },
2319
- ),
2320
- (
2321
- constants::DW_OP_const4u,
2322
- 0x1234_5678,
2323
- Operation::UnsignedConstant { value: 0x1234_5678 },
2324
- ),
2325
- (
2326
- constants::DW_OP_const4s,
2327
- (-23i32) as u32,
2328
- Operation::SignedConstant { value: -23 },
2329
- ),
2330
- (
2331
- constants::DW_OP_call4,
2332
- 0x1234_5678,
2333
- Operation::Call {
2334
- offset: DieReference::UnitRef(UnitOffset(0x1234_5678)),
2335
- },
2336
- ),
2337
- (
2338
- constants::DW_OP_call_ref,
2339
- 0x1234_5678,
2340
- Operation::Call {
2341
- offset: DieReference::DebugInfoRef(DebugInfoOffset(0x1234_5678)),
2342
- },
2343
- ),
2344
- ];
2345
-
2346
- for item in inputs.iter() {
2347
- let (op, arg, ref expect) = *item;
2348
- check_op_parse(|s| s.D8(op.0).L32(arg), expect, encoding);
2349
- }
2350
- }
2351
-
2352
- #[test]
2353
- #[cfg(target_pointer_width = "64")]
2354
- fn test_op_parse_ninebyte() {
2355
- // There are some tests here that depend on address size.
2356
- let encoding = encoding8();
2357
-
2358
- let inputs = [
2359
- (
2360
- constants::DW_OP_addr,
2361
- 0x1234_5678_1234_5678,
2362
- Operation::Address {
2363
- address: 0x1234_5678_1234_5678,
2364
- },
2365
- ),
2366
- (
2367
- constants::DW_OP_const8u,
2368
- 0x1234_5678_1234_5678,
2369
- Operation::UnsignedConstant {
2370
- value: 0x1234_5678_1234_5678,
2371
- },
2372
- ),
2373
- (
2374
- constants::DW_OP_const8s,
2375
- (-23i64) as u64,
2376
- Operation::SignedConstant { value: -23 },
2377
- ),
2378
- (
2379
- constants::DW_OP_call_ref,
2380
- 0x1234_5678_1234_5678,
2381
- Operation::Call {
2382
- offset: DieReference::DebugInfoRef(DebugInfoOffset(0x1234_5678_1234_5678)),
2383
- },
2384
- ),
2385
- ];
2386
-
2387
- for item in inputs.iter() {
2388
- let (op, arg, ref expect) = *item;
2389
- check_op_parse(|s| s.D8(op.0).L64(arg), expect, encoding);
2390
- }
2391
- }
2392
-
2393
- #[test]
2394
- fn test_op_parse_sleb() {
2395
- // Doesn't matter for this test.
2396
- let encoding = encoding4();
2397
-
2398
- let values = [
2399
- -1i64,
2400
- 0,
2401
- 1,
2402
- 0x100,
2403
- 0x1eee_eeee,
2404
- 0x7fff_ffff_ffff_ffff,
2405
- -0x100,
2406
- -0x1eee_eeee,
2407
- -0x7fff_ffff_ffff_ffff,
2408
- ];
2409
- for value in values.iter() {
2410
- let mut inputs = vec![
2411
- (
2412
- constants::DW_OP_consts.0,
2413
- Operation::SignedConstant { value: *value },
2414
- ),
2415
- (
2416
- constants::DW_OP_fbreg.0,
2417
- Operation::FrameOffset { offset: *value },
2418
- ),
2419
- ];
2420
-
2421
- for i in 0..32 {
2422
- inputs.push((
2423
- constants::DW_OP_breg0.0 + i,
2424
- Operation::RegisterOffset {
2425
- register: Register(i.into()),
2426
- offset: *value,
2427
- base_type: UnitOffset(0),
2428
- },
2429
- ));
2430
- }
2431
-
2432
- for item in inputs.iter() {
2433
- let (op, ref expect) = *item;
2434
- check_op_parse(|s| s.D8(op).sleb(*value), expect, encoding);
2435
- }
2436
- }
2437
- }
2438
-
2439
- #[test]
2440
- fn test_op_parse_uleb() {
2441
- // Doesn't matter for this test.
2442
- let encoding = encoding4();
2443
-
2444
- let values = [
2445
- 0,
2446
- 1,
2447
- 0x100,
2448
- (!0u16).into(),
2449
- 0x1eee_eeee,
2450
- 0x7fff_ffff_ffff_ffff,
2451
- !0u64,
2452
- ];
2453
- for value in values.iter() {
2454
- let mut inputs = vec![
2455
- (
2456
- constants::DW_OP_constu,
2457
- Operation::UnsignedConstant { value: *value },
2458
- ),
2459
- (
2460
- constants::DW_OP_plus_uconst,
2461
- Operation::PlusConstant { value: *value },
2462
- ),
2463
- ];
2464
-
2465
- if *value <= (!0u16).into() {
2466
- inputs.push((
2467
- constants::DW_OP_regx,
2468
- Operation::Register {
2469
- register: Register::from_u64(*value).unwrap(),
2470
- },
2471
- ));
2472
- }
2473
-
2474
- if *value <= (!0u32).into() {
2475
- inputs.extend(&[
2476
- (
2477
- constants::DW_OP_addrx,
2478
- Operation::AddressIndex {
2479
- index: DebugAddrIndex(*value as usize),
2480
- },
2481
- ),
2482
- (
2483
- constants::DW_OP_constx,
2484
- Operation::ConstantIndex {
2485
- index: DebugAddrIndex(*value as usize),
2486
- },
2487
- ),
2488
- ]);
2489
- }
2490
-
2491
- // FIXME
2492
- if *value < !0u64 / 8 {
2493
- inputs.push((
2494
- constants::DW_OP_piece,
2495
- Operation::Piece {
2496
- size_in_bits: 8 * value,
2497
- bit_offset: None,
2498
- },
2499
- ));
2500
- }
2501
-
2502
- for item in inputs.iter() {
2503
- let (op, ref expect) = *item;
2504
- let input = Section::with_endian(Endian::Little)
2505
- .D8(op.0)
2506
- .uleb(*value)
2507
- .get_contents()
2508
- .unwrap();
2509
- check_op_parse_simple(&input, expect, encoding);
2510
- }
2511
- }
2512
- }
2513
-
2514
- #[test]
2515
- fn test_op_parse_bregx() {
2516
- // Doesn't matter for this test.
2517
- let encoding = encoding4();
2518
-
2519
- let uvalues = [0, 1, 0x100, !0u16];
2520
- let svalues = [
2521
- -1i64,
2522
- 0,
2523
- 1,
2524
- 0x100,
2525
- 0x1eee_eeee,
2526
- 0x7fff_ffff_ffff_ffff,
2527
- -0x100,
2528
- -0x1eee_eeee,
2529
- -0x7fff_ffff_ffff_ffff,
2530
- ];
2531
-
2532
- for v1 in uvalues.iter() {
2533
- for v2 in svalues.iter() {
2534
- check_op_parse(
2535
- |s| s.D8(constants::DW_OP_bregx.0).uleb((*v1).into()).sleb(*v2),
2536
- &Operation::RegisterOffset {
2537
- register: Register(*v1),
2538
- offset: *v2,
2539
- base_type: UnitOffset(0),
2540
- },
2541
- encoding,
2542
- );
2543
- }
2544
- }
2545
- }
2546
-
2547
- #[test]
2548
- fn test_op_parse_bit_piece() {
2549
- // Doesn't matter for this test.
2550
- let encoding = encoding4();
2551
-
2552
- let values = [0, 1, 0x100, 0x1eee_eeee, 0x7fff_ffff_ffff_ffff, !0u64];
2553
-
2554
- for v1 in values.iter() {
2555
- for v2 in values.iter() {
2556
- let input = Section::with_endian(Endian::Little)
2557
- .D8(constants::DW_OP_bit_piece.0)
2558
- .uleb(*v1)
2559
- .uleb(*v2)
2560
- .get_contents()
2561
- .unwrap();
2562
- check_op_parse_simple(
2563
- &input,
2564
- &Operation::Piece {
2565
- size_in_bits: *v1,
2566
- bit_offset: Some(*v2),
2567
- },
2568
- encoding,
2569
- );
2570
- }
2571
- }
2572
- }
2573
-
2574
- #[test]
2575
- fn test_op_parse_implicit_value() {
2576
- // Doesn't matter for this test.
2577
- let encoding = encoding4();
2578
-
2579
- let data = b"hello";
2580
-
2581
- check_op_parse(
2582
- |s| {
2583
- s.D8(constants::DW_OP_implicit_value.0)
2584
- .uleb(data.len() as u64)
2585
- .append_bytes(&data[..])
2586
- },
2587
- &Operation::ImplicitValue {
2588
- data: EndianSlice::new(&data[..], LittleEndian),
2589
- },
2590
- encoding,
2591
- );
2592
- }
2593
-
2594
- #[test]
2595
- fn test_op_parse_const_type() {
2596
- // Doesn't matter for this test.
2597
- let encoding = encoding4();
2598
-
2599
- let data = b"hello";
2600
-
2601
- check_op_parse(
2602
- |s| {
2603
- s.D8(constants::DW_OP_const_type.0)
2604
- .uleb(100)
2605
- .D8(data.len() as u8)
2606
- .append_bytes(&data[..])
2607
- },
2608
- &Operation::TypedLiteral {
2609
- base_type: UnitOffset(100),
2610
- value: EndianSlice::new(&data[..], LittleEndian),
2611
- },
2612
- encoding,
2613
- );
2614
- check_op_parse(
2615
- |s| {
2616
- s.D8(constants::DW_OP_GNU_const_type.0)
2617
- .uleb(100)
2618
- .D8(data.len() as u8)
2619
- .append_bytes(&data[..])
2620
- },
2621
- &Operation::TypedLiteral {
2622
- base_type: UnitOffset(100),
2623
- value: EndianSlice::new(&data[..], LittleEndian),
2624
- },
2625
- encoding,
2626
- );
2627
- }
2628
-
2629
- #[test]
2630
- fn test_op_parse_regval_type() {
2631
- // Doesn't matter for this test.
2632
- let encoding = encoding4();
2633
-
2634
- check_op_parse(
2635
- |s| s.D8(constants::DW_OP_regval_type.0).uleb(1).uleb(100),
2636
- &Operation::RegisterOffset {
2637
- register: Register(1),
2638
- offset: 0,
2639
- base_type: UnitOffset(100),
2640
- },
2641
- encoding,
2642
- );
2643
- check_op_parse(
2644
- |s| s.D8(constants::DW_OP_GNU_regval_type.0).uleb(1).uleb(100),
2645
- &Operation::RegisterOffset {
2646
- register: Register(1),
2647
- offset: 0,
2648
- base_type: UnitOffset(100),
2649
- },
2650
- encoding,
2651
- );
2652
- }
2653
-
2654
- #[test]
2655
- fn test_op_parse_deref_type() {
2656
- // Doesn't matter for this test.
2657
- let encoding = encoding4();
2658
-
2659
- check_op_parse(
2660
- |s| s.D8(constants::DW_OP_deref_type.0).D8(8).uleb(100),
2661
- &Operation::Deref {
2662
- base_type: UnitOffset(100),
2663
- size: 8,
2664
- space: false,
2665
- },
2666
- encoding,
2667
- );
2668
- check_op_parse(
2669
- |s| s.D8(constants::DW_OP_GNU_deref_type.0).D8(8).uleb(100),
2670
- &Operation::Deref {
2671
- base_type: UnitOffset(100),
2672
- size: 8,
2673
- space: false,
2674
- },
2675
- encoding,
2676
- );
2677
- check_op_parse(
2678
- |s| s.D8(constants::DW_OP_xderef_type.0).D8(8).uleb(100),
2679
- &Operation::Deref {
2680
- base_type: UnitOffset(100),
2681
- size: 8,
2682
- space: true,
2683
- },
2684
- encoding,
2685
- );
2686
- }
2687
-
2688
- #[test]
2689
- fn test_op_convert() {
2690
- // Doesn't matter for this test.
2691
- let encoding = encoding4();
2692
-
2693
- check_op_parse(
2694
- |s| s.D8(constants::DW_OP_convert.0).uleb(100),
2695
- &Operation::Convert {
2696
- base_type: UnitOffset(100),
2697
- },
2698
- encoding,
2699
- );
2700
- check_op_parse(
2701
- |s| s.D8(constants::DW_OP_GNU_convert.0).uleb(100),
2702
- &Operation::Convert {
2703
- base_type: UnitOffset(100),
2704
- },
2705
- encoding,
2706
- );
2707
- }
2708
-
2709
- #[test]
2710
- fn test_op_reinterpret() {
2711
- // Doesn't matter for this test.
2712
- let encoding = encoding4();
2713
-
2714
- check_op_parse(
2715
- |s| s.D8(constants::DW_OP_reinterpret.0).uleb(100),
2716
- &Operation::Reinterpret {
2717
- base_type: UnitOffset(100),
2718
- },
2719
- encoding,
2720
- );
2721
- check_op_parse(
2722
- |s| s.D8(constants::DW_OP_GNU_reinterpret.0).uleb(100),
2723
- &Operation::Reinterpret {
2724
- base_type: UnitOffset(100),
2725
- },
2726
- encoding,
2727
- );
2728
- }
2729
-
2730
- #[test]
2731
- fn test_op_parse_implicit_pointer() {
2732
- for op in &[
2733
- constants::DW_OP_implicit_pointer,
2734
- constants::DW_OP_GNU_implicit_pointer,
2735
- ] {
2736
- check_op_parse(
2737
- |s| s.D8(op.0).D32(0x1234_5678).sleb(0x123),
2738
- &Operation::ImplicitPointer {
2739
- value: DebugInfoOffset(0x1234_5678),
2740
- byte_offset: 0x123,
2741
- },
2742
- encoding4(),
2743
- );
2744
-
2745
- check_op_parse(
2746
- |s| s.D8(op.0).D64(0x1234_5678).sleb(0x123),
2747
- &Operation::ImplicitPointer {
2748
- value: DebugInfoOffset(0x1234_5678),
2749
- byte_offset: 0x123,
2750
- },
2751
- encoding8(),
2752
- );
2753
-
2754
- check_op_parse(
2755
- |s| s.D8(op.0).D64(0x1234_5678).sleb(0x123),
2756
- &Operation::ImplicitPointer {
2757
- value: DebugInfoOffset(0x1234_5678),
2758
- byte_offset: 0x123,
2759
- },
2760
- Encoding {
2761
- format: Format::Dwarf32,
2762
- version: 2,
2763
- address_size: 8,
2764
- },
2765
- )
2766
- }
2767
- }
2768
-
2769
- #[test]
2770
- fn test_op_parse_entry_value() {
2771
- for op in &[
2772
- constants::DW_OP_entry_value,
2773
- constants::DW_OP_GNU_entry_value,
2774
- ] {
2775
- let data = b"hello";
2776
- check_op_parse(
2777
- |s| s.D8(op.0).uleb(data.len() as u64).append_bytes(&data[..]),
2778
- &Operation::EntryValue {
2779
- expression: EndianSlice::new(&data[..], LittleEndian),
2780
- },
2781
- encoding4(),
2782
- );
2783
- }
2784
- }
2785
-
2786
- #[test]
2787
- fn test_op_parse_gnu_parameter_ref() {
2788
- check_op_parse(
2789
- |s| s.D8(constants::DW_OP_GNU_parameter_ref.0).D32(0x1234_5678),
2790
- &Operation::ParameterRef {
2791
- offset: UnitOffset(0x1234_5678),
2792
- },
2793
- encoding4(),
2794
- )
2795
- }
2796
-
2797
- #[test]
2798
- fn test_op_wasm() {
2799
- // Doesn't matter for this test.
2800
- let encoding = encoding4();
2801
-
2802
- check_op_parse(
2803
- |s| s.D8(constants::DW_OP_WASM_location.0).D8(0).uleb(1000),
2804
- &Operation::WasmLocal { index: 1000 },
2805
- encoding,
2806
- );
2807
- check_op_parse(
2808
- |s| s.D8(constants::DW_OP_WASM_location.0).D8(1).uleb(1000),
2809
- &Operation::WasmGlobal { index: 1000 },
2810
- encoding,
2811
- );
2812
- check_op_parse(
2813
- |s| s.D8(constants::DW_OP_WASM_location.0).D8(2).uleb(1000),
2814
- &Operation::WasmStack { index: 1000 },
2815
- encoding,
2816
- );
2817
- check_op_parse(
2818
- |s| s.D8(constants::DW_OP_WASM_location.0).D8(3).D32(1000),
2819
- &Operation::WasmGlobal { index: 1000 },
2820
- encoding,
2821
- );
2822
- }
2823
-
2824
- enum AssemblerEntry {
2825
- Op(constants::DwOp),
2826
- Mark(u8),
2827
- Branch(u8),
2828
- U8(u8),
2829
- U16(u16),
2830
- U32(u32),
2831
- U64(u64),
2832
- Uleb(u64),
2833
- Sleb(u64),
2834
- }
2835
-
2836
- fn assemble(entries: &[AssemblerEntry]) -> Vec<u8> {
2837
- let mut result = Vec::new();
2838
-
2839
- struct Marker(Option<usize>, Vec<usize>);
2840
-
2841
- let mut markers = Vec::new();
2842
- for _ in 0..256 {
2843
- markers.push(Marker(None, Vec::new()));
2844
- }
2845
-
2846
- fn write(stack: &mut Vec<u8>, index: usize, mut num: u64, nbytes: u8) {
2847
- for i in 0..nbytes as usize {
2848
- stack[index + i] = (num & 0xff) as u8;
2849
- num >>= 8;
2850
- }
2851
- }
2852
-
2853
- fn push(stack: &mut Vec<u8>, num: u64, nbytes: u8) {
2854
- let index = stack.len();
2855
- for _ in 0..nbytes {
2856
- stack.push(0);
2857
- }
2858
- write(stack, index, num, nbytes);
2859
- }
2860
-
2861
- for item in entries {
2862
- match *item {
2863
- AssemblerEntry::Op(op) => result.push(op.0),
2864
- AssemblerEntry::Mark(num) => {
2865
- assert!(markers[num as usize].0.is_none());
2866
- markers[num as usize].0 = Some(result.len());
2867
- }
2868
- AssemblerEntry::Branch(num) => {
2869
- markers[num as usize].1.push(result.len());
2870
- push(&mut result, 0, 2);
2871
- }
2872
- AssemblerEntry::U8(num) => result.push(num),
2873
- AssemblerEntry::U16(num) => push(&mut result, u64::from(num), 2),
2874
- AssemblerEntry::U32(num) => push(&mut result, u64::from(num), 4),
2875
- AssemblerEntry::U64(num) => push(&mut result, num, 8),
2876
- AssemblerEntry::Uleb(num) => {
2877
- leb128::write::unsigned(&mut result, num).unwrap();
2878
- }
2879
- AssemblerEntry::Sleb(num) => {
2880
- leb128::write::signed(&mut result, num as i64).unwrap();
2881
- }
2882
- }
2883
- }
2884
-
2885
- // Update all the branches.
2886
- for marker in markers {
2887
- if let Some(offset) = marker.0 {
2888
- for branch_offset in marker.1 {
2889
- let delta = offset.wrapping_sub(branch_offset + 2) as u64;
2890
- write(&mut result, branch_offset, delta, 2);
2891
- }
2892
- }
2893
- }
2894
-
2895
- result
2896
- }
2897
-
2898
- fn check_eval_with_args<F>(
2899
- program: &[AssemblerEntry],
2900
- expect: Result<&[Piece<EndianSlice<LittleEndian>>]>,
2901
- encoding: Encoding,
2902
- object_address: Option<u64>,
2903
- initial_value: Option<u64>,
2904
- max_iterations: Option<u32>,
2905
- f: F,
2906
- ) where
2907
- for<'a> F: Fn(
2908
- &mut Evaluation<EndianSlice<'a, LittleEndian>>,
2909
- EvaluationResult<EndianSlice<'a, LittleEndian>>,
2910
- ) -> Result<EvaluationResult<EndianSlice<'a, LittleEndian>>>,
2911
- {
2912
- let bytes = assemble(program);
2913
- let bytes = EndianSlice::new(&bytes, LittleEndian);
2914
-
2915
- let mut eval = Evaluation::new(bytes, encoding);
2916
-
2917
- if let Some(val) = object_address {
2918
- eval.set_object_address(val);
2919
- }
2920
- if let Some(val) = initial_value {
2921
- eval.set_initial_value(val);
2922
- }
2923
- if let Some(val) = max_iterations {
2924
- eval.set_max_iterations(val);
2925
- }
2926
-
2927
- let result = match eval.evaluate() {
2928
- Err(e) => Err(e),
2929
- Ok(r) => f(&mut eval, r),
2930
- };
2931
-
2932
- match (result, expect) {
2933
- (Ok(EvaluationResult::Complete), Ok(pieces)) => {
2934
- let vec = eval.result();
2935
- assert_eq!(vec.len(), pieces.len());
2936
- for i in 0..pieces.len() {
2937
- assert_eq!(vec[i], pieces[i]);
2938
- }
2939
- }
2940
- (Err(f1), Err(f2)) => {
2941
- assert_eq!(f1, f2);
2942
- }
2943
- otherwise => panic!("Unexpected result: {:?}", otherwise),
2944
- }
2945
- }
2946
-
2947
- fn check_eval(
2948
- program: &[AssemblerEntry],
2949
- expect: Result<&[Piece<EndianSlice<LittleEndian>>]>,
2950
- encoding: Encoding,
2951
- ) {
2952
- check_eval_with_args(program, expect, encoding, None, None, None, |_, result| {
2953
- Ok(result)
2954
- });
2955
- }
2956
-
2957
- #[test]
2958
- fn test_eval_arith() {
2959
- // It's nice if an operation and its arguments can fit on a single
2960
- // line in the test program.
2961
- use self::AssemblerEntry::*;
2962
- use crate::constants::*;
2963
-
2964
- // Indices of marks in the assembly.
2965
- let done = 0;
2966
- let fail = 1;
2967
-
2968
- #[rustfmt::skip]
2969
- let program = [
2970
- Op(DW_OP_const1u), U8(23),
2971
- Op(DW_OP_const1s), U8((-23i8) as u8),
2972
- Op(DW_OP_plus),
2973
- Op(DW_OP_bra), Branch(fail),
2974
-
2975
- Op(DW_OP_const2u), U16(23),
2976
- Op(DW_OP_const2s), U16((-23i16) as u16),
2977
- Op(DW_OP_plus),
2978
- Op(DW_OP_bra), Branch(fail),
2979
-
2980
- Op(DW_OP_const4u), U32(0x1111_2222),
2981
- Op(DW_OP_const4s), U32((-0x1111_2222i32) as u32),
2982
- Op(DW_OP_plus),
2983
- Op(DW_OP_bra), Branch(fail),
2984
-
2985
- // Plus should overflow.
2986
- Op(DW_OP_const1s), U8(0xff),
2987
- Op(DW_OP_const1u), U8(1),
2988
- Op(DW_OP_plus),
2989
- Op(DW_OP_bra), Branch(fail),
2990
-
2991
- Op(DW_OP_const1s), U8(0xff),
2992
- Op(DW_OP_plus_uconst), Uleb(1),
2993
- Op(DW_OP_bra), Branch(fail),
2994
-
2995
- // Minus should underflow.
2996
- Op(DW_OP_const1s), U8(0),
2997
- Op(DW_OP_const1u), U8(1),
2998
- Op(DW_OP_minus),
2999
- Op(DW_OP_const1s), U8(0xff),
3000
- Op(DW_OP_ne),
3001
- Op(DW_OP_bra), Branch(fail),
3002
-
3003
- Op(DW_OP_const1s), U8(0xff),
3004
- Op(DW_OP_abs),
3005
- Op(DW_OP_const1u), U8(1),
3006
- Op(DW_OP_minus),
3007
- Op(DW_OP_bra), Branch(fail),
3008
-
3009
- Op(DW_OP_const4u), U32(0xf078_fffe),
3010
- Op(DW_OP_const4u), U32(0x0f87_0001),
3011
- Op(DW_OP_and),
3012
- Op(DW_OP_bra), Branch(fail),
3013
-
3014
- Op(DW_OP_const4u), U32(0xf078_fffe),
3015
- Op(DW_OP_const4u), U32(0xf000_00fe),
3016
- Op(DW_OP_and),
3017
- Op(DW_OP_const4u), U32(0xf000_00fe),
3018
- Op(DW_OP_ne),
3019
- Op(DW_OP_bra), Branch(fail),
3020
-
3021
- // Division is signed.
3022
- Op(DW_OP_const1s), U8(0xfe),
3023
- Op(DW_OP_const1s), U8(2),
3024
- Op(DW_OP_div),
3025
- Op(DW_OP_plus_uconst), Uleb(1),
3026
- Op(DW_OP_bra), Branch(fail),
3027
-
3028
- // Mod is unsigned.
3029
- Op(DW_OP_const1s), U8(0xfd),
3030
- Op(DW_OP_const1s), U8(2),
3031
- Op(DW_OP_mod),
3032
- Op(DW_OP_neg),
3033
- Op(DW_OP_plus_uconst), Uleb(1),
3034
- Op(DW_OP_bra), Branch(fail),
3035
-
3036
- // Overflow is defined for multiplication.
3037
- Op(DW_OP_const4u), U32(0x8000_0001),
3038
- Op(DW_OP_lit2),
3039
- Op(DW_OP_mul),
3040
- Op(DW_OP_lit2),
3041
- Op(DW_OP_ne),
3042
- Op(DW_OP_bra), Branch(fail),
3043
-
3044
- Op(DW_OP_const4u), U32(0xf0f0_f0f0),
3045
- Op(DW_OP_const4u), U32(0xf0f0_f0f0),
3046
- Op(DW_OP_xor),
3047
- Op(DW_OP_bra), Branch(fail),
3048
-
3049
- Op(DW_OP_const4u), U32(0xf0f0_f0f0),
3050
- Op(DW_OP_const4u), U32(0x0f0f_0f0f),
3051
- Op(DW_OP_or),
3052
- Op(DW_OP_not),
3053
- Op(DW_OP_bra), Branch(fail),
3054
-
3055
- // In 32 bit mode, values are truncated.
3056
- Op(DW_OP_const8u), U64(0xffff_ffff_0000_0000),
3057
- Op(DW_OP_lit2),
3058
- Op(DW_OP_div),
3059
- Op(DW_OP_bra), Branch(fail),
3060
-
3061
- Op(DW_OP_const1u), U8(0xff),
3062
- Op(DW_OP_lit1),
3063
- Op(DW_OP_shl),
3064
- Op(DW_OP_const2u), U16(0x1fe),
3065
- Op(DW_OP_ne),
3066
- Op(DW_OP_bra), Branch(fail),
3067
-
3068
- Op(DW_OP_const1u), U8(0xff),
3069
- Op(DW_OP_const1u), U8(50),
3070
- Op(DW_OP_shl),
3071
- Op(DW_OP_bra), Branch(fail),
3072
-
3073
- // Absurd shift.
3074
- Op(DW_OP_const1u), U8(0xff),
3075
- Op(DW_OP_const1s), U8(0xff),
3076
- Op(DW_OP_shl),
3077
- Op(DW_OP_bra), Branch(fail),
3078
-
3079
- Op(DW_OP_const1s), U8(0xff),
3080
- Op(DW_OP_lit1),
3081
- Op(DW_OP_shr),
3082
- Op(DW_OP_const4u), U32(0x7fff_ffff),
3083
- Op(DW_OP_ne),
3084
- Op(DW_OP_bra), Branch(fail),
3085
-
3086
- Op(DW_OP_const1s), U8(0xff),
3087
- Op(DW_OP_const1u), U8(0xff),
3088
- Op(DW_OP_shr),
3089
- Op(DW_OP_bra), Branch(fail),
3090
-
3091
- Op(DW_OP_const1s), U8(0xff),
3092
- Op(DW_OP_lit1),
3093
- Op(DW_OP_shra),
3094
- Op(DW_OP_const1s), U8(0xff),
3095
- Op(DW_OP_ne),
3096
- Op(DW_OP_bra), Branch(fail),
3097
-
3098
- Op(DW_OP_const1s), U8(0xff),
3099
- Op(DW_OP_const1u), U8(0xff),
3100
- Op(DW_OP_shra),
3101
- Op(DW_OP_const1s), U8(0xff),
3102
- Op(DW_OP_ne),
3103
- Op(DW_OP_bra), Branch(fail),
3104
-
3105
- // Success.
3106
- Op(DW_OP_lit0),
3107
- Op(DW_OP_nop),
3108
- Op(DW_OP_skip), Branch(done),
3109
-
3110
- Mark(fail),
3111
- Op(DW_OP_lit1),
3112
-
3113
- Mark(done),
3114
- Op(DW_OP_stack_value),
3115
- ];
3116
-
3117
- let result = [Piece {
3118
- size_in_bits: None,
3119
- bit_offset: None,
3120
- location: Location::Value {
3121
- value: Value::Generic(0),
3122
- },
3123
- }];
3124
-
3125
- check_eval(&program, Ok(&result), encoding4());
3126
- }
3127
-
3128
- #[test]
3129
- fn test_eval_arith64() {
3130
- // It's nice if an operation and its arguments can fit on a single
3131
- // line in the test program.
3132
- use self::AssemblerEntry::*;
3133
- use crate::constants::*;
3134
-
3135
- // Indices of marks in the assembly.
3136
- let done = 0;
3137
- let fail = 1;
3138
-
3139
- #[rustfmt::skip]
3140
- let program = [
3141
- Op(DW_OP_const8u), U64(0x1111_2222_3333_4444),
3142
- Op(DW_OP_const8s), U64((-0x1111_2222_3333_4444i64) as u64),
3143
- Op(DW_OP_plus),
3144
- Op(DW_OP_bra), Branch(fail),
3145
-
3146
- Op(DW_OP_constu), Uleb(0x1111_2222_3333_4444),
3147
- Op(DW_OP_consts), Sleb((-0x1111_2222_3333_4444i64) as u64),
3148
- Op(DW_OP_plus),
3149
- Op(DW_OP_bra), Branch(fail),
3150
-
3151
- Op(DW_OP_lit1),
3152
- Op(DW_OP_plus_uconst), Uleb(!0u64),
3153
- Op(DW_OP_bra), Branch(fail),
3154
-
3155
- Op(DW_OP_lit1),
3156
- Op(DW_OP_neg),
3157
- Op(DW_OP_not),
3158
- Op(DW_OP_bra), Branch(fail),
3159
-
3160
- Op(DW_OP_const8u), U64(0x8000_0000_0000_0000),
3161
- Op(DW_OP_const1u), U8(63),
3162
- Op(DW_OP_shr),
3163
- Op(DW_OP_lit1),
3164
- Op(DW_OP_ne),
3165
- Op(DW_OP_bra), Branch(fail),
3166
-
3167
- Op(DW_OP_const8u), U64(0x8000_0000_0000_0000),
3168
- Op(DW_OP_const1u), U8(62),
3169
- Op(DW_OP_shra),
3170
- Op(DW_OP_plus_uconst), Uleb(2),
3171
- Op(DW_OP_bra), Branch(fail),
3172
-
3173
- Op(DW_OP_lit1),
3174
- Op(DW_OP_const1u), U8(63),
3175
- Op(DW_OP_shl),
3176
- Op(DW_OP_const8u), U64(0x8000_0000_0000_0000),
3177
- Op(DW_OP_ne),
3178
- Op(DW_OP_bra), Branch(fail),
3179
-
3180
- // Success.
3181
- Op(DW_OP_lit0),
3182
- Op(DW_OP_nop),
3183
- Op(DW_OP_skip), Branch(done),
3184
-
3185
- Mark(fail),
3186
- Op(DW_OP_lit1),
3187
-
3188
- Mark(done),
3189
- Op(DW_OP_stack_value),
3190
- ];
3191
-
3192
- let result = [Piece {
3193
- size_in_bits: None,
3194
- bit_offset: None,
3195
- location: Location::Value {
3196
- value: Value::Generic(0),
3197
- },
3198
- }];
3199
-
3200
- check_eval(&program, Ok(&result), encoding8());
3201
- }
3202
-
3203
- #[test]
3204
- fn test_eval_compare() {
3205
- // It's nice if an operation and its arguments can fit on a single
3206
- // line in the test program.
3207
- use self::AssemblerEntry::*;
3208
- use crate::constants::*;
3209
-
3210
- // Indices of marks in the assembly.
3211
- let done = 0;
3212
- let fail = 1;
3213
-
3214
- #[rustfmt::skip]
3215
- let program = [
3216
- // Comparisons are signed.
3217
- Op(DW_OP_const1s), U8(1),
3218
- Op(DW_OP_const1s), U8(0xff),
3219
- Op(DW_OP_lt),
3220
- Op(DW_OP_bra), Branch(fail),
3221
-
3222
- Op(DW_OP_const1s), U8(0xff),
3223
- Op(DW_OP_const1s), U8(1),
3224
- Op(DW_OP_gt),
3225
- Op(DW_OP_bra), Branch(fail),
3226
-
3227
- Op(DW_OP_const1s), U8(1),
3228
- Op(DW_OP_const1s), U8(0xff),
3229
- Op(DW_OP_le),
3230
- Op(DW_OP_bra), Branch(fail),
3231
-
3232
- Op(DW_OP_const1s), U8(0xff),
3233
- Op(DW_OP_const1s), U8(1),
3234
- Op(DW_OP_ge),
3235
- Op(DW_OP_bra), Branch(fail),
3236
-
3237
- Op(DW_OP_const1s), U8(0xff),
3238
- Op(DW_OP_const1s), U8(1),
3239
- Op(DW_OP_eq),
3240
- Op(DW_OP_bra), Branch(fail),
3241
-
3242
- Op(DW_OP_const4s), U32(1),
3243
- Op(DW_OP_const1s), U8(1),
3244
- Op(DW_OP_ne),
3245
- Op(DW_OP_bra), Branch(fail),
3246
-
3247
- // Success.
3248
- Op(DW_OP_lit0),
3249
- Op(DW_OP_nop),
3250
- Op(DW_OP_skip), Branch(done),
3251
-
3252
- Mark(fail),
3253
- Op(DW_OP_lit1),
3254
-
3255
- Mark(done),
3256
- Op(DW_OP_stack_value),
3257
- ];
3258
-
3259
- let result = [Piece {
3260
- size_in_bits: None,
3261
- bit_offset: None,
3262
- location: Location::Value {
3263
- value: Value::Generic(0),
3264
- },
3265
- }];
3266
-
3267
- check_eval(&program, Ok(&result), encoding4());
3268
- }
3269
-
3270
- #[test]
3271
- fn test_eval_stack() {
3272
- // It's nice if an operation and its arguments can fit on a single
3273
- // line in the test program.
3274
- use self::AssemblerEntry::*;
3275
- use crate::constants::*;
3276
-
3277
- #[rustfmt::skip]
3278
- let program = [
3279
- Op(DW_OP_lit17), // -- 17
3280
- Op(DW_OP_dup), // -- 17 17
3281
- Op(DW_OP_over), // -- 17 17 17
3282
- Op(DW_OP_minus), // -- 17 0
3283
- Op(DW_OP_swap), // -- 0 17
3284
- Op(DW_OP_dup), // -- 0 17 17
3285
- Op(DW_OP_plus_uconst), Uleb(1), // -- 0 17 18
3286
- Op(DW_OP_rot), // -- 18 0 17
3287
- Op(DW_OP_pick), U8(2), // -- 18 0 17 18
3288
- Op(DW_OP_pick), U8(3), // -- 18 0 17 18 18
3289
- Op(DW_OP_minus), // -- 18 0 17 0
3290
- Op(DW_OP_drop), // -- 18 0 17
3291
- Op(DW_OP_swap), // -- 18 17 0
3292
- Op(DW_OP_drop), // -- 18 17
3293
- Op(DW_OP_minus), // -- 1
3294
- Op(DW_OP_stack_value),
3295
- ];
3296
-
3297
- let result = [Piece {
3298
- size_in_bits: None,
3299
- bit_offset: None,
3300
- location: Location::Value {
3301
- value: Value::Generic(1),
3302
- },
3303
- }];
3304
-
3305
- check_eval(&program, Ok(&result), encoding4());
3306
- }
3307
-
3308
- #[test]
3309
- fn test_eval_lit_and_reg() {
3310
- // It's nice if an operation and its arguments can fit on a single
3311
- // line in the test program.
3312
- use self::AssemblerEntry::*;
3313
- use crate::constants::*;
3314
-
3315
- let mut program = Vec::new();
3316
- program.push(Op(DW_OP_lit0));
3317
- for i in 0..32 {
3318
- program.push(Op(DwOp(DW_OP_lit0.0 + i)));
3319
- program.push(Op(DwOp(DW_OP_breg0.0 + i)));
3320
- program.push(Sleb(u64::from(i)));
3321
- program.push(Op(DW_OP_plus));
3322
- program.push(Op(DW_OP_plus));
3323
- }
3324
-
3325
- program.push(Op(DW_OP_bregx));
3326
- program.push(Uleb(0x1234));
3327
- program.push(Sleb(0x1234));
3328
- program.push(Op(DW_OP_plus));
3329
-
3330
- program.push(Op(DW_OP_stack_value));
3331
-
3332
- let result = [Piece {
3333
- size_in_bits: None,
3334
- bit_offset: None,
3335
- location: Location::Value {
3336
- value: Value::Generic(496),
3337
- },
3338
- }];
3339
-
3340
- check_eval_with_args(
3341
- &program,
3342
- Ok(&result),
3343
- encoding4(),
3344
- None,
3345
- None,
3346
- None,
3347
- |eval, mut result| {
3348
- while result != EvaluationResult::Complete {
3349
- result = eval.resume_with_register(match result {
3350
- EvaluationResult::RequiresRegister {
3351
- register,
3352
- base_type,
3353
- } => {
3354
- assert_eq!(base_type, UnitOffset(0));
3355
- Value::Generic(u64::from(register.0).wrapping_neg())
3356
- }
3357
- _ => panic!(),
3358
- })?;
3359
- }
3360
- Ok(result)
3361
- },
3362
- );
3363
- }
3364
-
3365
- #[test]
3366
- fn test_eval_memory() {
3367
- // It's nice if an operation and its arguments can fit on a single
3368
- // line in the test program.
3369
- use self::AssemblerEntry::*;
3370
- use crate::constants::*;
3371
-
3372
- // Indices of marks in the assembly.
3373
- let done = 0;
3374
- let fail = 1;
3375
-
3376
- #[rustfmt::skip]
3377
- let program = [
3378
- Op(DW_OP_addr), U32(0x7fff_ffff),
3379
- Op(DW_OP_deref),
3380
- Op(DW_OP_const4u), U32(0xffff_fffc),
3381
- Op(DW_OP_ne),
3382
- Op(DW_OP_bra), Branch(fail),
3383
-
3384
- Op(DW_OP_addr), U32(0x7fff_ffff),
3385
- Op(DW_OP_deref_size), U8(2),
3386
- Op(DW_OP_const4u), U32(0xfffc),
3387
- Op(DW_OP_ne),
3388
- Op(DW_OP_bra), Branch(fail),
3389
-
3390
- Op(DW_OP_lit1),
3391
- Op(DW_OP_addr), U32(0x7fff_ffff),
3392
- Op(DW_OP_xderef),
3393
- Op(DW_OP_const4u), U32(0xffff_fffd),
3394
- Op(DW_OP_ne),
3395
- Op(DW_OP_bra), Branch(fail),
3396
-
3397
- Op(DW_OP_lit1),
3398
- Op(DW_OP_addr), U32(0x7fff_ffff),
3399
- Op(DW_OP_xderef_size), U8(2),
3400
- Op(DW_OP_const4u), U32(0xfffd),
3401
- Op(DW_OP_ne),
3402
- Op(DW_OP_bra), Branch(fail),
3403
-
3404
- Op(DW_OP_lit17),
3405
- Op(DW_OP_form_tls_address),
3406
- Op(DW_OP_constu), Uleb(!17),
3407
- Op(DW_OP_ne),
3408
- Op(DW_OP_bra), Branch(fail),
3409
-
3410
- Op(DW_OP_lit17),
3411
- Op(DW_OP_GNU_push_tls_address),
3412
- Op(DW_OP_constu), Uleb(!17),
3413
- Op(DW_OP_ne),
3414
- Op(DW_OP_bra), Branch(fail),
3415
-
3416
- Op(DW_OP_addrx), Uleb(0x10),
3417
- Op(DW_OP_deref),
3418
- Op(DW_OP_const4u), U32(0x4040),
3419
- Op(DW_OP_ne),
3420
- Op(DW_OP_bra), Branch(fail),
3421
-
3422
- Op(DW_OP_constx), Uleb(17),
3423
- Op(DW_OP_form_tls_address),
3424
- Op(DW_OP_constu), Uleb(!27),
3425
- Op(DW_OP_ne),
3426
- Op(DW_OP_bra), Branch(fail),
3427
-
3428
- // Success.
3429
- Op(DW_OP_lit0),
3430
- Op(DW_OP_nop),
3431
- Op(DW_OP_skip), Branch(done),
3432
-
3433
- Mark(fail),
3434
- Op(DW_OP_lit1),
3435
-
3436
- Mark(done),
3437
- Op(DW_OP_stack_value),
3438
- ];
3439
-
3440
- let result = [Piece {
3441
- size_in_bits: None,
3442
- bit_offset: None,
3443
- location: Location::Value {
3444
- value: Value::Generic(0),
3445
- },
3446
- }];
3447
-
3448
- check_eval_with_args(
3449
- &program,
3450
- Ok(&result),
3451
- encoding4(),
3452
- None,
3453
- None,
3454
- None,
3455
- |eval, mut result| {
3456
- while result != EvaluationResult::Complete {
3457
- result = match result {
3458
- EvaluationResult::RequiresMemory {
3459
- address,
3460
- size,
3461
- space,
3462
- base_type,
3463
- } => {
3464
- assert_eq!(base_type, UnitOffset(0));
3465
- let mut v = address << 2;
3466
- if let Some(value) = space {
3467
- v += value;
3468
- }
3469
- v &= (1u64 << (8 * size)) - 1;
3470
- eval.resume_with_memory(Value::Generic(v))?
3471
- }
3472
- EvaluationResult::RequiresTls(slot) => eval.resume_with_tls(!slot)?,
3473
- EvaluationResult::RequiresRelocatedAddress(address) => {
3474
- eval.resume_with_relocated_address(address)?
3475
- }
3476
- EvaluationResult::RequiresIndexedAddress { index, relocate } => {
3477
- if relocate {
3478
- eval.resume_with_indexed_address(0x1000 + index.0 as u64)?
3479
- } else {
3480
- eval.resume_with_indexed_address(10 + index.0 as u64)?
3481
- }
3482
- }
3483
- _ => panic!(),
3484
- };
3485
- }
3486
-
3487
- Ok(result)
3488
- },
3489
- );
3490
- }
3491
-
3492
- #[test]
3493
- fn test_eval_register() {
3494
- // It's nice if an operation and its arguments can fit on a single
3495
- // line in the test program.
3496
- use self::AssemblerEntry::*;
3497
- use crate::constants::*;
3498
-
3499
- for i in 0..32 {
3500
- #[rustfmt::skip]
3501
- let program = [
3502
- Op(DwOp(DW_OP_reg0.0 + i)),
3503
- // Included only in the "bad" run.
3504
- Op(DW_OP_lit23),
3505
- ];
3506
- let ok_result = [Piece {
3507
- size_in_bits: None,
3508
- bit_offset: None,
3509
- location: Location::Register {
3510
- register: Register(i.into()),
3511
- },
3512
- }];
3513
-
3514
- check_eval(&program[..1], Ok(&ok_result), encoding4());
3515
-
3516
- check_eval(
3517
- &program,
3518
- Err(Error::InvalidExpressionTerminator(1)),
3519
- encoding4(),
3520
- );
3521
- }
3522
-
3523
- #[rustfmt::skip]
3524
- let program = [
3525
- Op(DW_OP_regx), Uleb(0x1234)
3526
- ];
3527
-
3528
- let result = [Piece {
3529
- size_in_bits: None,
3530
- bit_offset: None,
3531
- location: Location::Register {
3532
- register: Register(0x1234),
3533
- },
3534
- }];
3535
-
3536
- check_eval(&program, Ok(&result), encoding4());
3537
- }
3538
-
3539
- #[test]
3540
- fn test_eval_context() {
3541
- // It's nice if an operation and its arguments can fit on a single
3542
- // line in the test program.
3543
- use self::AssemblerEntry::*;
3544
- use crate::constants::*;
3545
-
3546
- // Test `frame_base` and `call_frame_cfa` callbacks.
3547
- #[rustfmt::skip]
3548
- let program = [
3549
- Op(DW_OP_fbreg), Sleb((-8i8) as u64),
3550
- Op(DW_OP_call_frame_cfa),
3551
- Op(DW_OP_plus),
3552
- Op(DW_OP_neg),
3553
- Op(DW_OP_stack_value)
3554
- ];
3555
-
3556
- let result = [Piece {
3557
- size_in_bits: None,
3558
- bit_offset: None,
3559
- location: Location::Value {
3560
- value: Value::Generic(9),
3561
- },
3562
- }];
3563
-
3564
- check_eval_with_args(
3565
- &program,
3566
- Ok(&result),
3567
- encoding8(),
3568
- None,
3569
- None,
3570
- None,
3571
- |eval, result| {
3572
- match result {
3573
- EvaluationResult::RequiresFrameBase => {}
3574
- _ => panic!(),
3575
- };
3576
- match eval.resume_with_frame_base(0x0123_4567_89ab_cdef)? {
3577
- EvaluationResult::RequiresCallFrameCfa => {}
3578
- _ => panic!(),
3579
- };
3580
- eval.resume_with_call_frame_cfa(0xfedc_ba98_7654_3210)
3581
- },
3582
- );
3583
-
3584
- // Test `evaluate_entry_value` callback.
3585
- #[rustfmt::skip]
3586
- let program = [
3587
- Op(DW_OP_entry_value), Uleb(8), U64(0x1234_5678),
3588
- Op(DW_OP_stack_value)
3589
- ];
3590
-
3591
- let result = [Piece {
3592
- size_in_bits: None,
3593
- bit_offset: None,
3594
- location: Location::Value {
3595
- value: Value::Generic(0x1234_5678),
3596
- },
3597
- }];
3598
-
3599
- check_eval_with_args(
3600
- &program,
3601
- Ok(&result),
3602
- encoding8(),
3603
- None,
3604
- None,
3605
- None,
3606
- |eval, result| {
3607
- let entry_value = match result {
3608
- EvaluationResult::RequiresEntryValue(mut expression) => {
3609
- expression.0.read_u64()?
3610
- }
3611
- _ => panic!(),
3612
- };
3613
- eval.resume_with_entry_value(Value::Generic(entry_value))
3614
- },
3615
- );
3616
-
3617
- // Test missing `object_address` field.
3618
- #[rustfmt::skip]
3619
- let program = [
3620
- Op(DW_OP_push_object_address),
3621
- ];
3622
-
3623
- check_eval_with_args(
3624
- &program,
3625
- Err(Error::InvalidPushObjectAddress),
3626
- encoding4(),
3627
- None,
3628
- None,
3629
- None,
3630
- |_, _| panic!(),
3631
- );
3632
-
3633
- // Test `object_address` field.
3634
- #[rustfmt::skip]
3635
- let program = [
3636
- Op(DW_OP_push_object_address),
3637
- Op(DW_OP_stack_value),
3638
- ];
3639
-
3640
- let result = [Piece {
3641
- size_in_bits: None,
3642
- bit_offset: None,
3643
- location: Location::Value {
3644
- value: Value::Generic(0xff),
3645
- },
3646
- }];
3647
-
3648
- check_eval_with_args(
3649
- &program,
3650
- Ok(&result),
3651
- encoding8(),
3652
- Some(0xff),
3653
- None,
3654
- None,
3655
- |_, result| Ok(result),
3656
- );
3657
-
3658
- // Test `initial_value` field.
3659
- #[rustfmt::skip]
3660
- let program = [
3661
- ];
3662
-
3663
- let result = [Piece {
3664
- size_in_bits: None,
3665
- bit_offset: None,
3666
- location: Location::Address {
3667
- address: 0x1234_5678,
3668
- },
3669
- }];
3670
-
3671
- check_eval_with_args(
3672
- &program,
3673
- Ok(&result),
3674
- encoding8(),
3675
- None,
3676
- Some(0x1234_5678),
3677
- None,
3678
- |_, result| Ok(result),
3679
- );
3680
- }
3681
-
3682
- #[test]
3683
- fn test_eval_empty_stack() {
3684
- // It's nice if an operation and its arguments can fit on a single
3685
- // line in the test program.
3686
- use self::AssemblerEntry::*;
3687
- use crate::constants::*;
3688
-
3689
- #[rustfmt::skip]
3690
- let program = [
3691
- Op(DW_OP_stack_value)
3692
- ];
3693
-
3694
- check_eval(&program, Err(Error::NotEnoughStackItems), encoding4());
3695
- }
3696
-
3697
- #[test]
3698
- fn test_eval_call() {
3699
- // It's nice if an operation and its arguments can fit on a single
3700
- // line in the test program.
3701
- use self::AssemblerEntry::*;
3702
- use crate::constants::*;
3703
-
3704
- #[rustfmt::skip]
3705
- let program = [
3706
- Op(DW_OP_lit23),
3707
- Op(DW_OP_call2), U16(0x7755),
3708
- Op(DW_OP_call4), U32(0x7755_aaee),
3709
- Op(DW_OP_call_ref), U32(0x7755_aaee),
3710
- Op(DW_OP_stack_value)
3711
- ];
3712
-
3713
- let result = [Piece {
3714
- size_in_bits: None,
3715
- bit_offset: None,
3716
- location: Location::Value {
3717
- value: Value::Generic(23),
3718
- },
3719
- }];
3720
-
3721
- check_eval_with_args(
3722
- &program,
3723
- Ok(&result),
3724
- encoding4(),
3725
- None,
3726
- None,
3727
- None,
3728
- |eval, result| {
3729
- let buf = EndianSlice::new(&[], LittleEndian);
3730
- match result {
3731
- EvaluationResult::RequiresAtLocation(_) => {}
3732
- _ => panic!(),
3733
- };
3734
-
3735
- eval.resume_with_at_location(buf)?;
3736
-
3737
- match result {
3738
- EvaluationResult::RequiresAtLocation(_) => {}
3739
- _ => panic!(),
3740
- };
3741
-
3742
- eval.resume_with_at_location(buf)?;
3743
-
3744
- match result {
3745
- EvaluationResult::RequiresAtLocation(_) => {}
3746
- _ => panic!(),
3747
- };
3748
-
3749
- eval.resume_with_at_location(buf)
3750
- },
3751
- );
3752
-
3753
- // DW_OP_lit2 DW_OP_mul
3754
- const SUBR: &[u8] = &[0x32, 0x1e];
3755
-
3756
- let result = [Piece {
3757
- size_in_bits: None,
3758
- bit_offset: None,
3759
- location: Location::Value {
3760
- value: Value::Generic(184),
3761
- },
3762
- }];
3763
-
3764
- check_eval_with_args(
3765
- &program,
3766
- Ok(&result),
3767
- encoding4(),
3768
- None,
3769
- None,
3770
- None,
3771
- |eval, result| {
3772
- let buf = EndianSlice::new(SUBR, LittleEndian);
3773
- match result {
3774
- EvaluationResult::RequiresAtLocation(_) => {}
3775
- _ => panic!(),
3776
- };
3777
-
3778
- eval.resume_with_at_location(buf)?;
3779
-
3780
- match result {
3781
- EvaluationResult::RequiresAtLocation(_) => {}
3782
- _ => panic!(),
3783
- };
3784
-
3785
- eval.resume_with_at_location(buf)?;
3786
-
3787
- match result {
3788
- EvaluationResult::RequiresAtLocation(_) => {}
3789
- _ => panic!(),
3790
- };
3791
-
3792
- eval.resume_with_at_location(buf)
3793
- },
3794
- );
3795
- }
3796
-
3797
- #[test]
3798
- fn test_eval_pieces() {
3799
- // It's nice if an operation and its arguments can fit on a single
3800
- // line in the test program.
3801
- use self::AssemblerEntry::*;
3802
- use crate::constants::*;
3803
-
3804
- // Example from DWARF 2.6.1.3.
3805
- #[rustfmt::skip]
3806
- let program = [
3807
- Op(DW_OP_reg3),
3808
- Op(DW_OP_piece), Uleb(4),
3809
- Op(DW_OP_reg4),
3810
- Op(DW_OP_piece), Uleb(2),
3811
- ];
3812
-
3813
- let result = [
3814
- Piece {
3815
- size_in_bits: Some(32),
3816
- bit_offset: None,
3817
- location: Location::Register {
3818
- register: Register(3),
3819
- },
3820
- },
3821
- Piece {
3822
- size_in_bits: Some(16),
3823
- bit_offset: None,
3824
- location: Location::Register {
3825
- register: Register(4),
3826
- },
3827
- },
3828
- ];
3829
-
3830
- check_eval(&program, Ok(&result), encoding4());
3831
-
3832
- // Example from DWARF 2.6.1.3 (but hacked since dealing with fbreg
3833
- // in the tests is a pain).
3834
- #[rustfmt::skip]
3835
- let program = [
3836
- Op(DW_OP_reg0),
3837
- Op(DW_OP_piece), Uleb(4),
3838
- Op(DW_OP_piece), Uleb(4),
3839
- Op(DW_OP_addr), U32(0x7fff_ffff),
3840
- Op(DW_OP_piece), Uleb(4),
3841
- ];
3842
-
3843
- let result = [
3844
- Piece {
3845
- size_in_bits: Some(32),
3846
- bit_offset: None,
3847
- location: Location::Register {
3848
- register: Register(0),
3849
- },
3850
- },
3851
- Piece {
3852
- size_in_bits: Some(32),
3853
- bit_offset: None,
3854
- location: Location::Empty,
3855
- },
3856
- Piece {
3857
- size_in_bits: Some(32),
3858
- bit_offset: None,
3859
- location: Location::Address {
3860
- address: 0x7fff_ffff,
3861
- },
3862
- },
3863
- ];
3864
-
3865
- check_eval_with_args(
3866
- &program,
3867
- Ok(&result),
3868
- encoding4(),
3869
- None,
3870
- None,
3871
- None,
3872
- |eval, mut result| {
3873
- while result != EvaluationResult::Complete {
3874
- result = match result {
3875
- EvaluationResult::RequiresRelocatedAddress(address) => {
3876
- eval.resume_with_relocated_address(address)?
3877
- }
3878
- _ => panic!(),
3879
- };
3880
- }
3881
-
3882
- Ok(result)
3883
- },
3884
- );
3885
-
3886
- #[rustfmt::skip]
3887
- let program = [
3888
- Op(DW_OP_implicit_value), Uleb(5),
3889
- U8(23), U8(24), U8(25), U8(26), U8(0),
3890
- ];
3891
-
3892
- const BYTES: &[u8] = &[23, 24, 25, 26, 0];
3893
-
3894
- let result = [Piece {
3895
- size_in_bits: None,
3896
- bit_offset: None,
3897
- location: Location::Bytes {
3898
- value: EndianSlice::new(BYTES, LittleEndian),
3899
- },
3900
- }];
3901
-
3902
- check_eval(&program, Ok(&result), encoding4());
3903
-
3904
- #[rustfmt::skip]
3905
- let program = [
3906
- Op(DW_OP_lit7),
3907
- Op(DW_OP_stack_value),
3908
- Op(DW_OP_bit_piece), Uleb(5), Uleb(0),
3909
- Op(DW_OP_bit_piece), Uleb(3), Uleb(0),
3910
- ];
3911
-
3912
- let result = [
3913
- Piece {
3914
- size_in_bits: Some(5),
3915
- bit_offset: Some(0),
3916
- location: Location::Value {
3917
- value: Value::Generic(7),
3918
- },
3919
- },
3920
- Piece {
3921
- size_in_bits: Some(3),
3922
- bit_offset: Some(0),
3923
- location: Location::Empty,
3924
- },
3925
- ];
3926
-
3927
- check_eval(&program, Ok(&result), encoding4());
3928
-
3929
- #[rustfmt::skip]
3930
- let program = [
3931
- Op(DW_OP_lit7),
3932
- ];
3933
-
3934
- let result = [Piece {
3935
- size_in_bits: None,
3936
- bit_offset: None,
3937
- location: Location::Address { address: 7 },
3938
- }];
3939
-
3940
- check_eval(&program, Ok(&result), encoding4());
3941
-
3942
- #[rustfmt::skip]
3943
- let program = [
3944
- Op(DW_OP_implicit_pointer), U32(0x1234_5678), Sleb(0x123),
3945
- ];
3946
-
3947
- let result = [Piece {
3948
- size_in_bits: None,
3949
- bit_offset: None,
3950
- location: Location::ImplicitPointer {
3951
- value: DebugInfoOffset(0x1234_5678),
3952
- byte_offset: 0x123,
3953
- },
3954
- }];
3955
-
3956
- check_eval(&program, Ok(&result), encoding4());
3957
-
3958
- #[rustfmt::skip]
3959
- let program = [
3960
- Op(DW_OP_reg3),
3961
- Op(DW_OP_piece), Uleb(4),
3962
- Op(DW_OP_reg4),
3963
- ];
3964
-
3965
- check_eval(&program, Err(Error::InvalidPiece), encoding4());
3966
-
3967
- #[rustfmt::skip]
3968
- let program = [
3969
- Op(DW_OP_reg3),
3970
- Op(DW_OP_piece), Uleb(4),
3971
- Op(DW_OP_lit0),
3972
- ];
3973
-
3974
- check_eval(&program, Err(Error::InvalidPiece), encoding4());
3975
- }
3976
-
3977
- #[test]
3978
- fn test_eval_max_iterations() {
3979
- // It's nice if an operation and its arguments can fit on a single
3980
- // line in the test program.
3981
- use self::AssemblerEntry::*;
3982
- use crate::constants::*;
3983
-
3984
- #[rustfmt::skip]
3985
- let program = [
3986
- Mark(1),
3987
- Op(DW_OP_skip), Branch(1),
3988
- ];
3989
-
3990
- check_eval_with_args(
3991
- &program,
3992
- Err(Error::TooManyIterations),
3993
- encoding4(),
3994
- None,
3995
- None,
3996
- Some(150),
3997
- |_, _| panic!(),
3998
- );
3999
- }
4000
-
4001
- #[test]
4002
- fn test_eval_typed_stack() {
4003
- use self::AssemblerEntry::*;
4004
- use crate::constants::*;
4005
-
4006
- let base_types = [
4007
- ValueType::Generic,
4008
- ValueType::U16,
4009
- ValueType::U32,
4010
- ValueType::F32,
4011
- ];
4012
-
4013
- // TODO: convert, reinterpret
4014
- #[rustfmt::skip]
4015
- let tests = [
4016
- (
4017
- &[
4018
- Op(DW_OP_const_type), Uleb(1), U8(2), U16(0x1234),
4019
- Op(DW_OP_stack_value),
4020
- ][..],
4021
- Value::U16(0x1234),
4022
- ),
4023
- (
4024
- &[
4025
- Op(DW_OP_regval_type), Uleb(0x1234), Uleb(1),
4026
- Op(DW_OP_stack_value),
4027
- ][..],
4028
- Value::U16(0x2340),
4029
- ),
4030
- (
4031
- &[
4032
- Op(DW_OP_addr), U32(0x7fff_ffff),
4033
- Op(DW_OP_deref_type), U8(2), Uleb(1),
4034
- Op(DW_OP_stack_value),
4035
- ][..],
4036
- Value::U16(0xfff0),
4037
- ),
4038
- (
4039
- &[
4040
- Op(DW_OP_lit1),
4041
- Op(DW_OP_addr), U32(0x7fff_ffff),
4042
- Op(DW_OP_xderef_type), U8(2), Uleb(1),
4043
- Op(DW_OP_stack_value),
4044
- ][..],
4045
- Value::U16(0xfff1),
4046
- ),
4047
- (
4048
- &[
4049
- Op(DW_OP_const_type), Uleb(1), U8(2), U16(0x1234),
4050
- Op(DW_OP_convert), Uleb(2),
4051
- Op(DW_OP_stack_value),
4052
- ][..],
4053
- Value::U32(0x1234),
4054
- ),
4055
- (
4056
- &[
4057
- Op(DW_OP_const_type), Uleb(2), U8(4), U32(0x3f80_0000),
4058
- Op(DW_OP_reinterpret), Uleb(3),
4059
- Op(DW_OP_stack_value),
4060
- ][..],
4061
- Value::F32(1.0),
4062
- ),
4063
- ];
4064
- for &(program, value) in &tests {
4065
- let result = [Piece {
4066
- size_in_bits: None,
4067
- bit_offset: None,
4068
- location: Location::Value { value },
4069
- }];
4070
-
4071
- check_eval_with_args(
4072
- program,
4073
- Ok(&result),
4074
- encoding4(),
4075
- None,
4076
- None,
4077
- None,
4078
- |eval, mut result| {
4079
- while result != EvaluationResult::Complete {
4080
- result = match result {
4081
- EvaluationResult::RequiresMemory {
4082
- address,
4083
- size,
4084
- space,
4085
- base_type,
4086
- } => {
4087
- let mut v = address << 4;
4088
- if let Some(value) = space {
4089
- v += value;
4090
- }
4091
- v &= (1u64 << (8 * size)) - 1;
4092
- let v = Value::from_u64(base_types[base_type.0], v)?;
4093
- eval.resume_with_memory(v)?
4094
- }
4095
- EvaluationResult::RequiresRegister {
4096
- register,
4097
- base_type,
4098
- } => {
4099
- let v = Value::from_u64(
4100
- base_types[base_type.0],
4101
- u64::from(register.0) << 4,
4102
- )?;
4103
- eval.resume_with_register(v)?
4104
- }
4105
- EvaluationResult::RequiresBaseType(offset) => {
4106
- eval.resume_with_base_type(base_types[offset.0])?
4107
- }
4108
- EvaluationResult::RequiresRelocatedAddress(address) => {
4109
- eval.resume_with_relocated_address(address)?
4110
- }
4111
- _ => panic!("Unexpected result {:?}", result),
4112
- }
4113
- }
4114
- Ok(result)
4115
- },
4116
- );
4117
- }
4118
- }
4119
- }