6 Commits

Author SHA1 Message Date
Sergey Pepyakin
3db0d60e70 Teach stack limiter to handle start fn 2018-12-24 19:20:33 +01:00
Wei Tang
d6f82000ee Update parity-wasm dependency to 0.31 2018-06-29 19:01:06 +08:00
Hernando Castano
e6e340fa0a Update matches with single arm to be if-let statements 2018-05-29 22:46:11 -04:00
Wei Tang
a30afec0cd Port core util lib to support no_std 2018-05-15 08:22:29 +08:00
Sergey Pepyakin
1cebd86bf6 Add 'target' for trace logging in max_height
This should greatly reduce log amount when running parity with trace=wasm.
2018-03-25 14:05:42 +03:00
Sergey Pepyakin
9527b969a4 Impl stack height limiter (#64)
* Initial implementation

* Add wasm-stack-height binary

* Fixes and tracing.

* Doc fixes.

* Fix type resolving for thunks.

* Fix thunk numbering.

* Don't generate thunks for fns with stack_cost = 0

* Diff tests.

* Add table tests.

* Add global test.

* Make tests deterministic.

* Refactoring.

* Clean and refactor.

* Rename Context → Stack in stach_height.

* Don't generate call wrappers if stack_cost = 0

* Errors instead of panics.

* Add with_stack_limit function.

* Fix thunk generation.

* Pass the stack height limit as separate value.

* Use .unwrap_or_default() in diff.rs.

* Remove redundant &.

* Remove simple_test.

* Remove variants of the Error.

* `resolve_func_type` returns an Error.

* Don't unwrap for .last()

* Remove stack_limit from rules::Set

* Rename max_height::compute.
2018-02-27 16:52:37 +03:00