Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

aarch64: Add more lowerings for the CLIF fma #6150

Merged
merged 1 commit into from
Apr 5, 2023

Conversation

alexcrichton
Copy link
Member

This commit adds new lowerings to the AArch64 backend of the element-based fmla and fmls instructions. These instructions have one of the multiplicands as an implicit broadcast of a single lane of another register and can help remove shuffle or dup instructions that would otherwise be used to implement them.

This commit adds new lowerings to the AArch64 backend of the
element-based `fmla` and `fmls` instructions. These instructions have
one of the multiplicands as an implicit broadcast of a single lane of
another register and can help remove `shuffle` or `dup` instructions
that would otherwise be used to implement them.
@alexcrichton alexcrichton requested a review from a team as a code owner April 5, 2023 15:29
@alexcrichton alexcrichton requested review from elliottt and removed request for a team April 5, 2023 15:29
@github-actions github-actions bot added cranelift Issues related to the Cranelift code generator cranelift:area:aarch64 Issues related to AArch64 backend. labels Apr 5, 2023
Copy link
Member

@elliottt elliottt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks great! That shuffle-to-broadcast optimization is excellent!

@alexcrichton alexcrichton added this pull request to the merge queue Apr 5, 2023
Merged via the queue into bytecodealliance:main with commit 967543e Apr 5, 2023
@alexcrichton alexcrichton deleted the more-fma branch April 5, 2023 17:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cranelift:area:aarch64 Issues related to AArch64 backend. cranelift Issues related to the Cranelift code generator
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants