-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Fixes for CFG dispatcher on ARM64 #65127
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
jit-cfg includes a GCStress scenario which is not supported on macOS x64. Rather than excluding it just there, just exclude all of macOS since CFG is a Windows only feature anyway. I am still keeping the Linux-x64/Linux-arm64 jobs as we produce different IR for arguments on these ABIs and I want to keep the CFG handling working in general for all the forms of IR we can produce related to calls.
|
/azp run jit-cfg |
|
Azure Pipelines failed to run 1 pipeline(s). |
|
/azp run jit-cfg |
|
Azure Pipelines failed to run 1 pipeline(s). |
|
/azp run jit-cfg |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
/azp run jit-cfg |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Tagging subscribers to this area: @JulieLeeMSFT Issue DetailsI used the wrong register in the VM stub implementation for this function. Fix #65111 Also remove macOS from the jit-cfg job. jit-cfg includes a GCStress I am still keeping the Linux-x64/Linux-arm64 jobs as we produce
|
These registers are trashed in the epilog on arm64 for GS cookie checks, but x9 might conflict with the argument used by the dispatch helper. Change the temp registers to ip0 and ip1 and add some debug checking to get a nice assert in the future if this happens.
|
Another issue is that the GS cookie check uses |
|
/azp run jit-cfg |
|
Azure Pipelines successfully started running 1 pipeline(s). |
|
Remaining failures look like the ones fixed by #65253. PTAL @dotnet/jit-contrib |
I used the wrong register in the VM stub implementation for this function.
In addition, some changes are necessary for VSD calls through dispatcher
(that we cannot do on x64).
Fix #65111
Also remove macOS from the jit-cfg job. jit-cfg includes a GCStress
scenario which is not supported on macOS x64. Rather than
excluding it just there, just exclude all of macOS since CFG is a
Windows only feature anyway.
I am still keeping the Linux-x64/Linux-arm64 jobs as we produce
different IR for arguments on these ABIs and I want to keep the CFG
handling working in general for all the forms of IR we can produce
related to calls.