-
Notifications
You must be signed in to change notification settings - Fork 5.3k
[RyuJit/WASM] Register allocator skeleton #122414
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
Conversation
cf539e7 to
19436a5
Compare
c9db6c0 to
a5f251c
Compare
Force all locals to stack and add an interface for the SP/FP. Implement GT_LCL_ADDR / GT_LCL_FLD as samples.
a5f251c to
e12a8cd
Compare
|
@dotnet/jit-contrib |
|
Tagging subscribers to 'arch-wasm': @lewing, @pavelsavara |
|
I have went through the change again and noticed an issue with the |
|
We just took a GUID update so SPMI failures are "expected"... new collections on the way. |
|
Going to give up on trying to get SPMI to pass, this PR should have no impact on it. |
| } | ||
| else | ||
| { | ||
| store = m_compiler->gtNewStoreIndNode(lclNode->TypeGet(), lclNode, lclNode->Data(), indFlags); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(post merge note) This is hitting asserts when the local is TYP_LONG as it is not a valid indir addr type... seems like the retyping done below needs to happen earlier?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Indeed; fix incoming in #123261.
Force all locals to stack and add an interface for the SP/FP.
Implement
GT_LCL_ADDR/GT_LCL_FLDas samples.Next step is to add the stackifier (it'll run before RA and liveness, since it may need to introduce locals and we want to be able to enregister them). After that - parameter homing, and that should bring us to syntactically (if not yet semantically) valid WASM.