-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
[release/6.0] Fix gtCloneExpr when cloning during R2R compilation a GT_ALLOCOBJ node #59421
Conversation
…e - Without this fix cloned expressions with allocations will fail - This is most common in profile guided code around devirtualization, but I believe it can occur in other where gtCloneExpr is used - Symptom of the failure is a compilation failure during crossgen2
Tagging subscribers to this area: @JulieLeeMSFT Issue DetailsBackport of #59395 to release/6.0 /cc @davidwrighton Customer ImpactTestingRisk
|
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.
Approved. Can you update the customer impact to highlight a pattern that runs into this and elaborate a bit more on prevalence?
@davidwrighton we are still considering fixes for RC2. I think we should consider it for RC2, do you? |
@jeffschwMSFT I thought we had missed that cutoff. I'll put together the RC2 PR as well. |
We are really close. You might want to request approval for this including considering for RC2. |
/backport to release/6.0-rc2 |
Started backporting to release/6.0-rc2: https://github.com/dotnet/runtime/actions/runs/1259619216 |
This was merged into RC2 directly via #59438 instead. Thus I'm closing this PR. |
Backport of #59395 to release/6.0
/cc @davidwrighton
Customer Impact
Under conditions I am unable to identify that will sometimes cause the JIT to generate data structures vulnerable to this bug if the type of localVariable can be predicted via PGO.
Testing
Standard PR run + targeted testing of the PGO scenario which failed without this fix.
Risk
Low. This fixes a logic error in the jit that would cause prejitting of a method to fail.