Skip to content

[cherrypick][SCEV] Pick fixes for recursive loop guard collection. #9797

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

Conversation

juliannagele
Copy link
Member

Cherry pick SCEV fixes from llvm#120442 and llvm#120749.

…20442)

When assumptions are present `Terms.size()` does not actually count the
number of conditions collected from dominating branches; introduce a
separate counter.

Fixes llvm#120237

(cherry picked from commit acfd26a)
… collecting loop guards. (llvm#120749)

When `collectFromBlock` is called without a predecessor (in particular
for loops that don't have a unique predecessor outside the loop) we
never start climbing the predecessor chain, and thus don't mark the
starting block as visited.

Fixes llvm#120615.

(cherry picked from commit f035351)
@juliannagele juliannagele requested a review from a team as a code owner January 6, 2025 13:36
@juliannagele
Copy link
Member Author

@swift-ci please test

@juliannagele juliannagele merged commit c571bd9 into swiftlang:stable/20240723 Jan 6, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant