-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[Serialization] Add ModuleSummary serialization format #33400
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
Closed
kateinoigakukun
wants to merge
4
commits into
swiftlang:main
from
kateinoigakukun:katei/swift-module-summary/serialization
Closed
[Serialization] Add ModuleSummary serialization format #33400
kateinoigakukun
wants to merge
4
commits into
swiftlang:main
from
kateinoigakukun:katei/swift-module-summary/serialization
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
eaaa389
to
ef0df0e
Compare
7b9513f
to
3bc89af
Compare
3bc89af
to
43089c3
Compare
This comment has been minimized.
This comment has been minimized.
43089c3
to
e80ceb0
Compare
This comment has been minimized.
This comment has been minimized.
e80ceb0
to
f2ddbca
Compare
This comment has been minimized.
This comment has been minimized.
f2ddbca
to
524629b
Compare
This comment has been minimized.
This comment has been minimized.
524629b
to
071b9e1
Compare
@swift-ci please smoke test |
071b9e1
to
777969a
Compare
@swift-ci please smoke test |
Finally, CI passed |
Close as it's too stale for now. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This will be unblocked when #33324 merged.This PR adds the actual serialization and deserialization implementation of module summary which will be used for cross dead function elimination.
The module summary file consists of function summaries and virtual function tables.
Function Summary
A function summary has a globally unique identifier and function call info. The function call info indicates how the callee function is referenced (e.g.
witness_method
,class_method
orfunction_ref
).Virtual Function Table
A virtual function table has a map of virtual method to implementations.
For example, this code will be summarized into
For more info: https://forums.swift.org/t/refactoring-plan-of-silvisitor-for-lto/37678/14
CC: @compnerd @gottesmm