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

[mono][jit] Adding Vector128.Narrow,Widen as intrinsics on arm64. #84837

Merged
merged 4 commits into from
Apr 17, 2023

Conversation

jandupej
Copy link
Member

@jandupej jandupej commented Apr 14, 2023

Internally this also adds OP_XUNOP as a superoperation for SIMD operations that have one source and one dest register. Within that, the widening operations for use in JIT are defined. This is to facilitate the table-driven codegen in these cases. Also the preexisting solution would result in suboptimal codegen. Further standalone operations can be moved to OP_XUNOP in the future.

Relevant arm64 codegen macros are ported to their general variant and fixed if neccessary.

Contributes to #80566.

@jandupej
Copy link
Member Author

Failures are unrelated.

@jandupej jandupej merged commit d4f70b1 into dotnet:main Apr 17, 2023
@jandupej jandupej deleted the arm64-simd-lanes branch April 17, 2023 14:42
@ghost ghost locked as resolved and limited conversation to collaborators May 17, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants