-
Notifications
You must be signed in to change notification settings - Fork 5k
JIT: Escape analysis cleanup #114716
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
JIT: Escape analysis cleanup #114716
Conversation
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.
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
@@ -1449,8 +1444,7 @@ unsigned int ObjectAllocator::MorphNewArrNodeIntoStackAlloc(GenTreeCall* | |||
// allocation. | |||
// Arguments: | |||
// allocObj - GT_ALLOCOBJ that will be replaced by a stack allocation | |||
// clsHnd - class representing the stack allocated object | |||
// isValueClass - we are stack allocating a boxed value class | |||
// layout - layout for the stack allocated objectd |
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.
Typo in the comment: 'objectd' should be corrected to 'object'.
// layout - layout for the stack allocated objectd | |
// layout - layout for the stack allocated object |
Copilot uses AI. Check for mistakes.
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch |
@jakobbotsch PTAL One diff locally. A boxed object had padding that is now properly modelled during promotion, leading to slightly better code. SPMI misses since we now call |
|
||
if (isValueClass) | ||
{ | ||
CORINFO_CLASS_HANDLE boxedClsHnd = comp->info.compCompHnd->getTypeForBox(clsHnd); |
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.
Is this purely for correct handling of nullables?
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.
Yes
Linux x64 failure might be related, let me see if I can repro it. |
No luck with runfo bits so far. Going to retry CI. |
Follow up to #113977
printfAlloc
in a few placesAddresses JIT side of #114204 -- I have not altered the VM or jit interface yet, to allow this PR to be easily diffable.