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] Intrinsify max/min on ARM64 with mini JIT #83468

Merged
merged 8 commits into from
Mar 17, 2023

Conversation

fanyang-mono
Copy link
Member

@fanyang-mono fanyang-mono commented Mar 15, 2023

Contributes to #80566

There isn't one intrinsics on ARM64 which could do max/min calculation when element type is 64 bit integer. They are being handled specially. I also enforced that xbinop instructions would always share the same register between the first input and the return, so that the special handling logic that I just mentioned could be simplified.

This PR also include a fix to the test failure on main about wrong maximal instruction length of instruction loadx_membase (expected 12, got 16)
https://helixre8s23ayyeko0k025g8.blob.core.windows.net/dotnet-runtime-refs-heads-main-64f9ff91aebe494083/System.Numerics.Vectors.Tests/1/console.646f09bc.log?helixlogtype=result

@fanyang-mono
Copy link
Member Author

CI failures are not related to this PR.

@fanyang-mono fanyang-mono merged commit 2f8a43a into dotnet:main Mar 17, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Apr 16, 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.

3 participants