mirror of
https://github.com/pezkuwichain/wasm-instrument.git
synced 2026-04-22 04:27:57 +00:00
51daef9eba6f3f77aeacf4e4df1533573639fbac
546 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
51daef9eba |
Update wasmparser requirement from 0.101 to 0.102 (#57)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/1d75a98fe32f9f4ea8cca2e51377116201e60e81"><code>1d75a98</code></a> Bump crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/950">#950</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/cfc1d6052e4596ba6c577b1bb192fc6423b46154"><code>cfc1d60</code></a> Fix size/align calculations for WIT variants (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/948">#948</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/ae010afe5a252b645fcfebf0b32d7a42384c57b8"><code>ae010af</code></a> Increase limits on component/module/instance types (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/947">#947</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/6da2f7490d12c36cc3652bb2c150b13262892af2"><code>6da2f74</code></a> Restrict component import/export overlap (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/946">#946</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/efb9316b2fd462150c259a11a984a59d3e0cbfd8"><code>efb9316</code></a> Update support for the relaxed-simd proposal (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/944">#944</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/56cdbdd3fc6b1aca1afb13268bc5f3494e9c5b6c"><code>56cdbdd</code></a> Increase the maximum type size to 1M (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/945">#945</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/c892013426b5143b3e6108d2fc42ef825e63fe88"><code>c892013</code></a> Improve validation error when component model feature not enabled (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/939">#939</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/cdbaae2272b12bc70ceb76587f0f9c8968b7ffe1"><code>cdbaae2</code></a> bump versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/942">#942</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/07a55c628d20a9f5cb21c684da430d9453c3f6a5"><code>07a55c6</code></a> wasm-compose: update the example for latest tooling. (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/941">#941</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/4ee705fbb5600ae51ec3192b5a1cbf8f67bfda95"><code>4ee705f</code></a> Remove outdated <code>is_char</code> check in ABI lowering (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/938">#938</a>)</li> <li>Additional commits viewable in <a href="https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.101.0...wasmparser-0.102.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
3ba9c2cfa1 |
Add benchmarks for wasmi builtin metering (#56)
* Upgraded to newest wasmi
* Refactored benchmarks
* Two new benchmark strategies (`no_metering` and `wasmi_builtin`)
We can now benchmark the execution of modules using our two
instrumentation strategies in addition to no metering (as a baseline)
and wasmi's builtin metering.
We can learn from the following results (ran on my M1) that the builtin
metering decisively outperforms the instrumentation on every single
fixture.
cc @Robbepop
```
coremark/no_metering [15.586 s 15.588 s 15.589 s]
coremark/wasmi_builtin [16.403 s 16.414 s 16.434 s]
coremark/host_function [18.245 s 18.248 s 18.252 s]
coremark/mutable_global [20.476 s 20.486 s 20.505 s]
recursive_ok/no_metering [111.32 µs 111.33 µs 111.34 µs]
recursive_ok/wasmi_builtin [138.64 µs 138.65 µs 138.66 µs]
recursive_ok/host_function [495.55 µs 495.64 µs 495.78 µs]
recursive_ok/mutable_global [514.07 µs 514.09 µs 514.11 µs]
fibonacci_recursive/no_metering [3.9098 µs 3.9102 µs 3.9108 µs]
fibonacci_recursive/wasmi_builtin [4.3242 µs 4.3246 µs 4.3250 µs]
fibonacci_recursive/host_function [12.913 µs 12.914 µs 12.915 µs]
fibonacci_recursive/mutable_global [13.202 µs 13.208 µs 13.212 µs]
factorial_recursive/no_metering [530.72 ns 530.84 ns 530.91 ns]
factorial_recursive/wasmi_builtin [619.17 ns 619.30 ns 619.44 ns]
factorial_recursive/host_function [1.7656 µs 1.7657 µs 1.7659 µs]
factorial_recursive/mutable_global [1.8783 µs 1.8786 µs 1.8788 µs]
count_until/no_metering [1.2422 ms 1.2423 ms 1.2424 ms]
count_until/wasmi_builtin [1.3976 ms 1.3978 ms 1.3981 ms]
count_until/host_function [4.8074 ms 4.8106 ms 4.8125 ms]
count_until/mutable_global [5.9161 ms 5.9169 ms 5.9182 ms]
memory_vec_add/no_metering [4.1630 ms 4.1638 ms 4.1648 ms]
memory_vec_add/wasmi_builtin [4.3913 ms 4.3925 ms 4.3930 ms]
memory_vec_add/host_function [8.2925 ms 8.2949 ms 8.2967 ms]
memory_vec_add/mutable_global [9.1124 ms 9.1152 ms 9.1163 ms]
wasm_kernel::tiny_keccak/no_metering [613.21 µs 613.42 µs 613.58 µs]
wasm_kernel::tiny_keccak/wasmi_builtin [617.04 µs 617.46 µs 617.81 µs]
wasm_kernel::tiny_keccak/host_function [817.24 µs 817.44 µs 817.89 µs]
wasm_kernel::tiny_keccak/mutable_global [873.42 µs 873.90 µs 874.65 µs]
global_bump/no_metering [1.4597 ms 1.4598 ms 1.4600 ms]
global_bump/wasmi_builtin [1.6151 ms 1.6152 ms 1.6153 ms]
global_bump/host_function [5.5393 ms 5.5418 ms 5.5435 ms]
global_bump/mutable_global [6.9446 ms 6.9454 ms 6.9461 ms]
```
|
||
|
|
16297ab942 |
Update wasmparser requirement from 0.100 to 0.101 (#53)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/ca2e77094dc1896d6d8c85d638981c6bfb4f9ae6"><code>ca2e770</code></a> Bump crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/931">#931</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/de36f6c60166bcbc7681f6b97dd5990441cb43a6"><code>de36f6c</code></a> Support wit bindgens adding producer information via component-type metadata ...</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/902e2898c8965c1b75051bb64ef6d774f46447d2"><code>902e289</code></a> Add a function to extract a world from a document (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/928">#928</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/c242e9a7e79d989792d1824915ac192a2afb57d9"><code>c242e9a</code></a> Fix validation of <code>ref.func</code> without function-references (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/925">#925</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/e713d1e8e71b170c880c2ddad8bfb9f992c57b47"><code>e713d1e</code></a> Fix validation panic with unreachable code (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/926">#926</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/cda63d228ab58ebaccff1d5f544ae3c65a8d506a"><code>cda63d2</code></a> Run more function-references tests (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/922">#922</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/dd5ad96a52b5095fc4dcb9b305ebe8c8b5041a98"><code>dd5ad96</code></a> Fix a copy/paste mistake in add-function mutator (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/927">#927</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/e5293d587f463e67d42ca26b151cd7afdc0a5e17"><code>e5293d5</code></a> Function references (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/701">#701</a>)</li> <li>See full diff in <a href="https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.100.0...wasmparser-0.101.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
325cdb8969 |
Update wasmparser requirement from 0.99 to 0.100 (#51)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/0932bc10082c6457a33164beb1b07d64cbdc093e"><code>0932bc1</code></a> Bump crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/921">#921</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/c7e5beb2849d8fef26988758de171ac860fe5848"><code>c7e5beb</code></a> Encode exported instances with nested components (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/918">#918</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/37f63ebefb90b41c1c5757098fe93b192ec04139"><code>37f63eb</code></a> wit-component: lazily allocate adapter stack when appropriate (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/919">#919</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/fc5ab6cd9165c50afdbb58bb1a65c0bc2cc3fd8c"><code>fc5ab6c</code></a> Reduce the code size of some wasm-mutate functions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/917">#917</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/49d3adc05022aee0faa77eeca3bc3872c29fa7fd"><code>49d3adc</code></a> Implement export type ascription (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/913">#913</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/02291c7a4ba43d3371072fb39908f1cca88e99a3"><code>02291c7</code></a> Model types-in-worlds as imports (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/916">#916</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/e34c72f8d95220ec1f4a8e189e3af615e9baccb7"><code>e34c72f</code></a> Add a test suite for the <code>wasm-tools</code> CLI (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/915">#915</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/22c9e0f26240344aadcab7dcb5093f8f7d73780d"><code>22c9e0f</code></a> Remove function-based subtyping (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/914">#914</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/098ad8230d10bb5e131b9c01a1883045ccbd083d"><code>098ad82</code></a> Disable float types with <code>floats = false</code> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/912">#912</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/90e4d87beded25f7285aa9ec06e9d594e071d048"><code>90e4d87</code></a> Bump crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/907">#907</a>)</li> <li>Additional commits viewable in <a href="https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.99.0...wasmparser-0.100.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
53f640af63 |
Update wasmparser requirement from 0.98 to 0.99 (#48)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/278c3ee93f0ebbcb7221b1410a402b62ae56c4ae"><code>278c3ee</code></a> Bump versions of crates (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/891">#891</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/a7c8b09391b70235bb539ec750aa90798ac1e1ec"><code>a7c8b09</code></a> Fix a slew of fuzz bugs in wit-{parser,component} (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/886">#886</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/b7eb6aae41dfd7c76dec6f53923b8de4785f1af5"><code>b7eb6aa</code></a> wasm-mutate: Add an "AddCustomSection" mutator (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/890">#890</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/cacda73ccb6f9f8cc42e8391c77480187c99b48d"><code>cacda73</code></a> Fix resolving memory names of <code>memory.discard</code> in text format (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/888">#888</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/8173865e15f7b259b92093cb283a40655565bbd4"><code>8173865</code></a> <code>wasm-smith</code>: Add support for the Wasm tail calls proposal (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/887">#887</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/507c0541586ca4e4c88cf43c66210140e018b435"><code>507c054</code></a> Fix references to imported types in the text format (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/885">#885</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/e60c726ee5fafe0a62e18aa4f0924d1298140524"><code>e60c726</code></a> Manually bump patch versions to move over yanks</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/ed2558cd7764061af02925f111fe762580cc9920"><code>ed2558c</code></a> Bump versions for real</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/7d5843d19067625c79e8af6561dfe4609b0c6ac8"><code>7d5843d</code></a> Revert "Bump crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/884">#884</a>)"</li> <li>See full diff in <a href="https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.98.0...wasmparser-0.99.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
a667e38b5a |
Update wasmparser requirement from 0.97 to 0.98 (#47)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/e60c726ee5fafe0a62e18aa4f0924d1298140524"><code>e60c726</code></a> Manually bump patch versions to move over yanks</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/ed2558cd7764061af02925f111fe762580cc9920"><code>ed2558c</code></a> Bump versions for real</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/7d5843d19067625c79e8af6561dfe4609b0c6ac8"><code>7d5843d</code></a> Revert "Bump crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/884">#884</a>)"</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/d23f487448e1f2f3545a36328d70021693d4400c"><code>d23f487</code></a> Bump crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/884">#884</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/398b367f79a086a0b2f8fa0f71657d523c29d079"><code>398b367</code></a> Add experimental memory.discard instruction (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/882">#882</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/9a51f6de46d29cbafd8cc3b3e50bd2447f7e7fb3"><code>9a51f6d</code></a> VisitOperator: implement delegates for Box<VisitOperator> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/883">#883</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/208b2e79fbc0ba0c9e63a9ea15e60fcec437b383"><code>208b2e7</code></a> Fix some minor issues in <code>wit-component</code> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/881">#881</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/a1fdde03f81aa14709d73fb6ddde21b55d22177c"><code>a1fdde0</code></a> VisitOperator: implement delegate from &mut VisitOperator (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/880">#880</a>)</li> <li>See full diff in <a href="https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.97.0...wasmparser-0.98.1">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
b67ac31310 |
Update wasmparser requirement from 0.96 to 0.97 (#45)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version. <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/bytecodealliance/wasm-tools/commits">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
bee3aebeef |
Update wasmi requirement from 0.21 to 0.22 (#44)
Updates the requirements on [wasmi](https://github.com/paritytech/wasmi) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/paritytech/wasmi/releases">wasmi's releases</a>.</em></p> <blockquote> <h2>v0.22.0 - 2023-01-16</h2> <h3>Added</h3> <ul> <li>Add missing <code>TypedFunc::call_resumable</code> API. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/605">paritytech/wasmi#605</a>) <ul> <li>So far resumable calls were only available for the <code>Func</code> type. However, there was no technical reason why it was not implemented for <code>TypedFunc</code> so this mirrored API now exists.</li> <li>This also cleans up rough edges with the <code>Func::call_resumable</code> API.</li> </ul> </li> </ul> <h3>Changed</h3> <ul> <li>Clean up the <code>wasmi_core</code> crate API. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/607">paritytech/wasmi#607</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/608">paritytech/wasmi#608</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/609">paritytech/wasmi#609</a>) <ul> <li>This removes plenty of traits from the public interface of the crate which greatly simplifies the API surface for users.</li> <li>The <code>UntypedValue</code> type gained some new methods to replace functionality that was provided in parts by the removed traits.</li> </ul> </li> <li>The <code>wasmi</code> crate now follows the Wasmtime API a bit more closely. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/613">paritytech/wasmi#613</a>)</li> </ul> <h3>Internal</h3> <ul> <li>The <code>Store</code> and <code>Engine</code> types are better decoupled from their generic parts. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/610">paritytech/wasmi#610</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/611">paritytech/wasmi#611</a>) <ul> <li>This might reduce binary bloat and may have positive effects on the performance. In fact we measured significant performance improvements on the Wasm target.</li> </ul> </li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/paritytech/wasmi/blob/master/CHANGELOG.md">wasmi's changelog</a>.</em></p> <blockquote> <h2>[<code>0.22.0</code>] - 2023-01-16</h2> <h3>Added</h3> <ul> <li>Add missing <code>TypedFunc::call_resumable</code> API. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/605">paritytech/wasmi#605</a>) <ul> <li>So far resumable calls were only available for the <code>Func</code> type. However, there was no technical reason why it was not implemented for <code>TypedFunc</code> so this mirrored API now exists.</li> <li>This also cleans up rough edges with the <code>Func::call_resumable</code> API.</li> </ul> </li> </ul> <h3>Changed</h3> <ul> <li>Clean up the <code>wasmi_core</code> crate API. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/607">paritytech/wasmi#607</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/608">paritytech/wasmi#608</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/609">paritytech/wasmi#609</a>) <ul> <li>This removes plenty of traits from the public interface of the crate which greatly simplifies the API surface for users.</li> <li>The <code>UntypedValue</code> type gained some new methods to replace functionality that was provided in parts by the removed traits.</li> </ul> </li> <li>The <code>wasmi</code> crate now follows the Wasmtime API a bit more closely. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/613">paritytech/wasmi#613</a>)</li> </ul> <h3>Internal</h3> <ul> <li>The <code>Store</code> and <code>Engine</code> types are better decoupled from their generic parts. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/610">paritytech/wasmi#610</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/611">paritytech/wasmi#611</a>) <ul> <li>This might reduce binary bloat and may have positive effects on the performance. In fact we measured significant performance improvements on the Wasm target.</li> </ul> </li> </ul> <h2>[<code>0.21.0</code>] - 2023-01-04</h2> <h3>Added</h3> <ul> <li>Add support for resumable function calls. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/598">paritytech/wasmi#598</a>) <ul> <li>This feature allows to resume a function call upon encountering a host trap.</li> </ul> </li> <li>Add support for concurrently running function executions using a single <code>wasmi</code> engine. <ul> <li>This feature also allows to call Wasm functions from host functions. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/590">paritytech/wasmi#590</a>)</li> </ul> </li> <li>Add initial naive WASI support for <code>wasmi</code> using the new <code>wasmi_wasi</code> crate. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/557">paritytech/wasmi#557</a>) <ul> <li>Special thanks to <a href="https://github.com/OLUWAMUYIWA">Onigbinde Oluwamuyiwa Elijah</a> for carrying the WASI support efforts!</li> <li>Also thanks to <a href="https://github.com/Berrysoft">Yuyi Wang</a> for testing and improving initial WASI support. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/592">paritytech/wasmi#592</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/571">paritytech/wasmi#571</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/568">paritytech/wasmi#568</a>)</li> <li><strong>Note:</strong> There is ongoing work to integrate WASI support in <code>wasmi_cli</code> so that the <code>wasmi</code> CLI will then be able to execute arbitrary <code>wasm-wasi</code> files out of the box in the future.</li> </ul> </li> <li>Add <code>Module::imports</code> that allows to query Wasm module imports. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/573">paritytech/wasmi#573</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/583">paritytech/wasmi#583</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Fix a bug that imported linear memories and tables were initialized twice upon instantiation. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/593">paritytech/wasmi#593</a>)</li> <li>The <code>wasmi</code> CLI now properly hints for file path arguments. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/596">paritytech/wasmi#596</a>)</li> </ul> <h3>Changed</h3> <ul> <li>The <code>wasmi::Trap</code> type is now more similar to Wasmtime's <code>Trap</code> type. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/559">paritytech/wasmi#559</a>)</li> <li>The <code>wasmi::Store</code> type is now <code>Send</code> and <code>Sync</code> as intended. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/566">paritytech/wasmi#566</a>)</li> <li>The <code>wasmi</code> CLI now prints exported functions names if the function name CLI argument is missing. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/579">paritytech/wasmi#579</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/paritytech/wasmi/commit/0bbb80cc8063ba7cb5a25f2047b21990564e87fe"><code>0bbb80c</code></a> Prepare for release of <code>wasmi</code> <code>v0.22.0</code> (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/614">#614</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/7c16e7793553a132b7d7b4f53fb20209eafeffa2"><code>7c16e77</code></a> Mirror Wasmtime APIs more closely (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/613">#613</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/1a5891aa8716c4ffea01a98ca204267ae95d79c2"><code>1a5891a</code></a> Add tests for <code>ComponentVec</code> data structure (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/612">#612</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/2d139d76ce48a01ef0cb69330dae97468ff6fda5"><code>2d139d7</code></a> Make <code>Engine</code>'s executor use <code>&mut StoreInner</code> (making it non-generic) (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/611">#611</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/702cc6872aa19cd0067a18e5620ec05ca1dfdf73"><code>702cc68</code></a> Create a non-generic <code>StoreInner</code> (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/610">#610</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/cc05d72465cff368b2b09f76c84fe23bfa186b68"><code>cc05d72</code></a> No longer re-export unused traits from <code>wasmi_core</code> (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/609">#609</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/f4aabf3e10ffa72659b663e791f77fe39aa0c9ba"><code>f4aabf3</code></a> Add Wasm load and store API to <code>UntypedValue</code> (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/608">#608</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/d2069ce5378b931847b591fd1430dc8a0657eda7"><code>d2069ce</code></a> Cleanup <code>wasmi_core</code> crate (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/607">#607</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/0d12bffda0bc22affc26d499f3bfbbd7be1f17f7"><code>0d12bff</code></a> Refactor resumable function call tests (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/606">#606</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/7753fab3484678fed7ad72dd0005440987f610fa"><code>7753fab</code></a> Implement resumable calls for <code>TypedFunc</code> (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/605">#605</a>)</li> <li>See full diff in <a href="https://github.com/paritytech/wasmi/compare/v0.21.0...v0.22.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
74716698f5 |
Speedup CI (#43)
* No need to build on nightly: This crate works on stable * Use larger runners where applicable (linux) * Only run the tests on macOS and Windows: The rest is OS independent |
||
|
|
54213f77f6 |
Update wasmi requirement from 0.20 to 0.21 (#42)
Updates the requirements on [wasmi](https://github.com/paritytech/wasmi) to permit the latest version. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/paritytech/wasmi/releases">wasmi's releases</a>.</em></p> <blockquote> <h2>v0.21.0 - 2023-01-04</h2> <h3>Added</h3> <ul> <li>Add support for resumable function calls. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/598">paritytech/wasmi#598</a>) <ul> <li>This feature allows to resume a function call upon encountering a host trap.</li> </ul> </li> <li>Add support for concurrently running function executions using a single <code>wasmi</code> engine. <ul> <li>This feature also allows to call Wasm functions from host functions. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/590">paritytech/wasmi#590</a>)</li> </ul> </li> <li>Add initial naive WASI support for <code>wasmi</code> using the new <code>wasmi_wasi</code> crate. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/557">paritytech/wasmi#557</a>) <ul> <li>Special thanks to <a href="https://github.com/OLUWAMUYIWA">Onigbinde Oluwamuyiwa Elijah</a> for carrying the WASI support efforts!</li> <li>Also thanks to <a href="https://github.com/Berrysoft">Yuyi Wang</a> for testing and improving initial WASI support. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/592">paritytech/wasmi#592</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/571">paritytech/wasmi#571</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/568">paritytech/wasmi#568</a>)</li> <li><strong>Note:</strong> There is ongoing work to integrate WASI support in <code>wasmi_cli</code> so that the <code>wasmi</code> CLI will then be able to execute arbitrary <code>wasm-wasi</code> files out of the box in the future.</li> </ul> </li> <li>Add <code>Module::imports</code> that allows to query Wasm module imports. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/573">paritytech/wasmi#573</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/583">paritytech/wasmi#583</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Fix a bug that imported linear memories and tables were initialized twice upon instantiation. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/593">paritytech/wasmi#593</a>)</li> <li>The <code>wasmi</code> CLI now properly hints for file path arguments. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/596">paritytech/wasmi#596</a>)</li> </ul> <h3>Changed</h3> <ul> <li>The <code>wasmi::Trap</code> type is now more similar to Wasmtime's <code>Trap</code> type. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/559">paritytech/wasmi#559</a>)</li> <li>The <code>wasmi::Store</code> type is now <code>Send</code> and <code>Sync</code> as intended. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/566">paritytech/wasmi#566</a>)</li> <li>The <code>wasmi</code> CLI now prints exported functions names if the function name CLI argument is missing. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/579">paritytech/wasmi#579</a>)</li> <li>Improve feedback when running a Wasm module without exported function using <code>wasmi</code> CLI. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/584">paritytech/wasmi#584</a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/paritytech/wasmi/blob/master/CHANGELOG.md">wasmi's changelog</a>.</em></p> <blockquote> <h2>[0.21.0] - 2023-01-04</h2> <h3>Added</h3> <ul> <li>Add support for resumable function calls. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/598">paritytech/wasmi#598</a>) <ul> <li>This feature allows to resume a function call upon encountering a host trap.</li> </ul> </li> <li>Add support for concurrently running function executions using a single <code>wasmi</code> engine. <ul> <li>This feature also allows to call Wasm functions from host functions. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/590">paritytech/wasmi#590</a>)</li> </ul> </li> <li>Add initial naive WASI support for <code>wasmi</code> using the new <code>wasmi_wasi</code> crate. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/557">paritytech/wasmi#557</a>) <ul> <li>Special thanks to <a href="https://github.com/OLUWAMUYIWA">Onigbinde Oluwamuyiwa Elijah</a> for carrying the WASI support efforts!</li> <li>Also thanks to <a href="https://github.com/Berrysoft">Yuyi Wang</a> for testing and improving initial WASI support. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/592">paritytech/wasmi#592</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/571">paritytech/wasmi#571</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/568">paritytech/wasmi#568</a>)</li> <li><strong>Note:</strong> There is ongoing work to integrate WASI support in <code>wasmi_cli</code> so that the <code>wasmi</code> CLI will then be able to execute arbitrary <code>wasm-wasi</code> files out of the box in the future.</li> </ul> </li> <li>Add <code>Module::imports</code> that allows to query Wasm module imports. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/573">paritytech/wasmi#573</a>, <a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/583">paritytech/wasmi#583</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Fix a bug that imported linear memories and tables were initialized twice upon instantiation. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/593">paritytech/wasmi#593</a>)</li> <li>The <code>wasmi</code> CLI now properly hints for file path arguments. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/596">paritytech/wasmi#596</a>)</li> </ul> <h3>Changed</h3> <ul> <li>The <code>wasmi::Trap</code> type is now more similar to Wasmtime's <code>Trap</code> type. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/559">paritytech/wasmi#559</a>)</li> <li>The <code>wasmi::Store</code> type is now <code>Send</code> and <code>Sync</code> as intended. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/566">paritytech/wasmi#566</a>)</li> <li>The <code>wasmi</code> CLI now prints exported functions names if the function name CLI argument is missing. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/579">paritytech/wasmi#579</a>)</li> <li>Improve feedback when running a Wasm module without exported function using <code>wasmi</code> CLI. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/584">paritytech/wasmi#584</a>)</li> </ul> <h2>[0.20.0] - 2022-11-04</h2> <h3>Added</h3> <ul> <li>Contribution documentation about fuzz testing. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/529">paritytech/wasmi#529</a>)</li> </ul> <h3>Removed</h3> <ul> <li>Removed some deprecated functions in the <code>wasmi_core</code> crate. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/545">paritytech/wasmi#545</a>)</li> </ul> <h3>Fixed</h3> <ul> <li>Fixed a critical performance regression introduced in Rust 1.65. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/518">paritytech/wasmi#518</a>) <ul> <li>While the PR's main job was to clean up some code it was found out that it also fixes a critical performance regression introduced in Rust 1.65.</li> <li>You can read more about this performance regression <a href="https://github-redirect.dependabot.com/rust-lang/rust/issues/102952">in this thread</a>.</li> </ul> </li> </ul> <h3>Changed</h3> <ul> <li>Fixed handling of edge cases with respect to Wasm linear memory. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/449">paritytech/wasmi#449</a>) <ul> <li>This allows for <code>wasmi</code> to properly setup and use linear memory instances of up to 4GB.</li> </ul> </li> <li>Optimize and improve Wasm instantiation. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/531">paritytech/wasmi#531</a>)</li> <li>Optimize <code>global.get</code> of immutable non-imported globals. (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/pull/533">paritytech/wasmi#533</a>)</li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/paritytech/wasmi/commit/9e228e8a253074bf25cfcfeff11b07ff2033170e"><code>9e228e8</code></a> Bump <code>wasmi</code> version to <code>0.21.0</code> (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/604">#604</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/8fb3a58de76a10b0072d0c71fd1677a96f33009f"><code>8fb3a58</code></a> Prepare for <code>wasmi</code> version <code>0.21.0</code> release (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/603">#603</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/829ae5b115e8d8f484c93798309ac9e1eb7351eb"><code>829ae5b</code></a> Resumable Function Calls (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/598">#598</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/3c62031d096a73c59edb05ea5cc508e5bc65b0f6"><code>3c62031</code></a> Add <code>res: EngineResources</code> field to <code>EngineExecutor</code> (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/602">#602</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/bbcfc21deea430f82aac6c268ffea61587173060"><code>bbcfc21</code></a> Refactor <code>Engine</code> internals (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/601">#601</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/3186c023210a537d0fd70517942a1ebd0c5ad3f7"><code>3186c02</code></a> Return <code>()</code> from <code>CallResults</code> for slices (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/600">#600</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/8965c9af96beb189919c0a2aa306a8ae111141ad"><code>8965c9a</code></a> Refactor FuncType verification (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/599">#599</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/2b5a48618fa9acb1d36e91ba9325623d6858e0e6"><code>2b5a486</code></a> CLI: Improve CLI parsing (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/596">#596</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/da8e4a694054ea218b316c31f28aae5494a42119"><code>da8e4a6</code></a> Allow host functions to call Wasm functions (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/590">#590</a>)</li> <li><a href="https://github.com/paritytech/wasmi/commit/f82ed77000b520046918b4e75cd733a2a7650d5b"><code>f82ed77</code></a> Fix duplicated imported linear memories and tables (<a href="https://github-redirect.dependabot.com/paritytech/wasmi/issues/593">#593</a>)</li> <li>Additional commits viewable in <a href="https://github.com/paritytech/wasmi/compare/v0.20.0...v0.21.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Alexander Theißen <alex.theissen@me.com> |
||
|
|
23a2347f1f |
Update wasmparser requirement from 0.95 to 0.96 (#41)
Updates the requirements on [wasmparser](https://github.com/bytecodealliance/wasm-tools) to permit the latest version. <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/bd3208f0f30dff710e1c28e13a20cded24a38db5"><code>bd3208f</code></a> Bump some crate versions (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/865">#865</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/6b965ce03b9fc8d3b94eb967eb50285f914ffd0b"><code>6b965ce</code></a> Fix fuzzing errors (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/862">#862</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/cd44f7326316e652fc90778455a466bcb8272640"><code>cd44f73</code></a> Consolidate list-reading functions into <code>read_iter</code> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/860">#860</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/e59094c01101732edd757cedf39e7390013669de"><code>e59094c</code></a> Implement infrastructure fro a <code>use</code> keyword in <code>*.wit</code> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/858">#858</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/24d48083cea015bd62887f9b141caf7a18e5505e"><code>24d4808</code></a> [wasmparser] Reduce the size of TypeId for better validation performance (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/844">#844</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/2de95fe4b749b175f4038006a32c2ecf33a66c5a"><code>2de95fe</code></a> Cleanup skipping methods in <code>BinaryReader</code> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/861">#861</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/f234d0c9b531213f35e10177c8f2582c5f3ab58f"><code>f234d0c</code></a> Remove a large amount of boilerplate parsing from <code>wasmparser</code> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/857">#857</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/8e3f8d83fc6a67494374eda8925ed57811d786eb"><code>8e3f8d8</code></a> Remove <code>deterministic</code> crate feature from `wasmparser (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/854">#854</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/4ac65e93fa1890c0749c2579e0dcbc2bffd7e4d1"><code>4ac65e9</code></a> Add debug names to shim module in <code>wit-component</code> (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/853">#853</a>)</li> <li><a href="https://github.com/bytecodealliance/wasm-tools/commit/e5ffae8f4d30ba7e25922209268d31dc18bcedfd"><code>e5ffae8</code></a> wasmparser: split parsers for different elems (<a href="https://github-redirect.dependabot.com/bytecodealliance/wasm-tools/issues/849">#849</a>)</li> <li>Additional commits viewable in <a href="https://github.com/bytecodealliance/wasm-tools/compare/wasmparser-0.95.0...wasmparser-0.96.0">compare view</a></li> </ul> </details> <br /> Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
54c4f8f878 |
Patch: use checked sum for locals counter (#40)
follow-up patch to #38 Co-authored-by: Alexander Theißen <alex.theissen@me.com> |
||
|
|
6a79d1d4b8 |
Charge gas for local variables on the callee side (#38)
Co-authored-by: Alexander Theißen <alex.theissen@me.com>v0.4.0 |
||
|
|
b51701088e |
Update wasmparser requirement from 0.94 to 0.95 (#37)
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.94.0...wasmparser-0.95.0) --- updated-dependencies: - dependency-name: wasmparser dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
a4dde28607 |
Add new gas metering method: mutable global + local gas function (#34)
* fix misprints in doc comments * added global gas tracker variable and local gas fn * all exported functions of the module to accept a new param and to set the gas_left global to its value at their very start * make module support both gas metering methods * tests fixed for the old metering method * better naming * MutableGlobal metering method implemented, tests for the old method pass * gas_metering::tests updated and pass * all tests udpdated and pass * emacs backup files to .gitignore * docs updated * clippy fix * iff = if and only if * more clippy * docs misprints fixes * refactored to have Backend trait and two implementations in separate sub-modules * docs updated * fixed old benches (updating them is coming next) * added bench for an instrumented wasm-coremark * updated benches: added them for both gas_metering instrumentations * benches contest first ver * added debug prints to the bench * refactored to better fit frontend-backend pattern * docs update * updated benches * design updated on feedback * re-structured sub-modules re-structured sub-modules & updated docs * docs improved * addressed latest feedback comments * re-writed the local gas function * coremark benches show ~20% performance improvement * fix ci: test + clippy * save before re-factoring prepare_in_wasm() * bare_call_16 shows 16% worse perf * + fibonacci recursive bench * refactored benchmarks * + factorial recursive bench * benches on wasmi fixtures show no perf improvement, coremark runs ~20% faster being instrumented with mutable_global gas metering * charge gas for local gas func isntructions execution * replaced benchmark which requires multi_value feature * save: optimized gas func a bit (benches work, fixture tests fail) * 1033% overhead on many_blocks.wasm when mut_global gas_metering together with stack_height * size overhead test for both gas metering methods + stack limiter * added more benches * improved print_size_overhead test * test for comparing size overheads of two gas_metering injectors * before optimization: benches + size overhead * optimization try-1: inline part of gas func instructions: +benches +size overheads * optimization try-2: inline hot path of gas fn: +benches +size overheads * opt try-3: count for gas fn cost on the caller side: +benches +size overhead * revert to initial version but with static gas fn cost on the caller side: +benches +sizes * tests fixed * use newest wasmi 0.20: +benches +docs updated * use if-else block instead of Return: +benches * fix tests * clippy fix * addressed review comments * Update changelog Co-authored-by: Alexander Theißen <alex.theissen@me.com> |
||
|
|
90cb67d5d7 |
Update wasmparser requirement from 0.92 to 0.94 (#36)
* Update wasmparser requirement from 0.92 to 0.94 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.92.0...wasmparser-0.94.0) --- updated-dependencies: - dependency-name: wasmparser dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> * Fix whitespace differences in tests Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Alexander Theißen <alex.theissen@me.com> |
||
|
|
4c1d47a618 |
Update wasmparser requirement from 0.90 to 0.92 (#33)
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.90.0...wasmparser-0.92.0) --- updated-dependencies: - dependency-name: wasmparser dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
840af19d4b |
Update criterion requirement from 0.3 to 0.4 (#31)
Updates the requirements on [criterion](https://github.com/bheisler/criterion.rs) to permit the latest version. - [Release notes](https://github.com/bheisler/criterion.rs/releases) - [Changelog](https://github.com/bheisler/criterion.rs/blob/master/CHANGELOG.md) - [Commits](https://github.com/bheisler/criterion.rs/compare/0.3.0...0.4.0) --- updated-dependencies: - dependency-name: criterion dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
0229f865b6 |
Use u64 for gas counter (#30)
* Use `u64` for gas counter * Update doc |
||
|
|
c2db4b8365 |
Update wasmparser requirement from 0.89 to 0.90 (#28)
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.89.0...wasmparser-0.90.0) --- updated-dependencies: - dependency-name: wasmparser dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
1ade161da4 |
Update wasmparser requirement from 0.88 to 0.89 (#27)
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.88.0...wasmparser-0.89.0) --- updated-dependencies: - dependency-name: wasmparser dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
25ff883bbd |
Update wasmparser requirement from 0.87 to 0.88 (#26)
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.87.0...wasmparser-0.88.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> |
||
|
|
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> |
||
|
|
d10bbdf554 | Fix CODEOWNERS | ||
|
|
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> |
||
|
|
4a394c5f88 | bump version (#22) | ||
|
|
d1648be274 | Fix publish | ||
|
|
4a51f16874 | handle debug info (#16) v0.1.2 | ||
|
|
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> |
||
|
|
88d652e69a | add gha to dependabot (#18) | ||
|
|
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> |
||
|
|
4548a86329 |
Add test to measure size overhead (#8)
* Don't use parity-wasm directly * Add test that output size over head of metering |
||
|
|
ff68bee449 | We should use bench_with_input so that a blackbox is used | ||
|
|
7c843842a7 |
Run CI on windows, too (#7)
* Run CI on windows, too * Build path without `concat!` macro * Fix ci on windows |
||
|
|
374afe5700 | Replace wabt with rust tools (#5) | ||
|
|
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 |
||
|
|
184b3f8b3a | Prepare for releasing v0.1.1 | ||
|
|
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 |
||
|
|
4e3e6b598a | Added documentation link | ||
|
|
c5eaffd229 | Fix README typo | ||
|
|
e882111f92 |
Remove everything not needed by substrate
Also rename to wasm-instrument |
||
|
|
b22696aaa5 |
sign_ext feature flag (#174)
* sign_ext feature flag * Derive default to fix clippy warning |
||
|
|
5259f1c922 |
Merge pull request #173 from paritytech/NukeManDan-patch-1
version 0.19.0 rust 2021 MSRV 1.56.1 |
||
|
|
da2f0a0f23 |
version 0.19.0
edition = "2021" rust-version = "1.56.1" |
||
|
|
1d62dc1270 | cargo fmt | ||
|
|
abd5d4f6df | move to rust 2021 | ||
|
|
c9b837c80a |
Merge pull request #171 from paritytech/at-bump-version
Bump version and only include essential files in crate |
||
|
|
2bf8068571 | Bump version and only include essential files in crate | ||
|
|
2293760964 | Use linear time algorithm to inject stack height metering (#170) | ||
|
|
2f88f49ef6 | Add test for empty loops (#169) |