Stream: git-wasmtime

Topic: wasmtime / issue #6649 Remove Wasmtime ABIs from Cranelift


view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2023 at 17:07):

alexcrichton commented on issue #6649:

cc @uweigand if you're up for it I could use some help on the s390x-side of things. I believe that the Wasmtime ABI was load-bearing in a way not related to multi-value on the s390x backend to handle lane order of vector types, meaning that I think as-is this an't land since it'll fail tests on s390x. I was wondering if you had thoughts or ideas about how to go about fixing this? In my mind the fix would look something along the lines of:

So I guess the question boils down to: should an ABI be added for s390x to specify that the lane order of vectors is little-endian? Or are there other options you can think of to solve this?

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2023 at 17:23):

fitzgen commented on issue #6649:

I think this will be easier once we switch all internal Wasm functions to using the tail calling convention, and then the tail calling convention can specify a little-endian lane ordering.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2023 at 18:17):

alexcrichton edited a comment on issue #6649:

cc @uweigand if you're up for it I could use some help on the s390x-side of things. I believe that the Wasmtime ABI was load-bearing in a way not related to multi-value on the s390x backend to handle lane order of vector types, meaning that I think as-is this can't land since it'll fail tests on s390x. I was wondering if you had thoughts or ideas about how to go about fixing this? In my mind the fix would look something along the lines of:

So I guess the question boils down to: should an ABI be added for s390x to specify that the lane order of vectors is little-endian? Or are there other options you can think of to solve this?

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2023 at 18:29):

alexcrichton commented on issue #6649:

Yeah the more I think about this the more I realize it's probably best to leave things as-is and tied to the calling convention for now. I think it'd be good nonetheless to get stuff in ahead of time before tail if possible so I've left WasmtimeSystemV for now for s390x but left all the other changes so multi-return is not different in the calling convention and instead multi-return is handled differently in the native ABI.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2023 at 19:32):

alexcrichton commented on issue #6649:

Hurray looks like tests are green on s390x! I think this is good to go and we can tackle how to avoid having a specific ABI for s390x, if at all, in the future.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 27 2023 at 21:45):

github-actions[bot] commented on issue #6649:

Subscribe to Label Action

cc @cfallin, @fitzgen

<details>
This issue or pull request has been labeled: "cranelift", "cranelift:area:aarch64", "cranelift:area:machinst", "cranelift:area:x64", "isle"

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 (Jun 28 2023 at 17:44):

github-actions[bot] commented on issue #6649:

Subscribe to Label Action

cc @saulecabrera

<details>
This issue or pull request has been labeled: "winch"

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>


Last updated: Dec 23 2024 at 13:07 UTC