Stream: git-wasmtime

Topic: wasmtime / PR #8056 cranelift: Add a winch calling conven...


view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 01:59):

elliottt opened PR #8056 from elliottt:trevor/cranelift-calling-winch to bytecodealliance:main:

Add a Winch calling convention to cranelift that has no callee saves, and
clobbers everything. This will enable us to use the wasmtime-cranelift generated
trampolines in the wasmtime-winch crate.

<!--
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 (Mar 07 2024 at 02:01):

elliottt updated PR #8056.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 02:02):

elliottt edited PR #8056:

Add a Winch calling convention to cranelift that has no callee saves, and clobbers everything. This will enable us to use the wasmtime-cranelift generated trampolines in the wasmtime-winch crate.

<!--
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 (Mar 07 2024 at 18:08):

elliottt has marked PR #8056 as ready for review.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:08):

elliottt requested cfallin for a review on PR #8056.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:08):

elliottt requested wasmtime-compiler-reviewers for a review on PR #8056.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:13):

elliottt edited PR #8056:

Add a Winch calling convention to cranelift that has no callee saves, and clobbers everything. This will enable us to use the wasmtime-cranelift generated trampolines in the wasmtime-winch crate.

I've enabled fuzzing for this calling convention, as well as added clif tests for the x64 and aarch64 backends. I've explicitly disabled support in riscv64 and s390x, as it's not currently possible to target either of those architectures with winch.

<!--
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 (Mar 07 2024 at 18:13):

alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:13):

alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:13):

alexcrichton created PR review comment:

Could this be shared with tail_clobbers above as something like preg_set_all()?

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:13):

alexcrichton created PR review comment:

Like x64, could the shared bits with tail be factored to a helper constant/function?

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:14):

elliottt submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:14):

elliottt created PR review comment:

My worry was that we've been discussing adding callee saves back to the tail calling convention, and I didn't want that change to accidentally undo this one.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:16):

alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:16):

alexcrichton created PR review comment:

Oh sure, so not literally sharing the name "tail" but something like a helper function that both tail/winch call, and one day tail will stop calling it

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:20):

elliottt submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:20):

elliottt created PR review comment:

That works!

view this post on Zulip Wasmtime GitHub notifications bot (Mar 07 2024 at 18:30):

elliottt updated PR #8056.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 08 2024 at 17:28):

elliottt updated PR #8056.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 08 2024 at 18:51):

elliottt merged PR #8056.


Last updated: Dec 23 2024 at 12:05 UTC