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

JIT: ARM64 - Generate constructive forms of ExtractVector and Splice #103850

Open
TIHan opened this issue Jun 22, 2024 · 1 comment
Open

JIT: ARM64 - Generate constructive forms of ExtractVector and Splice #103850

TIHan opened this issue Jun 22, 2024 · 1 comment
Labels
arch-arm64 area-System.Runtime.Intrinsics arm-sve Work related to arm64 SVE/SVE2 support enhancement Product code improvement that does NOT require public API changes/additions
Milestone

Comments

@TIHan
Copy link
Contributor

TIHan commented Jun 22, 2024

See PRs:

ExtractVector - #103567
Splice - #103567

So the summary docs here only covers the "Destructive" form and not the "Constructive form" as seen in https://docsmirror.github.io/A64/2023-06/ext_z_zi.html

Regarding using a constructive variant. Not sure how to mark explicit op2 and op3 as needing consecutive registers. The current intrinsics with consecutive registers have a tuple in a single op. Here we have two separate args in the API.

I might have to spend some time in figuring out how to make sure that when op2 gets register Zn, force op3 to get Zn+1 given that they are 2 different operands. I think for simplicity, lets add just the destructive version of SPLICE and open an issue to add constructive version post .NET 9.

@TIHan TIHan added enhancement Product code improvement that does NOT require public API changes/additions arch-arm64 labels Jun 22, 2024
@TIHan TIHan added this to the Future milestone Jun 22, 2024
@dotnet-issue-labeler dotnet-issue-labeler bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Jun 22, 2024
@kunalspathak kunalspathak added the arm-sve Work related to arm64 SVE/SVE2 support label Jun 22, 2024
@kunalspathak kunalspathak changed the title JIT: ARM64 - SVE cover destructive forms of ExtractVector and Splice JIT: ARM64 - Generate constructive forms of ExtractVector and Splice Jun 24, 2024
@vcsjones vcsjones added area-System.Runtime.Intrinsics and removed needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners labels Jun 25, 2024
Copy link
Contributor

Tagging subscribers to this area: @dotnet/area-system-runtime-intrinsics
See info in area-owners.md if you want to be subscribed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch-arm64 area-System.Runtime.Intrinsics arm-sve Work related to arm64 SVE/SVE2 support enhancement Product code improvement that does NOT require public API changes/additions
Projects
None yet
Development

No branches or pull requests

3 participants