PVF: NaN canonicalization & deteriministic stack (#9069)

* NaN canonicalization

* Introduce a simple stack depth metering

* Be explicit about the wasm features we enable

* Pull the latest latast fix for the pwasm-utils crate

* Disable `wasm_threads` as well.

* Factor out deterministic stack params

* Add more docs

* Remove redundant dep

* Refine comments

* Typo

Co-authored-by: Andronik Ordian <write@reusable.software>

Co-authored-by: Andronik Ordian <write@reusable.software>
This commit is contained in:
Sergei Shulepov
2021-07-07 11:29:39 +03:00
committed by GitHub
parent d80e1bc978
commit f388b66ab5
9 changed files with 2610 additions and 66 deletions
@@ -24,7 +24,11 @@ sp-wasm-interface = { version = "3.0.0", path = "../../../primitives/wasm-interf
sp-runtime-interface = { version = "3.0.0", path = "../../../primitives/runtime-interface" }
sp-core = { version = "3.0.0", path = "../../../primitives/core" }
sc-allocator = { version = "3.0.0", path = "../../allocator" }
wasmtime = "0.27.0"
wasmtime = { version = "0.27.0", default-features = false, features = ["cache", "parallel-compilation"] }
pwasm-utils = { version = "0.18" }
[dev-dependencies]
assert_matches = "1.3.0"
sc-runtime-test = { version = "2.0.0", path = "../runtime-test" }
sp-io = { version = "3.0.0", path = "../../../primitives/io" }
wat = "1.0"