Commit Graph

527 Commits

Author SHA1 Message Date
Dmitry Sinyavin 6bf31c0331 Backward compatibility and tracing 2022-07-27 13:45:52 +02:00
Dmitry Sinyavin 8a552c033c Fix failing pipeline checks 2022-07-26 11:38:58 +02:00
Dmitry Sinyavin c55ea7bfb7 Weighted stack metering 2022-07-26 10:52:14 +02:00
dependabot[bot] 3b932b11ad Update wasmparser requirement from 0.86 to 0.87 (#24)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version.
- [Release notes](https://github.com/bytecodealliance/wasm-tools/releases)
- [Commits](https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.86.0...wasmparser-0.87.0)

---
updated-dependencies:
- dependency-name: wasmparser
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-06 11:21:44 +02:00
Alexander Theißen d10bbdf554 Fix CODEOWNERS 2022-06-21 14:21:59 +02:00
dependabot[bot] 28ef7f550c Update wasmparser requirement from 0.84 to 0.86 (#23)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version.
- [Release notes](https://github.com/bytecodealliance/wasm-tools/releases)
- [Commits](https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.84.0...wasmparser-0.86.0)

---
updated-dependencies:
- dependency-name: wasmparser
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-12 20:24:01 +01:00
Filipe Azevedo 4a394c5f88 bump version (#22) 2022-06-08 10:29:51 +02:00
Alexander Theißen d1648be274 Fix publish 2022-06-06 16:16:30 +01:00
Filipe Azevedo 4a51f16874 handle debug info (#16) v0.1.2 2022-06-06 15:42:52 +01:00
dependabot[bot] 8380823e62 Bump actions/checkout from 2 to 3 (#19)
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 11:53:30 +03:00
Sergejs Kostjucenko 88d652e69a add gha to dependabot (#18) 2022-06-02 19:23:10 +03:00
dependabot[bot] 4713aa760f Update wasmparser requirement from 0.82 to 0.84 (#10)
* Update wasmparser requirement from 0.82 to 0.84

Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version.
- [Release notes](https://github.com/bytecodealliance/wasm-tools/releases)
- [Commits](https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.82.0...wasmparser-0.84.0)

---
updated-dependencies:
- dependency-name: wasmparser
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Adapt tests to new wasmparser

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
2022-04-07 15:50:15 +02:00
Alexander Theißen 4548a86329 Add test to measure size overhead (#8)
* Don't use parity-wasm directly

* Add test that output size over head of metering
2022-01-31 14:50:32 +01:00
Alexander Theißen ff68bee449 We should use bench_with_input so that a blackbox is used 2022-01-31 13:14:12 +01:00
Alexander Theißen 7c843842a7 Run CI on windows, too (#7)
* Run CI on windows, too

* Build path without `concat!` macro

* Fix ci on windows
2022-01-31 11:03:18 +01:00
Alexander Theißen 374afe5700 Replace wabt with rust tools (#5) 2022-01-30 13:05:07 +01:00
Alexander Theißen 8291876394 Add benchmarks and add tiny performance improvements (#6)
* Add some benchmarks

* Replace extend -> extend_from_slice (1-2% performance improvement)

* Add many_blocks benchmarks
2022-01-24 21:20:47 +01:00
Alexander Theißen 184b3f8b3a Prepare for releasing v0.1.1 2022-01-18 18:28:07 +01:00
Alexander Theißen 57da96fb50 Consider activation frame for stack height metering (#2)
* Charge a base cost for calling a function

* Added regression test for empty functions

* Satisfy clippy
2022-01-18 18:04:17 +01:00
Alexander Theißen 4e3e6b598a Added documentation link 2022-01-11 21:46:18 +02:00
Alexander Theißen c5eaffd229 Fix README typo 2022-01-11 21:37:12 +02:00
Alexander Theißen e882111f92 Remove everything not needed by substrate
Also rename to wasm-instrument
2022-01-11 17:50:24 +02:00
Leonardo Yvens b22696aaa5 sign_ext feature flag (#174)
* sign_ext feature flag

* Derive default to fix clippy warning
2021-12-21 15:23:16 +01:00
Dan Shields 5259f1c922 Merge pull request #173 from paritytech/NukeManDan-patch-1
version 0.19.0
rust 2021
MSRV 1.56.1
2021-11-21 16:01:06 -07:00
Dan Shields da2f0a0f23 version 0.19.0
edition = "2021"
rust-version = "1.56.1"
2021-11-20 23:46:06 -07:00
Keith Yeung 1d62dc1270 cargo fmt 2021-11-13 19:05:45 -08:00
Dan Shields abd5d4f6df move to rust 2021 2021-11-13 19:59:13 -07:00
Sergei Shulepov c9b837c80a Merge pull request #171 from paritytech/at-bump-version
Bump version and only include essential files in crate
2021-09-08 14:17:45 +02:00
Alexander Theißen 2bf8068571 Bump version and only include essential files in crate 2021-09-07 17:55:50 +02:00
Alexander Theißen 2293760964 Use linear time algorithm to inject stack height metering (#170) 2021-09-07 17:42:03 +02:00
Alexander Theißen 2f88f49ef6 Add test for empty loops (#169) 2021-09-06 16:25:50 +02:00
Alexander Theißen 6ff274f0b8 Add CODEOWNERS (#167) 2021-08-02 12:54:10 +03:00
Chevdor 3d3e3010b3 Add justfile (#166) 2021-07-28 16:29:33 +02:00
Chevdor ef4e09fff9 Typo and minor fixes (#165) 2021-07-28 16:28:25 +02:00
Chevdor b8b18be419 Fix linting related issues (#164) 2021-07-27 16:14:14 +02:00
Alexander Theißen 72626a566a Add a clippy job to the CI (#163)
* Add clippy CI check

* Fix remaining clippy lints

* Cargo fmt
2021-07-27 15:50:50 +02:00
dependabot[bot] b8e6b9e319 Update env_logger requirement from 0.8 to 0.9 (#159)
Updates the requirements on [env_logger](https://github.com/env-logger-rs/env_logger) to permit the latest version.
- [Release notes](https://github.com/env-logger-rs/env_logger/releases)
- [Changelog](https://github.com/env-logger-rs/env_logger/blob/main/CHANGELOG.md)
- [Commits](https://github.com/env-logger-rs/env_logger/compare/v0.8.0...v0.9.0)

---
updated-dependencies:
- dependency-name: env_logger
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-07-27 15:38:59 +02:00
Chevdor cb023973e8 Cleanup (#162)
* Remove unnecessary references

* Shorten expressions

* Remove unnecessary reference

* Simplify expression

* Fix formatting
2021-07-27 15:14:55 +02:00
Alexander Theißen a0b548b37d Add rustfmt.toml from substrate repo (#161)
* Add rustfmt.toml from substrate repo

* Apply rustfmt to code base

* Fix formatting

* Move rustfmt job to the top
2021-07-27 14:46:28 +02:00
Alexander Theißen 77ad07e347 Add github actions (#160)
* Add github actions

* s/toolchains/toolchain

* s/test/build

* Remove no longer need travis
2021-07-27 13:59:16 +02:00
Alexander Theißen c5043a47ac Add dependabot (#158) 2021-07-27 12:06:17 +02:00
NikVolf 9f15b8cd21 bump to 0.18.1 2021-06-10 14:31:47 +03:00
Nikolay Volf 1ef05d71ed Strip custom sections in wasm-prune (#150)
* strip custom sections

* line width
2021-06-10 14:29:59 +03:00
Sergei Shulepov 0cead7ba6d Merge pull request #151 from paritytech/ser-bless
Add BLESS env option
2021-06-10 11:13:04 +02:00
Sergei Shulepov e1c8ce90a1 Merge pull request #152 from paritytech/ser-fix-locals
Fix counting of the local variables
2021-06-10 10:49:36 +02:00
Sergei Shulepov 9e98400de0 Update tests/diff.rs
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
2021-06-10 10:49:16 +02:00
Sergey Shulepov 19760b5835 Fix counting of the local variables
The code assumed that the number of `Local` and number of locals is the
same thing. In reality though it is not. `Local` actually represents a
group of locals with the same type. The group can declare more than one
variable and the number of them is returned by `Local::count`.

In this PR we acknowledge this fact. Along the way we add a checked
arithmetic for locals_count and max_stack_height summation.
2021-06-09 19:22:40 +02:00
Sergey Shulepov 717aa8f0cb Add BLESS env option
Right now if there is a diff between the actual and expected results,
the expected file will be overwritten. This may be annoying. To make it
controlled we introduce BLESS option.

This means that the expected files won't be regenerated unless this
environment variable is set.

Therefore to regenerate the tests use:

    BLESS=1 cargo test
2021-06-09 19:17:54 +02:00
Sergei Shulepov d891cddcb3 Merge pull request #149 from paritytech/at-export-parity-wasm
Export the complete `parity-wasm` crate
2021-05-27 12:18:15 +02:00
Alexander Theißen 95a711bc33 Re-export the whole parity_wasm crate 2021-05-26 15:10:15 +02:00