Skip to content

Fix SILCombine infinite iteration optimizing existentials. #23710

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 1 commit into from
Apr 2, 2019
Merged

Fix SILCombine infinite iteration optimizing existentials. #23710

merged 1 commit into from
Apr 2, 2019

Conversation

atrick
Copy link
Contributor

@atrick atrick commented Apr 1, 2019

Optimizing applies that take existential arguments is a complex
process with multiple transformations. If the apply isn't rewritten,
earlier transformations need to be undone.

SILCombine is obviously the wrong place to implement type propagation,
as I point out every time I need to fix it.

Fixes rdar://problem/49336444 SILCombine infinite loop.

Optimizing applies that take existential arguments is a complex
process with multiple transformations. If the apply isn't rewritten,
earlier transformations need to be undone.

SILCombine is obviously the wrong place to implement type propagation,
as I point out every time I need to fix it.

Fixes <rdar://problem/49336444> SILCombine infinite loop.
@atrick atrick requested a review from rajbarik April 1, 2019 18:02
@atrick
Copy link
Contributor Author

atrick commented Apr 1, 2019

@swift-ci test.

@atrick atrick requested a review from eeckstein April 1, 2019 18:03
@atrick
Copy link
Contributor Author

atrick commented Apr 1, 2019

@swift-ci test source compatibility.

@atrick
Copy link
Contributor Author

atrick commented Apr 1, 2019

@eeckstein can you take a quick look at this fix?

@atrick atrick merged commit 167341a into swiftlang:master Apr 2, 2019
@atrick atrick deleted the fix-silcombine-iterate branch April 2, 2019 15:25
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.

2 participants