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

JIT: refactor and enhance the redundant branch optimizer #76207

Merged
merged 1 commit into from
Sep 27, 2022

Conversation

AndyAyersMS
Copy link
Member

@AndyAyersMS AndyAyersMS commented Sep 26, 2022

One more preparatory step before introducing the new phi-based disambiguation.

  • handle some cases of ambiguous preds better
  • split out the jump threading pre checks into a helper
  • properly support updating switch preds
  • generalize retry logic a bit to handle more cases

Diffs

One more preparatory step before introducing the new phi-based
disambiguation.

* handle some cases of ambiguous preds better
* split out the jump threading pre checks into a helper
* properly support updating switch preds
* generalize retry logic a bit to handle more cases
@dotnet-issue-labeler dotnet-issue-labeler bot added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Sep 26, 2022
@ghost ghost assigned AndyAyersMS Sep 26, 2022
@ghost
Copy link

ghost commented Sep 26, 2022

Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.

Issue Details

One more preparatory step before introducing the new phi-based disambiguation.

  • handle some cases of ambiguous preds better
  • split out the jump threading pre checks into a helper
  • properly support updating switch preds
  • generalize retry logic a bit to handle more cases
Author: AndyAyersMS
Assignees: -
Labels:

area-CodeGen-coreclr

Milestone: -

@AndyAyersMS
Copy link
Member Author

@EgorBo PTAL
cc @dotnet/jit-contrib

Mostly improved diffs, but some regressions where LSRA strategy changes (different spills and/or prolog/epilog changes). Retries should have minimal TP impact.

@EgorBo
Copy link
Member

EgorBo commented Sep 26, 2022

before introducing the new phi-based disambiguation.

🎉

@AndyAyersMS
Copy link
Member Author

@EgorBo you approve?

Copy link
Member

@EgorBo EgorBo left a comment

Choose a reason for hiding this comment

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

Nice diffs from a refactoring 🙂

@AndyAyersMS AndyAyersMS merged commit 80f7234 into dotnet:main Sep 27, 2022
@ghost ghost locked as resolved and limited conversation to collaborators Oct 27, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants