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

[release/8.0-staging] Fix Type System Equivalence Checks #106667

Merged

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented Aug 19, 2024

Backport of #106498 to release/8.0-staging

/cc @steveisok @ivdiazsa

Customer Impact

  • Customer reported
  • Found internally

A customer found a considerable slowdown in their WinForms App when enabling ReadyToRun, as described on issue #96242. Upon investigation, we found that certain methods that were supposed to be precompiled were getting ignored and being deferred to the JIT. This was caused by a new feature added in .NET 8 to add support for type equivalence checks under certain scenarios. However, these checks were interfering in use cases where they were not needed, like our customer's app in this case.

Regression

  • Yes
  • No

Pull Request: #87899

Testing

Crossgen2 threw an error only viewable through verbose output but did not crash. Tested the fix manually for multiple scenarios ensuring that said error was no longer present. The resulting R2R image also had a larger size, which confirms the method was successfully compiled, as opposed to before implementing the fix.

Risk

Low. This fix corrects an erroneous behavior that could go unnoticed. At worst, with the fix everything will look the same.

Copy link
Member

@jeffschwMSFT jeffschwMSFT left a comment

Choose a reason for hiding this comment

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

lgtm. we will take for consideration in 8.0.x

@ivdiazsa
Copy link
Member

lgtm. we will take for consideration in 8.0.x

Thanks! @davidwrighton could we please get your sign-off on the backport for tactics approval?

@rbhanda rbhanda added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Aug 20, 2024
@rbhanda rbhanda added this to the 8.0.10 milestone Aug 20, 2024
@ivdiazsa ivdiazsa merged commit 78b77de into release/8.0-staging Aug 21, 2024
111 of 117 checks passed
@jkotas jkotas deleted the backport/pr-106498-to-release/8.0-staging branch August 24, 2024 04:48
@github-actions github-actions bot locked and limited conversation to collaborators Sep 23, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-crossgen2-coreclr Servicing-approved Approved for servicing release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants