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

Implement Swift lowering algorithm in the CoreCLR type system #99438

Merged
merged 14 commits into from
Mar 12, 2024

Conversation

jkoritzinsky
Copy link
Member

This PR finishes out the implementations of the algorithm for RyuJIT-compatible type systems.

This does not update the JIT-EE interface to hook up the new function (@jakobbotsch has already made the JIT-EE change in his branch, so I don't want to conflict with that).

Copy link
Member

@jakobbotsch jakobbotsch left a comment

Choose a reason for hiding this comment

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

LGTM, but you may want to get review from someone more familiar with the VM side.

@jkoritzinsky
Copy link
Member Author

I've added a small fix here for the NativeAOT implementation that we discussed offline.

Copy link
Member

@AaronRobinsonMSFT AaronRobinsonMSFT left a comment

Choose a reason for hiding this comment

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

I get the statement about contract. I don't think it is all that obvious the contract or expectations here. The 4 count is used in a few places and I replaced one, but aside from the case where byReference = true the split rules aren't clear up front, which is what I normally like to see. As long as the JIT team has clear expectations on their side for the ABI I'm good.

I assume tests will come with the JIT?

src/coreclr/vm/methodtable.cpp Outdated Show resolved Hide resolved
@jkoritzinsky
Copy link
Member Author

Yep the JIT PR will add the test suite. I'll refactor out the max size into a constant.

@jkoritzinsky jkoritzinsky merged commit 6d4fe42 into dotnet:main Mar 12, 2024
107 of 111 checks passed
@jkoritzinsky jkoritzinsky deleted the swift-lowering-coreclr branch March 22, 2024 01:25
@github-actions github-actions bot locked and limited conversation to collaborators Apr 21, 2024
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