Stream: git-wasmtime

Topic: wasmtime / PR #13171 s390x: replace type-based isa checks...


view this post on Zulip Wasmtime GitHub notifications bot (Apr 22 2026 at 18:24):

theotherjimmy opened PR #13171 from theotherjimmy:s390x-remove-type-and to bytecodealliance:main:

As a follow up to #13164, this changes the isa-extension checks in the s390x backend to match the style of the isa checks in the x64 backend.

The prior style of ISA extension check dates back from prior to if-let as part of isle.

<!--
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 22 2026 at 18:24):

theotherjimmy requested wasmtime-compiler-s390x-reviewers for a review on PR #13171.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 22 2026 at 20:04):

github-actions[bot] added the label isle on PR #13171.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 22 2026 at 20:04):

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

Subscribe to Label Action

cc @cfallin, @fitzgen

<details>
This issue or pull request has been labeled: "cranelift", "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 (Apr 22 2026 at 20:04):

github-actions[bot] added the label cranelift on PR #13171.

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

alexcrichton requested uweigand for a review on PR #13171.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 09:04):

uweigand commented on PR #13171:

Hi @theotherjimmy , this is another nice improvement. However, I'm wondering: this still preserves the enabled / disabled pairs, which we needed in the past as there's no easy way to express negation in ISLE otherwise. However, with the if-let approach, this should no longer be necessary.

Instead of e.g. mie2_enabled / mie2_disabled used as

(if-let true (mie2_enabled))
(if-let true (mie2_disabled))

could we rather create a single has_mie2 used as

(if-let true (has_mie2))
(if-let false (has_mie2))

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 12:42):

theotherjimmy commented on PR #13171:

Hi @uweigand ,

You make a good point, preserving the *_enabled and _disabled variants is no longer needed, and has_ matching with true/false would better match the other backends.

I'll get to this today, and do it step by step (remove mie2_disabled, then mie3_disabled, etc.) so that it's easier to validate that I have the correct implementation; I'm converting this using a 'compiler guided refactor' technique, so that I can more easily show correctness.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 12:46):

theotherjimmy edited a comment on PR #13171:

Hi @uweigand ,

You make a good point, preserving the *_enabled and *_disabled variants is no longer needed, and has_* matching with true/false would better match the other backends.

I'll get to this today, and do it step by step (remove mie2_disabled, then mie3_disabled, etc.) so that it's easier to validate that I have the correct implementation; I'm converting this using a 'compiler guided refactor' technique, so that I can more easily show correctness.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 15:15):

theotherjimmy updated PR #13171.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 15:19):

theotherjimmy commented on PR #13171:

Right, so that should do it.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 16:49):

uweigand submitted PR review:

LGTM, thanks!

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 16:50):

uweigand added PR #13171 s390x: replace type-based isa checks with if-let to the merge queue.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 17:14):

uweigand merged PR #13171.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 24 2026 at 17:14):

uweigand removed PR #13171 s390x: replace type-based isa checks with if-let from the merge queue.


Last updated: May 03 2026 at 22:13 UTC