Skip to content

Remove more usages of DeclChecker::IsFirstPass #15453

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

Conversation

slavapestov
Copy link
Contributor

@slavapestov slavapestov commented Mar 23, 2018

Follow-up to #15420. Only pattern binding decls still do non-trivial work in the second pass.

@slavapestov slavapestov force-pushed the decl-checker-cleanup-part-3 branch from 4e16bb4 to 5d97077 Compare March 24, 2018 10:26
@slavapestov slavapestov force-pushed the decl-checker-cleanup-part-3 branch from 5d97077 to 9e04f78 Compare April 3, 2018 01:50
This adds the declaration to the external declarations list only
if it was part of an imported declaration, eliminating some
boilerplate.
This allows conformance checking to be performed after all
members of a type have been type checked.
…rotocol'

IsFirstPass is going away soon, but in the meantime, the next
patch regresses matters slightly and causes us to emit
duplicate diagnostics in more cases, so let's fix it.
@slavapestov slavapestov force-pushed the decl-checker-cleanup-part-3 branch from 9e04f78 to 509d293 Compare April 3, 2018 06:18
@slavapestov slavapestov changed the title [WIP] Remove more usages of DeclChecker::IsFirstPass Remove more usages of DeclChecker::IsFirstPass Apr 3, 2018
@slavapestov
Copy link
Contributor Author

@swift-ci Please test

@slavapestov
Copy link
Contributor Author

@swift-ci Please smoke test compiler performance

@slavapestov
Copy link
Contributor Author

@swift-ci Please test source compatibility

@swift-ci
Copy link
Contributor

swift-ci commented Apr 3, 2018

Build comment file:

Summary for master smoketest

Unexpected test results, excluded stats for ReactiveCocoa

No regressions above thresholds

Debug

debug 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) (2)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 41,200,953 41,200,745 -208 -0.0%
time.swift-driver.wall 75.8s 76.1s 319.8ms 0.42%

debug 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) (23)
name old new delta delta_pct
AST.NumImportedExternalDefinitions 91,042 91,042 0 0.0%
AST.NumLoadedModules 12,956 12,956 0 0.0%
AST.NumTotalClangImportedEntities 272,218 272,218 0 0.0%
AST.NumUsedConformances 8,723 8,723 0 0.0%
IRModule.NumIRBasicBlocks 127,009 127,009 0 0.0%
IRModule.NumIRFunctions 74,857 74,857 0 0.0%
IRModule.NumIRGlobals 69,978 69,978 0 0.0%
IRModule.NumIRInsts 1,414,908 1,414,908 0 0.0%
IRModule.NumIRValueSymbols 129,243 129,243 0 0.0%
LLVM.NumLLVMBytesOutput 41,200,953 41,200,745 -208 -0.0%
SILModule.NumSILGenFunctions 46,832 46,832 0 0.0%
SILModule.NumSILOptFunctions 88,125 88,125 0 0.0%
Sema.NumConformancesDeserialized 440,264 440,264 0 0.0%
Sema.NumConstraintScopes 915,925 915,925 0 0.0%
Sema.NumDeclsDeserialized 2,765,305 2,765,305 0 0.0%
Sema.NumDeclsValidated 158,911 158,911 0 0.0%
Sema.NumFunctionsTypechecked 52,354 52,354 0 0.0%
Sema.NumGenericSignatureBuilders 66,801 66,795 -6 -0.01%
Sema.NumLazyGenericEnvironments 520,935 520,990 55 0.01%
Sema.NumLazyGenericEnvironmentsLoaded 43,577 43,595 18 0.04%
Sema.NumLazyIterableDeclContexts 369,357 369,357 0 0.0%
Sema.NumTypesDeserialized 2,964,915 2,964,910 -5 -0.0%
Sema.NumTypesValidated 241,142 241,105 -37 -0.02%

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) (2)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 30,594,210 30,594,216 6 0.0%
time.swift-driver.wall 162.4s 162.1s -271.7ms -0.17%

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) (23)
name old new delta delta_pct
AST.NumImportedExternalDefinitions 8,768 8,768 0 0.0%
AST.NumLoadedModules 406 406 0 0.0%
AST.NumTotalClangImportedEntities 25,355 25,355 0 0.0%
AST.NumUsedConformances 8,728 8,728 0 0.0%
IRModule.NumIRBasicBlocks 171,354 171,354 0 0.0%
IRModule.NumIRFunctions 57,460 57,460 0 0.0%
IRModule.NumIRGlobals 54,604 54,604 0 0.0%
IRModule.NumIRInsts 1,401,726 1,401,726 0 0.0%
IRModule.NumIRValueSymbols 101,362 101,362 0 0.0%
LLVM.NumLLVMBytesOutput 30,594,210 30,594,216 6 0.0%
SILModule.NumSILGenFunctions 22,985 22,985 0 0.0%
SILModule.NumSILOptFunctions 38,479 38,479 0 0.0%
Sema.NumConformancesDeserialized 138,367 138,367 0 0.0%
Sema.NumConstraintScopes 803,596 803,596 0 0.0%
Sema.NumDeclsDeserialized 224,976 224,976 0 0.0%
Sema.NumDeclsValidated 28,507 28,507 0 0.0%
Sema.NumFunctionsTypechecked 10,698 10,698 0 0.0%
Sema.NumGenericSignatureBuilders 6,407 6,407 0 0.0%
Sema.NumLazyGenericEnvironments 33,129 33,129 0 0.0%
Sema.NumLazyGenericEnvironmentsLoaded 4,504 4,504 0 0.0%
Sema.NumLazyIterableDeclContexts 21,208 21,208 0 0.0%
Sema.NumTypesDeserialized 275,483 275,483 0 0.0%
Sema.NumTypesValidated 40,333 40,295 -38 -0.09%

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