Stream: git-wasmtime

Topic: wasmtime / PR #3037 x64 backend: be explicit about unimpl...


view this post on Zulip Wasmtime GitHub notifications bot (Jun 25 2021 at 18:32):

cfallin opened PR #3037 from x64-explicit-unimplemented to main:

As discussed in #3035, most backends have explicit
unimplemented!(...) match-arms for opcode lowering cases that are not
yet implemented; this allows the backend maintainer to easily see what
is not yet implemented, and avoiding a catch-all wildcard arm is less
error-prone as opcodes are added in the future.

However, the x64 backend was the exception: as @akirilov-arm pointed
out, it had a wildcard match arm. This fixes the issue by explicitly
listing all opcodes the x64 backend does not yet implement.

As per our tests, these opcodes are not used or need by Wasm lowering;
but, it is good to know that they exist, so that we can eventually
either support or remove them.

This was a good exercise for me as I wasn't aware of a few of these in
particular: e.g., aarch64 supports bmask while x64 does not, and there
isn't a good reason why x64 shouldn't, especially if others hope to use
Cranelift as a SIMD-capable general codegen in the future.

The unimplemented!() cases are separate from panic!() ones: my
convention here was to split out those that are logically just missing
from those that should be impossible, mostly due to expected removal
by legalization before we reach the lowering step.

<!--

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 (Jun 25 2021 at 18:32):

cfallin requested abrown for a review on PR #3037.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 25 2021 at 18:32):

cfallin requested akirilov-arm for a review on PR #3037.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 25 2021 at 18:50):

bjorn3 submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 26 2021 at 22:28):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Jun 26 2021 at 22:29):

abrown merged PR #3037.


Last updated: Nov 22 2024 at 16:03 UTC