Integrate Wasmer into Substrate sandbox environment (#5920)

* Add comments and refactor Sandbox module

* Adds some comments

* Add wasmtime instance to the sandbox and delegate calls

* Adds module imports stub

* WIP state holder via *mut

* My take at the problem

* Brings back invoke and instantiate implementation details

* Removes redundant bound

* Code cleanup

* Fixes invoke closure

* Refactors FunctionExecutor to eliminate lifetime

* Wraps `FunctionExecutor::sandbox_store` in `RefCell`

* Renames `FunctionExecutor::heap` to `allocator`

* Wraps `FunctionExecutor::allocator` in `RefCell`

* Refactors FunctionExecutor to `Rc<Inner>` pattern

* Implements scoped TLS for FunctionExecutor

* Fixes wasmi instancing

* Fixes sandbox asserts

* Makes sandbox compile after wasmtime API change

* Uses Vurich/wasmtime for the Lightbeam backend

* Uses wasmtime instead of wasmi for sandbox API results

* Refactors sandbox to use one  of the execution backends at a time

* Fixes wasmtime module instantiation

* TEMP vurich branch stuff

* Adds wasmer impl stub

* Adds get global

* Fixes warnings

* Adds wasmer invoke impl

* Implements host function interface for wasmer

* Fixes wasmer instantiation result

* Adds workaround to remove debug_assert

* Fixes import object generation for wasmer

* Attempt to propagate wasmer::Store through sandbox::Store

* Wraps `sandbox::Store::memories` in `RefCell`

* Moves `sandbox::instantiate` to `sandbox::Store`

* Eliminate `RefCell<memories>`

* Implements `HostState::memory_get/set`, removes accidental `borrow_mut`

* Fixes sandbox memory handling for wasmi

* Fix memory allocation

* Resets Cargo.lock to match master

* Fixes compilation

* Refactors sandbox to use TLS for dispatch_thunk propagation to wasmer

* Pass dispatch thunk to the sandbox as a TLS

* Initialize dispatch thunk holder in `SandboxInstance`

* Comment out Wasmtime/Lightbeam sandbox backend

* Revert wasmtime back to mainstream

* Adds SandboxExecutionMethod enum for cli param

* Cleanup sandbox code

* Allow wasmi to access wasmer memory regions

* More cleanup

* Remove debug logging, replace asserts with runtime errors

* Revert "Adds SandboxExecutionMethod enum for cli param"

This reverts commit dcb2b1d3b54145ab51ad2e3fef0d980ba215b596.

* Fixes warnings

* Fixes indentation and line width

* Fix return types condition

* Puts everything related under the `wasmer-sandbox` feature flag

* Fixes warnings

* Address grumbles

* Split instantiate per backend

* More splits

* Refacmemory allocation

* Nitpicks

* Attempt to wrap wasmer memory in protoco enforcing type

* Revert renaming

* WIP wasm buffer proxy API

* Reimplement util::wasmer::MemoryRef to use buffers instead of memory slices

* Adds WasmiMemoryWrapper and MemoryTransfer trait

* Refactor naming

* Perform all memory transfers using MemoryTransfer

* Adds allocating `read`

* Adds comments

* Removes unused imports

* Removes now unused function

* Pulls Cargo.lock from origin/master

* Fix rustdoc

* Removes unused `TransferError`

* Update Cargo.lock

* Removes unused import

* cargo fmt

* Fix feature dependency graph

* Feature should flow from the top level crate
	* We should not assume a specific workspace structure
* sc-executor-wasmi does not use the feature
* sc-executor-wasmtime should not know about the feature

* Fix doc typo

* Enable wasmer-sandbox by default (for now)

It will be removed before merge. It is so that the benchbot
uses the wasmer sandbox.

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* Revert "cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs"

This reverts commit d713590ba45387c4204b2ad97c8bd6f6ebabda4e.

* cargo fmt

* Add ci-check to prevent wasmer sandbox build breaking

* Run tests with wasmer-sandbox enabled

* Revert "Run tests with wasmer-sandbox enabled"

This reverts commit cff63156a162f9ffdab23e7cb94a30f44e320f8a.

Co-authored-by: Sergei Shulepov <s.pepyakin@gmail.com>
Co-authored-by: Andrew Jones <ascjones@gmail.com>
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
Co-authored-by: Parity Benchmarking Bot <admin@parity.io>
This commit is contained in:
Dmitry Kashitsyn
2021-08-19 20:04:13 +07:00
committed by GitHub
parent ccfe485b91
commit 61606a0b3b
15 changed files with 1669 additions and 320 deletions
+443 -36
View File
@@ -917,7 +917,7 @@ dependencies = [
"ansi_term 0.11.0",
"atty",
"bitflags",
"strsim",
"strsim 0.8.0",
"textwrap",
"unicode-width",
"vec_map",
@@ -988,13 +988,41 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634"
[[package]]
name = "cranelift-bforest"
version = "0.68.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9221545c0507dc08a62b2d8b5ffe8e17ac580b0a74d1813b496b8d70b070fbd0"
dependencies = [
"cranelift-entity 0.68.0",
]
[[package]]
name = "cranelift-bforest"
version = "0.74.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c8ca3560686e7c9c7ed7e0fe77469f2410ba5d7781b1acaa9adc8d8deea28e3e"
dependencies = [
"cranelift-entity",
"cranelift-entity 0.74.0",
]
[[package]]
name = "cranelift-codegen"
version = "0.68.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e9936ea608b6cd176f107037f6adbb4deac933466fc7231154f96598b2d3ab1"
dependencies = [
"byteorder",
"cranelift-bforest 0.68.0",
"cranelift-codegen-meta 0.68.0",
"cranelift-codegen-shared 0.68.0",
"cranelift-entity 0.68.0",
"gimli 0.22.0",
"log 0.4.14",
"regalloc",
"smallvec 1.6.1",
"target-lexicon 0.11.2",
"thiserror",
]
[[package]]
@@ -1003,16 +1031,26 @@ version = "0.74.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf9bf1ffffb6ce3d2e5ebc83549bd2436426c99b31cc550d521364cbe35d276"
dependencies = [
"cranelift-bforest",
"cranelift-codegen-meta",
"cranelift-codegen-shared",
"cranelift-entity",
"cranelift-bforest 0.74.0",
"cranelift-codegen-meta 0.74.0",
"cranelift-codegen-shared 0.74.0",
"cranelift-entity 0.74.0",
"gimli 0.24.0",
"log 0.4.14",
"regalloc",
"serde",
"smallvec 1.6.1",
"target-lexicon",
"target-lexicon 0.12.0",
]
[[package]]
name = "cranelift-codegen-meta"
version = "0.68.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ef2b2768568306540f4c8db3acce9105534d34c4a1e440529c1e702d7f8c8d7"
dependencies = [
"cranelift-codegen-shared 0.68.0",
"cranelift-entity 0.68.0",
]
[[package]]
@@ -1021,10 +1059,16 @@ version = "0.74.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4cc21936a5a6d07e23849ffe83e5c1f6f50305c074f4b2970ca50c13bf55b821"
dependencies = [
"cranelift-codegen-shared",
"cranelift-entity",
"cranelift-codegen-shared 0.74.0",
"cranelift-entity 0.74.0",
]
[[package]]
name = "cranelift-codegen-shared"
version = "0.68.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6759012d6d19c4caec95793f052613e9d4113e925e7f14154defbac0f1d4c938"
[[package]]
name = "cranelift-codegen-shared"
version = "0.74.0"
@@ -1034,6 +1078,15 @@ dependencies = [
"serde",
]
[[package]]
name = "cranelift-entity"
version = "0.68.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "86badbce14e15f52a45b666b38abe47b204969dd7f8fb7488cb55dd46b361fa6"
dependencies = [
"serde",
]
[[package]]
name = "cranelift-entity"
version = "0.74.0"
@@ -1043,16 +1096,28 @@ dependencies = [
"serde",
]
[[package]]
name = "cranelift-frontend"
version = "0.68.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b608bb7656c554d0a4cf8f50c7a10b857e80306f6ff829ad6d468a7e2323c8d8"
dependencies = [
"cranelift-codegen 0.68.0",
"log 0.4.14",
"smallvec 1.6.1",
"target-lexicon 0.11.2",
]
[[package]]
name = "cranelift-frontend"
version = "0.74.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c31b783b351f966fce33e3c03498cb116d16d97a8f9978164a60920bd0d3a99c"
dependencies = [
"cranelift-codegen",
"cranelift-codegen 0.74.0",
"log 0.4.14",
"smallvec 1.6.1",
"target-lexicon",
"target-lexicon 0.12.0",
]
[[package]]
@@ -1061,8 +1126,8 @@ version = "0.74.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a77c88d3dd48021ff1e37e978a00098524abd3513444ae252c08d37b310b3d2a"
dependencies = [
"cranelift-codegen",
"target-lexicon",
"cranelift-codegen 0.74.0",
"target-lexicon 0.12.0",
]
[[package]]
@@ -1071,15 +1136,15 @@ version = "0.74.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "edb6d408e2da77cdbbd65466298d44c86ae71c1785d2ab0d8657753cdb4d9d89"
dependencies = [
"cranelift-codegen",
"cranelift-entity",
"cranelift-frontend",
"cranelift-codegen 0.74.0",
"cranelift-entity 0.74.0",
"cranelift-frontend 0.74.0",
"itertools 0.10.0",
"log 0.4.14",
"serde",
"smallvec 1.6.1",
"thiserror",
"wasmparser",
"wasmparser 0.78.2",
]
[[package]]
@@ -1333,6 +1398,41 @@ dependencies = [
"zeroize",
]
[[package]]
name = "darling"
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "757c0ded2af11d8e739c4daea1ac623dd1624b06c844cf3f5a39f1bdbd99bb12"
dependencies = [
"darling_core",
"darling_macro",
]
[[package]]
name = "darling_core"
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2c34d8efb62d0c2d7f60ece80f75e5c63c1588ba68032740494b0b9a996466e3"
dependencies = [
"fnv",
"ident_case",
"proc-macro2",
"quote",
"strsim 0.10.0",
"syn",
]
[[package]]
name = "darling_macro"
version = "0.13.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ade7bff147130fe5e6d39f089c6bd49ec0250f35d70b2eebf72afdfc919f15cc"
dependencies = [
"darling_core",
"quote",
"syn",
]
[[package]]
name = "data-encoding"
version = "2.3.2"
@@ -1496,6 +1596,32 @@ version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ee2626afccd7561a06cf1367e2950c4718ea04565e20fb5029b6c7d8ad09abcf"
[[package]]
name = "dynasm"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cdc2d9a5e44da60059bd38db2d05cbb478619541b8c79890547861ec1e3194f0"
dependencies = [
"bitflags",
"byteorder",
"lazy_static",
"proc-macro-error 1.0.4",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "dynasmrt"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "42276e3f205fe63887cca255aa9a65a63fb72764c30b9a6252a7c7e46994f689"
dependencies = [
"byteorder",
"dynasm",
"memmap2",
]
[[package]]
name = "ed25519"
version = "1.0.3"
@@ -1557,6 +1683,27 @@ dependencies = [
"syn",
]
[[package]]
name = "enumset"
version = "1.0.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e76129da36102af021b8e5000dab2c1c30dbef85c1e482beeff8da5dde0e0b0"
dependencies = [
"enumset_derive",
]
[[package]]
name = "enumset_derive"
version = "0.5.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6451128aa6655d880755345d085494cf7561a6bee7c8dc821e5d77e6d267ecd4"
dependencies = [
"darling",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "env_logger"
version = "0.7.1"
@@ -2248,6 +2395,17 @@ dependencies = [
"polyval",
]
[[package]]
name = "gimli"
version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aaf91faf136cb47367fa430cd46e37a788775e7fa104f8b4bcb3861dc389b724"
dependencies = [
"fallible-iterator",
"indexmap",
"stable_deref_trait",
]
[[package]]
name = "gimli"
version = "0.23.0"
@@ -2560,6 +2718,12 @@ dependencies = [
"tokio-native-tls",
]
[[package]]
name = "ident_case"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
[[package]]
name = "idna"
version = "0.1.5"
@@ -3069,6 +3233,16 @@ dependencies = [
"winapi 0.3.9",
]
[[package]]
name = "libloading"
version = "0.6.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "351a32417a12d5f7e82c368a66781e307834dae04c6ce0cd4456d52989229883"
dependencies = [
"cfg-if 1.0.0",
"winapi 0.3.9",
]
[[package]]
name = "libloading"
version = "0.7.0"
@@ -4647,6 +4821,16 @@ dependencies = [
"libc",
]
[[package]]
name = "object"
version = "0.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8d3b63360ec3cb337817c2dbd47ab4a0f170d285d8e5a2064600f3def1402397"
dependencies = [
"crc32fast",
"indexmap",
]
[[package]]
name = "object"
version = "0.23.0"
@@ -7631,6 +7815,8 @@ dependencies = [
"sp-serializer",
"sp-wasm-interface",
"thiserror",
"wasmer",
"wasmer-compiler-singlepass",
"wasmi",
]
@@ -7642,6 +7828,7 @@ dependencies = [
"parity-scale-codec",
"sc-allocator",
"sc-executor-common",
"scoped-tls",
"sp-core",
"sp-runtime-interface",
"sp-wasm-interface",
@@ -8410,6 +8597,15 @@ dependencies = [
"serde_derive",
]
[[package]]
name = "serde_bytes"
version = "0.11.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "16ae07dd2f88a366f15bd0632ba725227018c69a1c8550a927324f8eb8368bb9"
dependencies = [
"serde",
]
[[package]]
name = "serde_cbor"
version = "0.11.1"
@@ -9493,6 +9689,12 @@ version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
[[package]]
name = "strsim"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
[[package]]
name = "structopt"
version = "0.3.21"
@@ -9848,6 +10050,12 @@ version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369"
[[package]]
name = "target-lexicon"
version = "0.11.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "422045212ea98508ae3d28025bc5aaa2bd4a9cdaecd442a08da2ee620ee9ea95"
[[package]]
name = "target-lexicon"
version = "0.12.0"
@@ -10974,6 +11182,199 @@ dependencies = [
"web-sys",
]
[[package]]
name = "wasmer"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a70cfae554988d904d64ca17ab0e7cd652ee5c8a0807094819c1ea93eb9d6866"
dependencies = [
"cfg-if 0.1.10",
"indexmap",
"more-asserts",
"target-lexicon 0.11.2",
"thiserror",
"wasmer-compiler",
"wasmer-compiler-cranelift",
"wasmer-derive",
"wasmer-engine",
"wasmer-engine-jit",
"wasmer-engine-native",
"wasmer-types",
"wasmer-vm",
"wat",
"winapi 0.3.9",
]
[[package]]
name = "wasmer-compiler"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6b7732a9cab472bd921d5a0c422f45b3d03f62fa2c40a89e0770cef6d47e383e"
dependencies = [
"enumset",
"serde",
"serde_bytes",
"smallvec 1.6.1",
"target-lexicon 0.11.2",
"thiserror",
"wasmer-types",
"wasmer-vm",
"wasmparser 0.65.0",
]
[[package]]
name = "wasmer-compiler-cranelift"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "48cb9395f094e1d81534f4c5e330ed4cdb424e8df870d29ad585620284f5fddb"
dependencies = [
"cranelift-codegen 0.68.0",
"cranelift-frontend 0.68.0",
"gimli 0.22.0",
"more-asserts",
"rayon",
"serde",
"smallvec 1.6.1",
"tracing",
"wasmer-compiler",
"wasmer-types",
"wasmer-vm",
]
[[package]]
name = "wasmer-compiler-singlepass"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "426ae6ef0f606ca815510f3e2ef6f520e217514bfb7a664defe180b9a9e75d07"
dependencies = [
"byteorder",
"dynasm",
"dynasmrt",
"lazy_static",
"more-asserts",
"rayon",
"serde",
"smallvec 1.6.1",
"wasmer-compiler",
"wasmer-types",
"wasmer-vm",
]
[[package]]
name = "wasmer-derive"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8b86dcd2c3efdb8390728a2b56f762db07789aaa5aa872a9dc776ba3a7912ed"
dependencies = [
"proc-macro-error 1.0.4",
"proc-macro2",
"quote",
"syn",
]
[[package]]
name = "wasmer-engine"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "efe4667d6bd888f26ae8062a63a9379fa697415b4b4e380f33832e8418fd71b5"
dependencies = [
"backtrace",
"bincode",
"lazy_static",
"memmap2",
"more-asserts",
"rustc-demangle",
"serde",
"serde_bytes",
"target-lexicon 0.11.2",
"thiserror",
"wasmer-compiler",
"wasmer-types",
"wasmer-vm",
]
[[package]]
name = "wasmer-engine-jit"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "26770be802888011b4a3072f2a282fc2faa68aa48c71b3db6252a3937a85f3da"
dependencies = [
"bincode",
"cfg-if 0.1.10",
"region",
"serde",
"serde_bytes",
"wasmer-compiler",
"wasmer-engine",
"wasmer-types",
"wasmer-vm",
"winapi 0.3.9",
]
[[package]]
name = "wasmer-engine-native"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2bb4083a6c69f2cd4b000b82a80717f37c6cc2e536aee3a8ffe9af3edc276a8b"
dependencies = [
"bincode",
"cfg-if 0.1.10",
"leb128",
"libloading 0.6.7",
"serde",
"tempfile",
"tracing",
"wasmer-compiler",
"wasmer-engine",
"wasmer-object",
"wasmer-types",
"wasmer-vm",
"which",
]
[[package]]
name = "wasmer-object"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "abf8e0c12b82ff81ebecd30d7e118be5fec871d6de885a90eeb105df0a769a7b"
dependencies = [
"object 0.22.0",
"thiserror",
"wasmer-compiler",
"wasmer-types",
]
[[package]]
name = "wasmer-types"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c7f4ac28c2951cd792c18332f03da523ed06b170f5cf6bb5b1bdd7e36c2a8218"
dependencies = [
"cranelift-entity 0.68.0",
"serde",
"thiserror",
]
[[package]]
name = "wasmer-vm"
version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a7635ba0b6d2fd325f588d69a950ad9fa04dddbf6ad08b6b2a183146319bf6ae"
dependencies = [
"backtrace",
"cc",
"cfg-if 0.1.10",
"indexmap",
"libc",
"memoffset 0.6.1",
"more-asserts",
"region",
"serde",
"thiserror",
"wasmer-types",
"winapi 0.3.9",
]
[[package]]
name = "wasmi"
version = "0.9.0"
@@ -10999,6 +11400,12 @@ dependencies = [
"parity-wasm 0.42.2",
]
[[package]]
name = "wasmparser"
version = "0.65.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87cc2fe6350834b4e528ba0901e7aa405d78b89dc1fa3145359eb4de0e323fcf"
[[package]]
name = "wasmparser"
version = "0.78.2"
@@ -11026,8 +11433,8 @@ dependencies = [
"rustc-demangle",
"serde",
"smallvec 1.6.1",
"target-lexicon",
"wasmparser",
"target-lexicon 0.12.0",
"wasmparser 0.78.2",
"wasmtime-cache",
"wasmtime-environ",
"wasmtime-jit",
@@ -11063,12 +11470,12 @@ version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c525b39f062eada7db3c1298287b96dcb6e472b9f6b22501300b28d9fa7582f6"
dependencies = [
"cranelift-codegen",
"cranelift-entity",
"cranelift-frontend",
"cranelift-codegen 0.74.0",
"cranelift-entity 0.74.0",
"cranelift-frontend 0.74.0",
"cranelift-wasm",
"target-lexicon",
"wasmparser",
"target-lexicon 0.12.0",
"wasmparser 0.78.2",
"wasmtime-environ",
]
@@ -11082,9 +11489,9 @@ dependencies = [
"gimli 0.24.0",
"more-asserts",
"object 0.24.0",
"target-lexicon",
"target-lexicon 0.12.0",
"thiserror",
"wasmparser",
"wasmparser 0.78.2",
"wasmtime-environ",
]
@@ -11095,8 +11502,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f64d0c2d881c31b0d65c1f2695e022d71eb60b9fbdd336aacca28208b58eac90"
dependencies = [
"cfg-if 1.0.0",
"cranelift-codegen",
"cranelift-entity",
"cranelift-codegen 0.74.0",
"cranelift-entity 0.74.0",
"cranelift-wasm",
"gimli 0.24.0",
"indexmap",
@@ -11104,7 +11511,7 @@ dependencies = [
"more-asserts",
"serde",
"thiserror",
"wasmparser",
"wasmparser 0.78.2",
]
[[package]]
@@ -11116,9 +11523,9 @@ dependencies = [
"addr2line 0.15.1",
"anyhow",
"cfg-if 1.0.0",
"cranelift-codegen",
"cranelift-entity",
"cranelift-frontend",
"cranelift-codegen 0.74.0",
"cranelift-entity 0.74.0",
"cranelift-frontend 0.74.0",
"cranelift-native",
"cranelift-wasm",
"gimli 0.24.0",
@@ -11128,9 +11535,9 @@ dependencies = [
"rayon",
"region",
"serde",
"target-lexicon",
"target-lexicon 0.12.0",
"thiserror",
"wasmparser",
"wasmparser 0.78.2",
"wasmtime-cranelift",
"wasmtime-debug",
"wasmtime-environ",
@@ -11149,7 +11556,7 @@ dependencies = [
"anyhow",
"more-asserts",
"object 0.24.0",
"target-lexicon",
"target-lexicon 0.12.0",
"wasmtime-debug",
"wasmtime-environ",
]
@@ -11165,7 +11572,7 @@ dependencies = [
"lazy_static",
"libc",
"serde",
"target-lexicon",
"target-lexicon 0.12.0",
"wasmtime-environ",
"wasmtime-runtime",
]