Skip to content

[Type checker] Move accessor creation out of validateDecl(). #19259

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 1 commit into from
Sep 12, 2018

Conversation

DougGregor
Copy link
Member

Creating accessors for a storage declaration within validateDecl() caused
circular dependencies detected by the request-evaluator. Separate out
accessor creation to break the dependency.

Fixes SR-8656 / rdar://problem/43951634.

Creating accessors for a storage declaration within validateDecl() caused
circular dependencies detected by the request-evaluator. Separate out
accessor creation to break the dependency.

Fixes SR-8656 / rdar://problem/43951634.
@DougGregor
Copy link
Member Author

@swift-ci please smoke test

@DougGregor
Copy link
Member Author

@swift-ci please test source compatibility

@DougGregor
Copy link
Member Author

Those Index failures on Linux are unrelated. Also... CLEAN DEBUG SOURCE COMPAT WOO!!!

@DougGregor
Copy link
Member Author

@swift-ci please test compiler performance

1 similar comment
@DougGregor
Copy link
Member Author

@swift-ci please test compiler performance

@swift-ci
Copy link
Contributor

Build comment file:

Summary for master full

Unexpected test results, excluded stats for RxSwift, ChattoAdditions, Wordy, ReactiveSwift

Regressions found (see below)

Debug-batch

debug-batch brief

Regressed (2)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 13,737,103,783,606 13,912,107,722,658 175,003,939,052 1.27% ⛔
time.swift-driver.wall 1349.8s 1371.4s 21.7s 1.61% ⛔
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (1)
name old new delta delta_pct
LLVM.NumLLVMBytesOutput 494,107,252 497,391,260 3,284,008 0.66%

debug-batch detailed

Regressed (33)
name old new delta delta_pct
AST.NumASTBytesAllocated 14,628,254,522 14,788,571,879 160,317,357 1.1% ⛔
AST.NumDependencies 90,786 93,138 2,352 2.59% ⛔
AST.NumImportedExternalDefinitions 772,138 784,994 12,856 1.66% ⛔
AST.NumLoadedModules 103,667 105,767 2,100 2.03% ⛔
AST.NumSourceLinesPerSecond 536,651 542,855 6,204 1.16% ⛔
AST.NumTotalClangImportedEntities 2,541,334 2,582,720 41,386 1.63% ⛔
Driver.ChildrenMaxRSS 37,499,852,800 37,974,943,744 475,090,944 1.27% ⛔
Driver.NumDriverPipePolls 219,330 221,746 2,416 1.1% ⛔
Frontend.MaxMallocUsage 223,359,191,008 226,207,374,520 2,848,183,512 1.28% ⛔
Frontend.NumInstructionsExecuted 13,737,103,783,606 13,912,107,722,658 175,003,939,052 1.27% ⛔
SILModule.NumSILGenFunctions 841,307 851,832 10,525 1.25% ⛔
SILModule.NumSILGenVtables 3,778 3,840 62 1.64% ⛔
SILModule.NumSILOptVtables 7,244 7,380 136 1.88% ⛔
Sema.AccessLevelRequest 887,689 973,395 85,706 9.65% ⛔
Sema.ExtendedNominalRequest 1,497,064 1,514,085 17,021 1.14% ⛔
Sema.InheritedDeclsReferencedRequest 52,715,916 53,383,585 667,669 1.27% ⛔
Sema.InheritedTypeRequest 370,311 374,619 4,308 1.16% ⛔
Sema.IsDynamicRequest 789,475 898,887 109,412 13.86% ⛔
Sema.IsObjCRequest 651,241 760,556 109,315 16.79% ⛔
Sema.NamedLazyMemberLoadFailureCount 14,102 14,290 188 1.33% ⛔
Sema.NominalTypeLookupDirectCount 15,153,770 15,350,664 196,894 1.3% ⛔
Sema.NumConformancesDeserialized 1,965,636 1,985,825 20,189 1.03% ⛔
Sema.NumDeclsDeserialized 16,264,918 16,459,006 194,088 1.19% ⛔
Sema.NumFunctionsTypechecked 644,532 652,876 8,344 1.29% ⛔
Sema.NumGenericSignatureBuilders 776,379 787,741 11,362 1.46% ⛔
Sema.NumLazyGenericEnvironments 3,146,844 3,183,964 37,120 1.18% ⛔
Sema.NumLazyIterableDeclContexts 2,904,711 2,946,312 41,601 1.43% ⛔
Sema.NumTypesDeserialized 7,153,332 7,238,813 85,481 1.19% ⛔
Sema.NumUnloadedLazyIterableDeclContexts 2,013,278 2,043,885 30,607 1.52% ⛔
Sema.OverriddenDeclsRequest 708,933 810,587 101,654 14.34% ⛔
Sema.SetterAccessLevelRequest 41,552 54,483 12,931 31.12% ⛔
Sema.SuperclassDeclRequest 41,797,542 42,365,717 568,175 1.36% ⛔
Sema.SuperclassTypeRequest 14,673 14,877 204 1.39% ⛔
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (61)
name old new delta delta_pct
AST.NumDecls 33,413 33,609 196 0.59%
AST.NumInfixOperators 13,113 13,193 80 0.61%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLocalTypeDecls 111 111 0 0.0%
AST.NumObjCMethods 12,397 12,475 78 0.63%
AST.NumPostfixOperators 14 14 0 0.0%
AST.NumPrecedenceGroups 6,932 6,998 66 0.95%
AST.NumPrefixOperators 60 60 0 0.0%
AST.NumReferencedDynamicNames 101 101 0 0.0%
AST.NumReferencedMemberNames 1,813,739 1,827,895 14,156 0.78%
AST.NumReferencedTopLevelNames 115,661 116,471 810 0.7%
AST.NumSourceBuffers 153,218 154,531 1,313 0.86%
AST.NumSourceLines 1,193,444 1,197,450 4,006 0.34%
AST.NumUsedConformances 101,131 101,807 676 0.67%
Driver.DriverDepCascadingDynamic 0 0 0 0.0%
Driver.DriverDepCascadingExternal 0 0 0 0.0%
Driver.DriverDepCascadingMember 0 0 0 0.0%
Driver.DriverDepCascadingNominal 0 0 0 0.0%
Driver.DriverDepCascadingTopLevel 0 0 0 0.0%
Driver.DriverDepDynamic 0 0 0 0.0%
Driver.DriverDepExternal 0 0 0 0.0%
Driver.DriverDepMember 0 0 0 0.0%
Driver.DriverDepNominal 0 0 0 0.0%
Driver.DriverDepTopLevel 0 0 0 0.0%
Driver.NumDriverJobsRun 7,173 7,229 56 0.78%
Driver.NumDriverJobsSkipped 0 0 0 0.0%
Driver.NumDriverPipeReads 237,422 239,486 2,064 0.87%
Driver.NumProcessFailures 0 0 0 0.0%
Frontend.NumProcessFailures 0 0 0 0.0%
IRModule.NumIRAliases 59,044 59,553 509 0.86%
IRModule.NumIRBasicBlocks 1,747,142 1,753,442 6,300 0.36%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 927,134 933,973 6,839 0.74%
IRModule.NumIRGlobals 1,119,416 1,129,543 10,127 0.9%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 20,141,141 20,214,822 73,681 0.37%
IRModule.NumIRNamedMetaData 35,403 35,673 270 0.76%
IRModule.NumIRValueSymbols 1,814,814 1,829,773 14,959 0.82%
LLVM.NumLLVMBytesOutput 494,107,252 497,391,260 3,284,008 0.66%
Parse.NumFunctionsParsed 648,699 649,467 768 0.12%
Parse.NumIterableDeclContextParsed 395,691 397,899 2,208 0.56%
SILModule.NumSILGenDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILGenGlobalVariables 15,099 15,135 36 0.24%
SILModule.NumSILGenWitnessTables 18,549 18,671 122 0.66%
SILModule.NumSILOptDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILOptFunctions 671,443 676,785 5,342 0.8%
SILModule.NumSILOptGlobalVariables 15,511 15,551 40 0.26%
SILModule.NumSILOptWitnessTables 36,447 36,663 216 0.59%
Sema.DefaultAndMaxAccessLevelRequest 22,128 22,154 26 0.12%
Sema.EnumRawTypeRequest 7,723 7,729 6 0.08%
Sema.NamedLazyMemberLoadSuccessCount 2,295,267 2,309,342 14,075 0.61%
Sema.NumConstraintScopes 7,333,472 7,349,044 15,572 0.21%
Sema.NumConstraintsConsideredForEdgeContraction 13,269,916 13,284,478 14,562 0.11%
Sema.NumDeclsValidated 891,582 894,754 3,172 0.36%
Sema.NumLazyGenericEnvironmentsLoaded 297,918 300,888 2,970 1.0%
Sema.NumTypesValidated 608,728 610,208 1,480 0.24%
Sema.RequirementRequest 20,094 20,094 0 0.0%
Sema.SelfBoundsFromWhereClauseRequest 52,839 52,839 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 11,137 11,145 8 0.07%
Sema.USRGenerationRequest 175,732 176,300 568 0.32%
Sema.UnderlyingTypeDeclsReferencedRequest 1,560,367 1,568,441 8,074 0.52%

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 13,055,917,364,978 13,055,913,250,095 -4,114,883 -0.0%
LLVM.NumLLVMBytesOutput 476,463,170 476,463,242 72 0.0%
time.swift-driver.wall 2491.3s 2490.3s -988.6ms -0.04%

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 140,916 140,916 0 0.0%
AST.NumLoadedModules 6,640 6,640 0 0.0%
AST.NumTotalClangImportedEntities 462,873 462,873 0 0.0%
AST.NumUsedConformances 104,006 104,006 0 0.0%
IRModule.NumIRBasicBlocks 1,720,311 1,720,311 0 0.0%
IRModule.NumIRFunctions 763,303 763,303 0 0.0%
IRModule.NumIRGlobals 880,662 880,662 0 0.0%
IRModule.NumIRInsts 14,792,782 14,792,782 0 0.0%
IRModule.NumIRValueSymbols 1,517,123 1,517,123 0 0.0%
LLVM.NumLLVMBytesOutput 476,463,170 476,463,242 72 0.0%
SILModule.NumSILGenFunctions 322,883 322,883 0 0.0%
SILModule.NumSILOptFunctions 447,087 447,087 0 0.0%
Sema.NumConformancesDeserialized 953,332 953,332 0 0.0%
Sema.NumConstraintScopes 7,254,445 7,254,445 0 0.0%
Sema.NumDeclsDeserialized 2,914,231 2,914,231 0 0.0%
Sema.NumDeclsValidated 417,307 417,307 0 0.0%
Sema.NumFunctionsTypechecked 262,082 262,082 0 0.0%
Sema.NumGenericSignatureBuilders 114,706 114,706 0 0.0%
Sema.NumLazyGenericEnvironments 510,995 510,995 0 0.0%
Sema.NumLazyGenericEnvironmentsLoaded 58,012 58,012 0 0.0%
Sema.NumLazyIterableDeclContexts 342,093 342,093 0 0.0%
Sema.NumTypesDeserialized 1,660,658 1,660,658 0 0.0%
Sema.NumTypesValidated 187,246 187,246 0 0.0%

@DougGregor DougGregor merged commit 9cda374 into swiftlang:master Sep 12, 2018
@DougGregor DougGregor deleted the validate-without-accessors branch September 12, 2018 14:36
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