jeffcharles opened PR #10082 from jeffcharles:winch-simd-replace-lane
to bytecodealliance:main
:
<!--
Please make sure you include the following information:
If this work has been discussed elsewhere, please include a link to that
conversation. If it was discussed in an issue, just mention "issue #...".Explain why this change is needed. If the details are in an issue already,
this can be brief.Our development process is documented in the Wasmtime book:
https://docs.wasmtime.dev/contributing-development-process.htmlPlease ensure all communication follows the code of conduct:
https://github.com/bytecodealliance/wasmtime/blob/main/CODE_OF_CONDUCT.md
-->
Part of #8093. Implements the*.replace_lane
set of instructions.
jeffcharles requested wasmtime-compiler-reviewers for a review on PR #10082.
jeffcharles requested cfallin for a review on PR #10082.
jeffcharles requested fitzgen for a review on PR #10082.
jeffcharles requested wasmtime-core-reviewers for a review on PR #10082.
github-actions[bot] commented on PR #10082:
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:
- saulecabrera: winch
To subscribe or unsubscribe from this label, edit the <code>.github/subscribe-to-label.json</code> configuration file.
Learn more.
</details>
saulecabrera commented on PR #10082:
I can take this review.
saulecabrera requested saulecabrera for a review on PR #10082.
jeffcharles updated PR #10082.
saulecabrera submitted PR review:
LGTM, one minor remark.
saulecabrera created PR review comment:
I'd like to keep
OperandSize
as machine independent as possible. Would it be possible to move this to a helper in the x64 masm/asm?
jeffcharles submitted PR review.
jeffcharles created PR review comment:
The
vpinsr_opcode
method isn't accessible outside of the x86 assembler module and shouldn't show up in autocomplete when using the Rust Analyzer. I can put on a static function instead in any case.If someone tried to call it outside of that module, say in the macroassembler or code context, they would get the following compiler error:
error[E0624]: method `vpinsr_opcode` is private --> winch/codegen/src/isa/x64/masm.rs:1554:36 | 1554 | let foo = kind.lane_size().vpinsr_opcode(); | ^^^^^^^^^^^^^ private method | ::: winch/codegen/src/isa/x64/asm.rs:171:5 | 171 | pub(self) fn vpinsr_opcode(&self) -> AvxOpcode { | ---------------------------------------------- private method defined here For more information about this error, try `rustc --explain E0624`
jeffcharles updated PR #10082.
jeffcharles requested saulecabrera for a review on PR #10082.
saulecabrera submitted PR review.
saulecabrera has enabled auto merge for PR #10082.
saulecabrera merged PR #10082.
Last updated: Feb 28 2025 at 03:10 UTC