Skip to content

[release/9.0] Fix Type System Equivalence Checks #106723

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

Merged
merged 3 commits into from
Aug 21, 2024

Conversation

github-actions[bot]
Copy link
Contributor

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

Backport of #106498 to release/9.0

/cc @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.

@ivdiazsa ivdiazsa added the Servicing-consider Issue for next servicing release review label Aug 20, 2024
@ivdiazsa
Copy link
Contributor

Done. Here's the new PR for RC2 @carlossanlop.

@ivdiazsa
Copy link
Contributor

/cc @steveisok @davidwrighton

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.

approved. once ready we can merge

@ivdiazsa ivdiazsa added Servicing-approved Approved for servicing release and removed Servicing-consider Issue for next servicing release review labels Aug 20, 2024
@carlossanlop carlossanlop merged commit c689e35 into release/9.0 Aug 21, 2024
89 checks passed
@carlossanlop carlossanlop deleted the backport/pr-106498-to-release/9.0 branch August 21, 2024 21:58
@github-actions github-actions bot locked and limited conversation to collaborators Sep 21, 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.

3 participants