Skip to content

Conversation

@jakobbotsch
Copy link
Member

@jakobbotsch jakobbotsch commented Jan 5, 2024

Fix a bug in FlowGraphNaturalLoop::MatchLimit; it did not properly check limit locals for address exposure when evaluating their invariance (the old logic does that). Also support promoted struct fields (like the old logic).

No diffs expected -- the diffs of the quirk here were coming from this bug in FlowGraphNaturalLoop::MatchLimit.

In a few cases the IV analysis on the new loops succeeds here even when
the old did not (maybe because for old loops the logic runs before flow
graph changes have happened due to loop canonicalization). Remove the
quirk that was preventing us from cloning these loops.
@ghost ghost assigned jakobbotsch Jan 5, 2024
@ghost ghost added the area-CodeGen-coreclr CLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMI label Jan 5, 2024
@ghost
Copy link

ghost commented Jan 5, 2024

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

Issue Details

In a few cases the IV analysis on the new loops succeeds here even when the old did not (maybe because for old loops the logic runs before flow graph changes have happened due to loop canonicalization). Remove the quirk that was preventing us from cloning these loops.

Author: jakobbotsch
Assignees: jakobbotsch
Labels:

area-CodeGen-coreclr

Milestone: -

@jakobbotsch jakobbotsch marked this pull request as ready for review January 5, 2024 21:33
@jakobbotsch
Copy link
Member Author

cc @dotnet/jit-contrib PTAL @BruceForstall

No diffs

Copy link
Contributor

@BruceForstall BruceForstall left a comment

Choose a reason for hiding this comment

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

LGTM

@jakobbotsch jakobbotsch merged commit d5bc37d into dotnet:main Jan 6, 2024
@jakobbotsch jakobbotsch deleted the loop-cloning-quirks-4 branch January 6, 2024 10:38
@github-actions github-actions bot locked and limited conversation to collaborators Feb 6, 2024
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