Skip to content
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

[Driver, Incremental] Add enable- and disable- only-one-dependency-file flags on-by-default #28931

Merged
merged 2 commits into from Jan 10, 2020

Conversation

davidungar
Copy link
Contributor

Only enabled if the driver is passed -enable-only-one-dependency-file

Since every make-style dependency file has the same contents, it wastes time to output one for each source file. Only write one real one, and create empty dummy files (to keep the build system happy) for the rest.

Latest version of this facility. Intervenes earlier in the driver in order to work well with batch mode.

…default

[Driver, Incremental] Add enable- and disable- only-one-dependency-file flags off-by-default
@davidungar davidungar requested a review from a team as a code owner December 23, 2019 00:51
@davidungar
Copy link
Contributor Author

Explanation: Remedies an incremental performance issue, can be disabled with a flag.
Scope of issue: Significant for incremental Swift compilations that involve hundreds of files
Origination: At some point compiler started including system headers in dependency files.
Risk: Rests on the assumption that all make-style dependency files contain the same info and that the build system reads them all.
Reviewed by: Robert Widman
Testing: Normal regression tests.
Radar: rdar://57882772
Note: This version includes the Windows fix.

@davidungar
Copy link
Contributor Author

@swift-ci please nominate

@davidungar
Copy link
Contributor Author

@swift-ci please test

@davidungar
Copy link
Contributor Author

@swift-ci please test source compatibility

@swift-ci
Copy link
Collaborator

Build failed
Swift Test OS X Platform
Git Sha - a1aeff97eb6e5eb3110ee4a9f91f555b7ef9e7a5

@swift-ci
Copy link
Collaborator

Build failed
Swift Test Linux Platform
Git Sha - a1aeff97eb6e5eb3110ee4a9f91f555b7ef9e7a5

@davidungar
Copy link
Contributor Author

@swift-ci please test

@davidungar
Copy link
Contributor Author

@swift-ci please test windows platform

@davidungar
Copy link
Contributor Author

@swift-ci please test source compatibility

@swift-ci
Copy link
Collaborator

Build failed
Swift Test Linux Platform
Git Sha - a1aeff97eb6e5eb3110ee4a9f91f555b7ef9e7a5

@swift-ci
Copy link
Collaborator

Build failed
Swift Test OS X Platform
Git Sha - a1aeff97eb6e5eb3110ee4a9f91f555b7ef9e7a5

@davidungar
Copy link
Contributor Author

@swift-ci please test

@swift-ci
Copy link
Collaborator

Build failed
Swift Test OS X Platform
Git Sha - a549f42e745ee75f2b046285db3dc348c4c4f521

@swift-ci
Copy link
Collaborator

Build failed
Swift Test Linux Platform
Git Sha - a549f42e745ee75f2b046285db3dc348c4c4f521

@davidungar
Copy link
Contributor Author

@swift-ci please test windows platform

@davidungar
Copy link
Contributor Author

@swift-ci please test source compatibility

@davidungar
Copy link
Contributor Author

@swift-ci please nominate

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.

None yet

3 participants