-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[semantic-arc-opts] Teach semantic-arc-opts how to handle structs with multiple non-trivial values. #32173
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
[semantic-arc-opts] Teach semantic-arc-opts how to handle structs with multiple non-trivial values. #32173
Conversation
@swift-ci test |
@swift-ci test source compatibility |
@swift-ci benchmark |
Build failed |
Performance: -O
Code size: -OPerformance: -Osize
Code size: -OsizePerformance: -Onone
Code size: -swiftlibsHow to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
@swift-ci test OS X platform |
…h multiple non-trivial values. Just like br inst, structs are phis in the ownership graph that one can induce on top of the def-use graph. In this commit, I basically fill in the relevant blanks in the ADT for such phis for struct so that the optimization for branches is generalized onto structs. <rdar://problem/63950481>
The Debug failure wasn't my patch:
|
dc40712
to
3cb33ac
Compare
Just did a rebase. |
@swift-ci smoke test |
Just like br inst, structs are phis in the ownership graph that one can induce
on top of the def-use graph. In this commit, I basically fill in the relevant
blanks in the ADT for such phis for struct so that the optimization for branches
is generalized onto structs.
rdar://problem/63950481
NOTE: The first commit is from #32172. I am using the original implementation to check the correctness of the refactor before I land this.