Skip to content

Add DirectLookupRequest #28732

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 5 commits into from
Jan 25, 2020

Conversation

CodaFi
Copy link
Contributor

@CodaFi CodaFi commented Dec 12, 2019

There's no more Clang Importer cycles to stand in my way!

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 12, 2019

@swift-ci test

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 12, 2019

@swift-ci please test source compatibility

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 06448b50c569fcad6ddbab4a46be4aa07a2f0e47

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 13, 2019

@swift-ci please test macOS platform

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 13, 2019

@swift-ci please test source compatibility

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 06448b50c569fcad6ddbab4a46be4aa07a2f0e47

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 14, 2019

@swift-ci please test source compatibility

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 14, 2019

@swift-ci please test macOS platform

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 06448b50c569fcad6ddbab4a46be4aa07a2f0e47

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 14, 2019

@swift-ci please build toolchain

@swift-ci
Copy link
Contributor

Linux Toolchain (Ubuntu 16.04)
Download Toolchain
Git Sha - 06448b50c569fcad6ddbab4a46be4aa07a2f0e47

Install command
tar zxf swift-PR-28732-329-ubuntu16.04.tar.gz
More info

@swift-ci
Copy link
Contributor

macOS Toolchain
Download Toolchain
Git Sha - 06448b50c569fcad6ddbab4a46be4aa07a2f0e47

Install command
tar -zxf swift-PR-28732-451-osx.tar.gz --directory ~/

@CodaFi CodaFi force-pushed the you-know-my-name-look-up-my-member branch from 06448b5 to 70bb0da Compare December 14, 2019 19:08
@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 14, 2019

@swift-ci please test source compatibility

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 14, 2019

@swift-ci please smoke test macOS platform

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 15, 2019

@swift-ci please clean smoke test macOS platform

@shahmishal
Copy link
Member

@swift-ci test macOS

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 06448b50c569fcad6ddbab4a46be4aa07a2f0e47

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 16, 2019

@swift-ci please test source compatibility Debug

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 17, 2019

@swift-ci please test source compatibility Debug

1 similar comment
@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 17, 2019

@swift-ci please test source compatibility Debug

@CodaFi CodaFi force-pushed the you-know-my-name-look-up-my-member branch from 791764d to 5c2df6c Compare December 17, 2019 18:01
@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 17, 2019

@swift-ci please smoke test

@CodaFi
Copy link
Contributor Author

CodaFi commented Dec 17, 2019

@swift-ci please test source compatibility

@CodaFi CodaFi force-pushed the you-know-my-name-look-up-my-member branch 3 times, most recently from 1d8c7f4 to eed8d8b Compare January 2, 2020 21:23
@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 2, 2020

Let's see what the damages come out to.

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 2, 2020

@swift-ci please test

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

@swift-ci test

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

@swift-ci test source compatibility

@CodaFi CodaFi force-pushed the you-know-my-name-look-up-my-member branch from 3140f27 to b28e925 Compare January 24, 2020 04:57
@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

@swift-ci test

@swiftlang swiftlang deleted a comment from swift-ci Jan 24, 2020
@swiftlang swiftlang deleted a comment from swift-ci Jan 24, 2020
@swift-ci
Copy link
Contributor

Build failed
Swift Test Linux Platform
Git Sha - b28e9252a5d549a12d13ebe7ca485316ae7509bb

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - b28e9252a5d549a12d13ebe7ca485316ae7509bb

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

Ugh, fine I'll teach deserialization about overlays.

@CodaFi CodaFi force-pushed the you-know-my-name-look-up-my-member branch from b28e925 to 8e5bc29 Compare January 24, 2020 20:56
@CodaFi CodaFi changed the title [NFC] Add DirectLookupRequest Add DirectLookupRequest Jan 24, 2020
@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

@swift-ci clean smoke test macOS platform

@davidungar davidungar self-requested a review January 24, 2020 22:33
Copy link
Contributor

@davidungar davidungar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

Trying to reproduce the SourceKit failure locally. In the mean time

@swift-ci please clean smoke test macOS platform

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

No dice. Let's see if this helps.

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

@swift-ci please test source compatibility

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 24, 2020

@swift-ci smoke test compiler performance

@swift-ci
Copy link
Contributor

Summary for master smoketest

No regressions above thresholds

Debug

debug brief

Regressed (0)
name old new delta delta_pct
Improved (1)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 1,747,413,436,055 1,713,738,031,700 -33,675,404,355 -1.93% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (2)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 50,735,412 50,735,276 -136 -0.0%
time.swift-driver.wall 131.5s 131.0s -479.8ms -0.36%

debug detailed

Regressed (0)
name old new delta delta_pct
Improved (4)
name old new delta delta_pct
Sema.NumConformancesDeserialized 231,526 224,543 -6,983 -3.02% ✅
Sema.NumDeclsDeserialized 1,908,259 1,851,573 -56,686 -2.97% ✅
Sema.NumLazyIterableDeclContexts 253,321 250,773 -2,548 -1.01% ✅
Sema.NumTypesDeserialized 603,082 595,096 -7,986 -1.32% ✅
Unchanged (delta < 1.0% or delta < 100.0ms) (14)
name old new delta delta_pct
AST.NumLoadedModules 9,536 9,536 0 0.0%
AST.NumTotalClangImportedEntities 221,542 219,671 -1,871 -0.84%
IRModule.NumIRBasicBlocks 189,031 189,031 0 0.0%
IRModule.NumIRFunctions 101,626 101,626 0 0.0%
IRModule.NumIRGlobals 110,101 110,101 0 0.0%
IRModule.NumIRInsts 2,076,129 2,076,129 0 0.0%
IRModule.NumIRValueSymbols 193,083 193,083 0 0.0%
LLVM.NumLLVMBytesOutput 50,735,412 50,735,276 -136 -0.0%
SILModule.NumSILGenFunctions 49,397 49,397 0 0.0%
SILModule.NumSILOptFunctions 67,748 67,748 0 0.0%
Sema.NumConstraintScopes 985,458 984,630 -828 -0.08%
Sema.NumFunctionsTypechecked 10,984 10,984 0 0.0%
Sema.NumGenericSignatureBuilders 35,388 35,094 -294 -0.83%
Sema.NumTypesValidated 33,456 33,456 0 0.0%

Release

release brief

Regressed (0)
name old new delta delta_pct
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (3)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 1,321,741,944,709 1,327,834,852,304 6,092,907,595 0.46%
LLVM.NumLLVMBytesOutput 57,834,300 57,834,612 312 0.0%
time.swift-driver.wall 217.7s 219.1s 1.4s 0.66%

release detailed

Regressed (0)
name old new delta delta_pct
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (18)
name old new delta delta_pct
AST.NumLoadedModules 552 552 0 0.0%
AST.NumTotalClangImportedEntities 33,336 33,336 0 0.0%
IRModule.NumIRBasicBlocks 172,311 172,311 0 0.0%
IRModule.NumIRFunctions 78,186 78,186 0 0.0%
IRModule.NumIRGlobals 88,558 88,558 0 0.0%
IRModule.NumIRInsts 1,482,414 1,482,414 0 0.0%
IRModule.NumIRValueSymbols 155,922 155,922 0 0.0%
LLVM.NumLLVMBytesOutput 57,834,300 57,834,612 312 0.0%
SILModule.NumSILGenFunctions 28,956 28,956 0 0.0%
SILModule.NumSILOptFunctions 40,120 40,120 0 0.0%
Sema.NumConformancesDeserialized 79,176 79,176 0 0.0%
Sema.NumConstraintScopes 967,873 967,873 0 0.0%
Sema.NumDeclsDeserialized 198,590 198,590 0 0.0%
Sema.NumFunctionsTypechecked 10,984 10,984 0 0.0%
Sema.NumGenericSignatureBuilders 5,312 5,312 0 0.0%
Sema.NumLazyIterableDeclContexts 24,816 24,816 0 0.0%
Sema.NumTypesDeserialized 107,206 107,206 0 0.0%
Sema.NumTypesValidated 18,705 18,705 0 0.0%

Soft revert a09382c. It should now be safe to add this flag back as an optimization to specifically disable lazy member loading instead of all extension loading.

Push the flag back everywhere it was needed, but also push it into lookup for associated type members which will never appear in extensions.
Effectively revert swiftlang#28907. The request evaluator will also catch re-entrancy here, and those cycles can be broken with NameLookupFlags::IgnoreNewExtensions.
Use the same laziest-possible extension member loading path for
everything.
@CodaFi CodaFi force-pushed the you-know-my-name-look-up-my-member branch from 8e5bc29 to f690a9e Compare January 25, 2020 19:05
@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 25, 2020

@swift-ci test

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 25, 2020

@swift-ci test source compatibility

@CodaFi
Copy link
Contributor Author

CodaFi commented Jan 25, 2020

⛵️

@CodaFi CodaFi merged commit 2da9601 into swiftlang:master Jan 25, 2020
@CodaFi CodaFi deleted the you-know-my-name-look-up-my-member branch January 25, 2020 22:29
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.

4 participants