Stream: git-wasmtime

Topic: wasmtime / PR #8389 Use callee-save registers in tail cal...


view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 22:29):

elliottt opened PR #8389 from elliottt:trevor/aarch64-tail-callee-saves to bytecodealliance:main:

Switch back to mostly following the AArch64 ABI for callee-save registers with the tail calling convention, except that we still reserve x0 and x1 to resolve issues with indirect tail calls.

<!--
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 (Apr 16 2024 at 22:38):

elliottt updated PR #8389.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 23:03):

elliottt has marked PR #8389 as ready for review.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 23:03):

elliottt requested abrown for a review on PR #8389.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 23:03):

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

view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 23:03):

elliottt requested fitzgen for a review on PR #8389.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 23:03):

elliottt requested alexcrichton for a review on PR #8389.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 23:03):

elliottt requested jameysharp for a review on PR #8389.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 16 2024 at 23:17):

elliottt edited PR #8389:

Switch back to mostly following the AArch64 ABI for callee-save registers with the tail calling convention, except that we still reserve x0 for the return area pointer and x1 for the destination of an indirect tail call.

<!--
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 (Apr 18 2024 at 17:48):

fitzgen submitted PR review:

Very nice! \o/

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 17:48):

fitzgen submitted PR review:

Very nice! \o/

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 17:48):

fitzgen created PR review comment:

Potential follow up issue: it seems like we should use the store-pair instructions for restoring callee-save registers in the future, when possible.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 17:49):

fitzgen edited PR review comment.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 18:06):

elliottt submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 18:06):

elliottt created PR review comment:

Yeah, that's a great point!

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 18:26):

elliottt submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 18:26):

elliottt created PR review comment:

Though in this case I think these are incoming args area stores for the tail call, but it would still be great to have the infrastructure available to merge those into a single instruction.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 18 2024 at 19:03):

elliottt merged PR #8389.


Last updated: Jan 10 2026 at 02:36 UTC