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 support for fnmadd/fmsub/fnmsub #8603

Closed
afonso360 opened this issue May 12, 2024 · 2 comments
Closed

aarch64: Add support for fnmadd/fmsub/fnmsub #8603

afonso360 opened this issue May 12, 2024 · 2 comments
Labels
cranelift:area:aarch64 Issues related to AArch64 backend. cranelift:E-compiler-easy Beginner–Intermediate compiler issues. cranelift:E-easy Issues suitable for newcomers to investigate, including Rust newcomers!

Comments

@afonso360
Copy link
Contributor

afonso360 commented May 12, 2024

👋 Hey,

Feature

Add support for the fnmadd / fmsub / fnmsub instructions in the aarch64 backend.

Benefit

This improves instruction selection quality for a few special fma cases.

Implementation

We already have support for the scalar fmadd instruction here. So we adding support for these instructions should be a matter of introducing the new opcodes and implementing lowering rules similar to what already exists today.

Something similar was done in #8588 for the RISC-V backend. If anyone needs help implementing this, let me know!

@afonso360 afonso360 added cranelift:E-easy Issues suitable for newcomers to investigate, including Rust newcomers! cranelift:E-compiler-easy Beginner–Intermediate compiler issues. cranelift:area:aarch64 Issues related to AArch64 backend. labels May 12, 2024
@aidenfoxivey
Copy link

@afonso360 Seems like this issue is solved.

@afonso360
Copy link
Contributor Author

That's right, thanks for letting me know!

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:E-compiler-easy Beginner–Intermediate compiler issues. cranelift:E-easy Issues suitable for newcomers to investigate, including Rust newcomers!
Projects
None yet
Development

No branches or pull requests

2 participants