Stream: git-wasmtime

Topic: wasmtime / PR #4682 s390x: Support both big- and little-e...


view this post on Zulip Wasmtime GitHub notifications bot (Aug 10 2022 at 19:35):

uweigand opened PR #4682 from s390x-lane-order to main:

This implements the s390x back-end portion of the solution for
https://github.com/bytecodealliance/wasmtime/issues/4566

We now support both big- and little-endian vector lane order
in code generation. The order used for a function is determined
by the function's ABI: if it uses a Wasmtime ABI, it will use
little-endian lane order, and big-endian lane order otherwise.
(This ensures that all raw_bitcast instructions generated by
both wasmtime and other cranelift frontends can always be
implemented as a no-op.)

Lane order affects the implementation of a number of operations:

In addition, when calling a function using a different lane order,
we need to lane-swap all vector values passed or returned in registers.

A small number of changes to common code were also needed:

Tested with both wasmtime and cg_clif.

FYI - @cfallin

<!--

Please ensure that the following steps are all taken care of before submitting
the PR.

Please ensure all communication adheres to the code of conduct.
-->

view this post on Zulip Wasmtime GitHub notifications bot (Aug 10 2022 at 20:19):

uweigand updated PR #4682 from s390x-lane-order to main.

view this post on Zulip Wasmtime GitHub notifications bot (Aug 10 2022 at 21:58):

uweigand updated PR #4682 from s390x-lane-order to main.

view this post on Zulip Wasmtime GitHub notifications bot (Aug 11 2022 at 19:10):

cfallin submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Aug 11 2022 at 19:10):

cfallin merged PR #4682.


Last updated: Nov 22 2024 at 16:03 UTC