Stream: git-wasmtime

Topic: wasmtime / PR #9864 pulley: Add macro instructions for fu...


view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 04:53):

alexcrichton requested abrown for a review on PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 04:53):

alexcrichton opened PR #9864 from alexcrichton:pulley-macro-prologue-epilogue to bytecodealliance:main:

This commit adds two new instructions to Pulley to combine the operations of setting up a frame, allocating stack, and saving clobbered registers. This is all combined into a single instruction which is relatively large but is much smaller than each of these individual operations exploded out.

This is a size win on spidermonkey.cwasm by about 1M and locally in a small fib.wat test this is also a good speedup by reducing the number of instructions executed.

<!--
Please make sure you include the following information:

Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.html

Please ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 04:53):

alexcrichton requested wasmtime-default-reviewers for a review on PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 04:53):

alexcrichton requested wasmtime-compiler-reviewers for a review on PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 06:20):

fitzgen submitted PR review:

Nice! Wanted to put the clobbers and the frame setup all in the same instruction but the Cranelift abi traits weren’t quite making it natural. I like the way you handled that here.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 06:20):

fitzgen created PR review comment:

Maybe this should be called pop_frame_restore?

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 06:20):

fitzgen created PR review comment:

Shouldn’t we be saving the full 64 bits of each register, not the usize, for when we are on 32-bit platforms? do/lr seem fine to be usize but not GPRs.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 07:44):

github-actions[bot] commented on PR #9864:

Subscribe to Label Action

cc @cfallin, @fitzgen

<details>
This issue or pull request has been labeled: "cranelift", "cranelift:meta", "isle", "pulley"

Thus the following users have been cc'd because of the following labels:

To subscribe or unsubscribe from this label, edit the <code>.github/subscribe-to-label.json</code> configuration file.

Learn more.
</details>

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 15:37):

alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 15:37):

alexcrichton created PR review comment:

Oh the ptr_size bits are just for fp/lr which are pointer-sized, the amt which Cranelift decides handles the 8-bytes-per-integer-register

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 15:40):

alexcrichton requested pchickey for a review on PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 15:40):

alexcrichton updated PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 15:40):

alexcrichton requested wasmtime-core-reviewers for a review on PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 15:42):

alexcrichton updated PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 15:42):

alexcrichton has enabled auto merge for PR #9864.

view this post on Zulip Wasmtime GitHub notifications bot (Dec 19 2024 at 16:10):

alexcrichton merged PR #9864.


Last updated: Dec 23 2024 at 13:07 UTC