Skip to content

[syntax-parse] Migrate parsing of literals and magic identifiers #35120

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
wants to merge 8 commits into from

Conversation

ahoppen
Copy link
Member

@ahoppen ahoppen commented Dec 16, 2020

This is an effort migrate the parser to generate a libSyntax tree and have a separate ASTGen class generate an AST from the libSyntax tree.

The gist of these changes has previously been made in #25193, been reverted, re-applied in #26403 and then been reverted again due to performance issues.

AFAIU the major performance issue that caused the final revert of the changes previously was because the libSyntax tree was always created, even for syntax elements that hadn't been migrated to the new parsing approach yet. In particular, this meant that we were no longer able to skip function bodies since the parser wanted to generate the libSyntax tree for the body.

I believe, we can mitigate the performance impact that we saw earlier by only selectively enabling the syntax parsing context in places where we need it. This will work as follows:
– During normal compilation the syntax context will be disable just like it is today
– Whenever we encounter a syntax element that has been migrated, we enable the syntax parsing context, and set its accumulation mode to discard
– Once parsing of that syntax element is finished, we disable the syntax parsing context again.

That way, we’d only pay the cost of unnecessarily creating the libSyntax tree for non-migrated elements nested inside migrated elements. As long as we don’t migrate declaration parsing, this cost should be negligible (Rintaro’s case of nesting declarations inside string literal interpolations should be pretty niche and the nested declarations small).

Once we start migrating declarations, we need to find a way to skip function bodies etc. to maintain performant parsing. I’m confident that this is a problem we’re able to solve once we get to it – in essence we need to teach libSyntax to also skip function bodies.

CC: @jansvoboda11

ahoppen and others added 3 commits December 16, 2020 13:27
…xt is enabled

This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who review
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]> (+2 squashed commits)
Squashed commits:
[b7b884d513a] [syntax-parse] Use the HiddenLibSyntaxAction to always generate a libSyntax tree when the SyntaxParsingContext is enabled

This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who review
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]>
[077fb9b3690] [syntax-parse] Add a HiddenLibSyntaxAction that delegates to two SyntaxActions

The class is not yet used, it just compiles.

This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who review
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]>
…sEnabled()

This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who review
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]>
@ahoppen ahoppen requested review from akyrtzi and rintaro December 16, 2020 13:02
@ahoppen
Copy link
Member Author

ahoppen commented Dec 16, 2020

@swift-ci Please test

@ahoppen
Copy link
Member Author

ahoppen commented Dec 18, 2020

@swift-ci Please smoke test compiler performance

1 similar comment
@ahoppen
Copy link
Member Author

ahoppen commented Dec 19, 2020

@swift-ci Please smoke test compiler performance

ahoppen and others added 5 commits December 19, 2020 11:23
This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who reviewed
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]>
…yntaxNodes

This class is not used yet, just added and made sure it compiles

This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who review
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]>
This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who review
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]>
This commit re-applies changes that have been applied, reversed,
re-applied and re-reversed.
Credit for the original implementation goes to
Jan Svoboda <[email protected]> for writing the original
implementation and Rintaro Ishizaki <[email protected]> who review
it and applied some fixes.

Co-authored-by: Jan Svoboda <[email protected]>
Co-authored-by: Rintaro Ishizaki <[email protected]>
@swift-ci
Copy link
Contributor

Compilation-performance test failed

@ahoppen ahoppen force-pushed the syntax-parse-literals branch from 47f4524 to 4639f99 Compare December 19, 2020 13:27
@ahoppen
Copy link
Member Author

ahoppen commented Dec 19, 2020

@swift-ci Please smoke test compiler performance

@swift-ci
Copy link
Contributor

Summary for main smoketest

Regressions found (see below)

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) (3)
name old new delta delta_pct
Frontend.NumInstructionsExecuted 2,654,775,464,536 2,652,137,931,225 -2,637,533,311 -0.1%
LLVM.NumLLVMBytesOutput 57,661,288 57,659,516 -1,772 -0.0%
time.swift-driver.wall 220.0s 219.2s -759.5ms -0.35%

debug detailed

Regressed (2)
name old new delta delta_pct
Driver.NumDriverPipePolls 441 471 30 6.8% ⛔
Driver.NumDriverPipeReads 211 241 30 14.22% ⛔
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (256)
name old new delta delta_pct
AST.ImportSetCacheHit 59,126 59,125 -1 -0.0%
AST.ImportSetCacheMiss 13,034 13,034 0 0.0%
AST.ImportSetFoldHit 4,740 4,740 0 0.0%
AST.ImportSetFoldMiss 8,294 8,294 0 0.0%
AST.ModuleShadowCacheHit 131 131 0 0.0%
AST.ModuleShadowCacheMiss 104 104 0 0.0%
AST.ModuleVisibilityCacheHit 463 463 0 0.0%
AST.ModuleVisibilityCacheMiss 148 148 0 0.0%
AST.NumASTBytesAllocated 1,221,307,060 1,219,548,990 -1,758,070 -0.14%
AST.NumASTScopeLookups 156,365 156,365 0 0.0%
AST.NumBraceStmtASTScopeExpansions 15,836 15,836 0 0.0%
AST.NumBraceStmtASTScopes 15,836 15,836 0 0.0%
AST.NumDecls 4,482 4,482 0 0.0%
AST.NumDependencies 7,286 7,286 0 0.0%
AST.NumIncrementalDependencies 0 0 0 0.0%
AST.NumIterableTypeBodyASTScopeExpansions 5,831 5,831 0 0.0%
AST.NumIterableTypeBodyASTScopes 8,753 8,753 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 6,888 6,888 0 0.0%
AST.NumLocalTypeDecls 15 15 0 0.0%
AST.NumModuleLookupClassMember 710 710 0 0.0%
AST.NumModuleLookupValue 1,791,621 1,791,417 -204 -0.01%
AST.NumObjCMethods 179 179 0 0.0%
AST.NumOperators 4 4 0 0.0%
AST.NumPrecedenceGroups 2 2 0 0.0%
AST.NumReferencedDynamicNames 22 22 0 0.0%
AST.NumReferencedMemberNames 321,511 321,511 0 0.0%
AST.NumReferencedTopLevelNames 29,687 29,687 0 0.0%
AST.NumSourceBuffers 10,982 10,982 0 0.0%
AST.NumSourceLines 115,750 115,750 0 0.0%
AST.NumSourceLinesPerSecond 31,356 31,444 88 0.28%
AST.NumTotalClangImportedEntities 84,391 84,429 38 0.05%
Driver.ChildrenMaxRSS 5,948,528,640 5,993,695,232 45,166,592 0.76%
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 718 718 0 0.0%
Driver.NumDriverJobsSkipped 0 0 0 0.0%
Driver.NumProcessFailures 0 0 0 0.0%
Frontend.MaxMallocUsage 35,269,376,280 35,357,411,016 88,034,736 0.25%
Frontend.NumInstructionsExecuted 2,654,775,464,536 2,652,137,931,225 -2,637,533,311 -0.1%
Frontend.NumProcessFailures 0 0 0 0.0%
IRGen.IRGenRequest 699 699 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 8,997 8,997 0 0.0%
IRModule.NumIRAliases 4,760 4,760 0 0.0%
IRModule.NumIRBasicBlocks 208,082 208,082 0 0.0%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 112,130 112,130 0 0.0%
IRModule.NumIRGlobals 122,684 122,684 0 0.0%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 2,341,748 2,341,748 0 0.0%
IRModule.NumIRNamedMetaData 3,495 3,495 0 0.0%
IRModule.NumIRValueSymbols 216,404 216,404 0 0.0%
LLVM.NumLLVMBytesOutput 57,661,288 57,659,516 -1,772 -0.0%
Parse.CodeCompletionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 6,572 6,572 0 0.0%
Parse.NumIterableDeclContextParsed 17,302 17,302 0 0.0%
Parse.ParseAbstractFunctionBodyRequest 5,730 5,730 0 0.0%
Parse.ParseMembersRequest 16,309 16,309 0 0.0%
Parse.ParseSourceFileRequest 10,935 10,935 0 0.0%
SILGen.ASTLoweringRequest 717 717 0 0.0%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILGenFunctions 66,575 66,575 0 0.0%
SILModule.NumSILGenGlobalVariables 2,450 2,450 0 0.0%
SILModule.NumSILGenVtables 450 450 0 0.0%
SILModule.NumSILGenWitnessTables 4,644 4,644 0 0.0%
SILModule.NumSILOptDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILOptFunctions 80,981 80,981 0 0.0%
SILModule.NumSILOptGlobalVariables 2,505 2,505 0 0.0%
SILModule.NumSILOptVtables 452 452 0 0.0%
SILModule.NumSILOptWitnessTables 5,793 5,793 0 0.0%
SILOptimizer.ExecuteSILPipelineRequest 2,814 2,814 0 0.0%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.AbstractGenericSignatureRequest 378 378 0 0.0%
Sema.AccessLevelRequest 335,639 333,243 -2,396 -0.71%
Sema.ActorIsolationRequest 19,593 19,593 0 0.0%
Sema.AnyObjectLookupRequest 34 34 0 0.0%
Sema.AreAllStoredPropertiesDefaultInitableRequest 313 313 0 0.0%
Sema.AttachedPropertyWrapperTypeRequest 15,525 15,525 0 0.0%
Sema.AttachedPropertyWrappersRequest 73,848 73,848 0 0.0%
Sema.AttachedResultBuilderRequest 18,024 18,024 0 0.0%
Sema.BodyInitKindRequest 1,256 1,256 0 0.0%
Sema.CallerSideDefaultArgExprRequest 647 647 0 0.0%
Sema.CanBeAsyncHandlerRequest 4,045 4,045 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 211 211 0 0.0%
Sema.CheckRedeclarationRequest 24,326 24,326 0 0.0%
Sema.ClassAncestryFlagsRequest 2,682 2,682 0 0.0%
Sema.ClosureHasExplicitResultRequest 3,264 3,264 0 0.0%
Sema.CodeCompletionFileRequest 0 0 0 0.0%
Sema.CollectOverriddenDeclsRequest 202,653 200,780 -1,873 -0.92%
Sema.CompareDeclSpecializationRequest 15,788 15,747 -41 -0.26%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 0 0 0 0.0%
Sema.CustomAttrTypeRequest 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 1,605 1,605 0 0.0%
Sema.DefaultArgumentExprRequest 1,105 1,105 0 0.0%
Sema.DefaultArgumentInitContextRequest 13 13 0 0.0%
Sema.DefaultDefinitionTypeRequest 135 135 0 0.0%
Sema.DefaultTypeRequest 8,304 8,304 0 0.0%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectLookupRequest 890,441 890,073 -368 -0.04%
Sema.DirectOperatorLookupRequest 55,171 55,148 -23 -0.04%
Sema.DirectPrecedenceGroupLookupRequest 16,783 16,783 0 0.0%
Sema.DynamicallyReplacedDeclRequest 27,355 27,355 0 0.0%
Sema.EnumRawTypeRequest 637 637 0 0.0%
Sema.EnumRawValuesRequest 254 254 0 0.0%
Sema.ExistentialConformsToSelfRequest 363 363 0 0.0%
Sema.ExistentialTypeSupportedRequest 334 334 0 0.0%
Sema.ExpandASTScopeRequest 143,150 143,150 0 0.0%
Sema.ExtendedNominalRequest 18,837 18,837 0 0.0%
Sema.ExtendedTypeRequest 2,265 2,265 0 0.0%
Sema.FragileFunctionKindRequest 40,138 40,138 0 0.0%
Sema.FunctionOperatorRequest 557 557 0 0.0%
Sema.GenericParamListRequest 118,970 118,668 -302 -0.25%
Sema.GenericSignatureRequest 64,256 64,245 -11 -0.02%
Sema.GetDestructorRequest 386 386 0 0.0%
Sema.GlobalActorAttributeRequest 21,051 21,051 0 0.0%
Sema.GlobalActorInstanceRequest 0 0 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 180 180 0 0.0%
Sema.HasCircularRawValueRequest 222 222 0 0.0%
Sema.HasDefaultInitRequest 1,348 1,348 0 0.0%
Sema.HasDynamicCallableAttributeRequest 0 0 0 0.0%
Sema.HasDynamicMemberLookupAttributeRequest 17,115 17,110 -5 -0.03%
Sema.HasImplementationOnlyImportsRequest 10,935 10,935 0 0.0%
Sema.HasMemberwiseInitRequest 860 860 0 0.0%
Sema.HasMissingDesignatedInitializersRequest 406 406 0 0.0%
Sema.HasUserDefinedDesignatedInitRequest 1,348 1,348 0 0.0%
Sema.InferredGenericSignatureRequest 2,892 2,892 0 0.0%
Sema.InheritedDeclsReferencedRequest 156,175 155,882 -293 -0.19%
Sema.InheritedProtocolsRequest 16,100 16,092 -8 -0.05%
Sema.InheritedTypeRequest 4,826 4,826 0 0.0%
Sema.InheritsSuperclassInitializersRequest 364 364 0 0.0%
Sema.InitKindRequest 2,269 2,269 0 0.0%
Sema.InterfaceTypeRequest 360,916 359,359 -1,557 -0.43%
Sema.IsABICompatibleOverrideRequest 3,422 3,422 0 0.0%
Sema.IsAccessorTransparentRequest 7,054 7,054 0 0.0%
Sema.IsActorRequest 7,917 7,914 -3 -0.04%
Sema.IsAsyncHandlerRequest 40,079 40,036 -43 -0.11%
Sema.IsCallableNominalTypeRequest 199 199 0 0.0%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 802 802 0 0.0%
Sema.IsDynamicRequest 43,747 43,747 0 0.0%
Sema.IsFinalRequest 66,067 65,676 -391 -0.59%
Sema.IsGetterMutatingRequest 11,926 11,926 0 0.0%
Sema.IsImplicitlyUnwrappedOptionalRequest 64,239 64,275 36 0.06%
Sema.IsObjCRequest 37,391 37,392 1 0.0%
Sema.IsSetterMutatingRequest 9,248 9,248 0 0.0%
Sema.IsStaticRequest 32,098 32,098 0 0.0%
Sema.LazyStoragePropertyRequest 19 19 0 0.0%
Sema.LookupAllConformancesInContextRequest 3,372 3,372 0 0.0%
Sema.LookupConformanceInModuleRequest 916,425 916,199 -226 -0.02%
Sema.LookupInModuleRequest 190,445 190,252 -193 -0.1%
Sema.LookupInfixOperatorRequest 2,152 2,152 0 0.0%
Sema.LookupPostfixOperatorRequest 0 0 0 0.0%
Sema.LookupPrecedenceGroupRequest 674 674 0 0.0%
Sema.LookupPrefixOperatorRequest 4 4 0 0.0%
Sema.MangleLocalTypeDeclRequest 30 30 0 0.0%
Sema.ModuleImplicitImportsRequest 229 229 0 0.0%
Sema.ModuleQualifiedLookupRequest 89,217 89,024 -193 -0.22%
Sema.NamedLazyMemberLoadSuccessCount 655,191 655,191 0 0.0%
Sema.NamingPatternRequest 6,284 6,284 0 0.0%
Sema.NeedsNewVTableEntryRequest 15,317 15,317 0 0.0%
Sema.NumAccessorBodiesSynthesized 4,588 4,588 0 0.0%
Sema.NumAccessorsSynthesized 6,502 6,502 0 0.0%
Sema.NumConformancesDeserialized 242,703 241,528 -1,175 -0.48%
Sema.NumConstraintScopes 587,645 587,559 -86 -0.01%
Sema.NumConstraintsConsideredForEdgeContraction 1,479,198 1,479,093 -105 -0.01%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 1,969,417 1,964,691 -4,726 -0.24%
Sema.NumDeclsTypechecked 36,411 36,411 0 0.0%
Sema.NumGenericSignatureBuilders 28,428 28,155 -273 -0.96%
Sema.NumLazyIterableDeclContexts 235,276 235,106 -170 -0.07%
Sema.NumLazyRequirementSignatures 21,644 21,642 -2 -0.01%
Sema.NumLazyRequirementSignaturesLoaded 15,428 15,418 -10 -0.06%
Sema.NumLeafScopes 387,503 387,447 -56 -0.01%
Sema.NumTypesDeserialized 623,845 621,015 -2,830 -0.45%
Sema.NumUnloadedLazyIterableDeclContexts 144,966 145,222 256 0.18%
Sema.OpaqueReadOwnershipRequest 7,139 7,139 0 0.0%
Sema.OpaqueResultTypeRequest 0 0 0 0.0%
Sema.OperatorPrecedenceGroupRequest 8 8 0 0.0%
Sema.OverriddenDeclsRequest 62,172 61,768 -404 -0.65%
Sema.ParamSpecifierRequest 31,776 31,776 0 0.0%
Sema.PatternBindingEntryRequest 13,362 13,362 0 0.0%
Sema.PatternTypeRequest 16,376 16,376 0 0.0%
Sema.PreCheckResultBuilderRequest 0 0 0 0.0%
Sema.PrimarySourceFilesRequest 229 229 0 0.0%
Sema.PropertyWrapperBackingPropertyInfoRequest 15,311 15,311 0 0.0%
Sema.PropertyWrapperBackingPropertyTypeRequest 15,525 15,525 0 0.0%
Sema.PropertyWrapperLValuenessRequest 0 0 0 0.0%
Sema.PropertyWrapperMutabilityRequest 16,785 16,785 0 0.0%
Sema.PropertyWrapperTypeInfoRequest 0 0 0 0.0%
Sema.ProtocolRequiresClassRequest 912 912 0 0.0%
Sema.ProvideDefaultImplForRequest 202,653 200,780 -1,873 -0.92%
Sema.QualifiedLookupRequest 158,548 158,330 -218 -0.14%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RequirementRequest 3,742 3,742 0 0.0%
Sema.RequirementSignatureRequest 16,549 16,539 -10 -0.06%
Sema.RequiresOpaqueAccessorsRequest 36,001 36,001 0 0.0%
Sema.RequiresOpaqueModifyCoroutineRequest 5,767 5,767 0 0.0%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveImplicitMemberRequest 10,697 10,697 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResolveTypeRequest 79,214 79,214 0 0.0%
Sema.ResultBuilderTypeRequest 9,696 9,696 0 0.0%
Sema.ResultTypeRequest 14,106 14,106 0 0.0%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 374,663 372,642 -2,021 -0.54%
Sema.ScopedImportLookupRequest 0 0 0 0.0%
Sema.SelfAccessKindRequest 15,687 15,687 0 0.0%
Sema.SelfBoundsFromWhereClauseRequest 44,669 44,656 -13 -0.03%
Sema.SemanticMembersRequest 430 430 0 0.0%
Sema.SetterAccessLevelRequest 3,440 3,440 0 0.0%
Sema.SimpleDidSetRequest 60,731 60,694 -37 -0.06%
Sema.SpecializeAttrTargetDeclRequest 80 80 0 0.0%
Sema.StorageImplInfoRequest 41,630 41,630 0 0.0%
Sema.StoredPropertiesAndMissingMembersRequest 1,650 1,650 0 0.0%
Sema.StoredPropertiesRequest 9,651 9,651 0 0.0%
Sema.StructuralTypeRequest 40 40 0 0.0%
Sema.SuperclassDeclRequest 11,084 11,070 -14 -0.13%
Sema.SuperclassTypeRequest 924 924 0 0.0%
Sema.SynthesizeAccessorRequest 6,502 6,502 0 0.0%
Sema.SynthesizeDefaultInitRequest 134 134 0 0.0%
Sema.SynthesizeMainFunctionRequest 387 387 0 0.0%
Sema.SynthesizeMemberwiseInitRequest 139 139 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 12,192 12,192 0 0.0%
Sema.TypeCheckSourceFileRequest 699 699 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 860 860 0 0.0%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 243 243 0 0.0%
Sema.USRGenerationRequest 234,708 232,866 -1,842 -0.78%
Sema.UnderlyingTypeDeclsReferencedRequest 5,415 5,366 -49 -0.9%
Sema.UnderlyingTypeRequest 398 398 0 0.0%
Sema.UnqualifiedLookupRequest 118,189 118,189 0 0.0%
Sema.ValidatePrecedenceGroupRequest 3,848 3,848 0 0.0%
Sema.ValueWitnessRequest 2,143 2,143 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 699 699 0 0.0%
TBDGen.SymbolSourceMapRequest 0 0 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,611,217,265,949 1,611,322,895,193 105,629,244 0.01%
LLVM.NumLLVMBytesOutput 60,920,828 60,922,204 1,376 0.0%
time.swift-driver.wall 270.8s 269.9s -875.5ms -0.32%

release detailed

Regressed (2)
name old new delta delta_pct
Driver.NumDriverPipePolls 252 288 36 14.29% ⛔
Driver.NumDriverPipeReads 232 268 36 15.52% ⛔
Improved (0)
name old new delta delta_pct
Unchanged (delta < 1.0% or delta < 100.0ms) (256)
name old new delta delta_pct
AST.ImportSetCacheHit 38,407 38,407 0 0.0%
AST.ImportSetCacheMiss 1,599 1,599 0 0.0%
AST.ImportSetFoldHit 879 879 0 0.0%
AST.ImportSetFoldMiss 720 720 0 0.0%
AST.ModuleShadowCacheHit 71 71 0 0.0%
AST.ModuleShadowCacheMiss 56 56 0 0.0%
AST.ModuleVisibilityCacheHit 236 236 0 0.0%
AST.ModuleVisibilityCacheMiss 51 51 0 0.0%
AST.NumASTBytesAllocated 218,079,946 218,083,070 3,124 0.0%
AST.NumASTScopeLookups 117,161 117,161 0 0.0%
AST.NumBraceStmtASTScopeExpansions 15,285 15,285 0 0.0%
AST.NumBraceStmtASTScopes 15,285 15,285 0 0.0%
AST.NumDecls 4,482 4,482 0 0.0%
AST.NumDependencies 620 620 0 0.0%
AST.NumIncrementalDependencies 0 0 0 0.0%
AST.NumIterableTypeBodyASTScopeExpansions 2,175 2,175 0 0.0%
AST.NumIterableTypeBodyASTScopes 2,342 2,342 0 0.0%
AST.NumLinkLibraries 0 0 0 0.0%
AST.NumLoadedModules 526 526 0 0.0%
AST.NumLocalTypeDecls 15 15 0 0.0%
AST.NumModuleLookupClassMember 676 676 0 0.0%
AST.NumModuleLookupValue 944,188 944,188 0 0.0%
AST.NumObjCMethods 179 179 0 0.0%
AST.NumOperators 4 4 0 0.0%
AST.NumPrecedenceGroups 2 2 0 0.0%
AST.NumReferencedDynamicNames 0 0 0 0.0%
AST.NumReferencedMemberNames 0 0 0 0.0%
AST.NumReferencedTopLevelNames 0 0 0 0.0%
AST.NumSourceBuffers 706 706 0 0.0%
AST.NumSourceLines 115,750 115,750 0 0.0%
AST.NumSourceLinesPerSecond 4,027 4,052 25 0.62%
AST.NumTotalClangImportedEntities 15,754 15,754 0 0.0%
Driver.ChildrenMaxRSS 8,120,692,736 8,114,085,888 -6,606,848 -0.08%
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 20 20 0 0.0%
Driver.NumDriverJobsSkipped 0 0 0 0.0%
Driver.NumProcessFailures 0 0 0 0.0%
Frontend.MaxMallocUsage 6,928,692,768 6,924,081,752 -4,611,016 -0.07%
Frontend.NumInstructionsExecuted 1,611,217,265,949 1,611,322,895,193 105,629,244 0.01%
Frontend.NumProcessFailures 0 0 0 0.0%
IRGen.IRGenRequest 0 0 0 0.0%
IRGen.OptimizedIRRequest 0 0 0 0.0%
IRGen.SymbolObjectCodeRequest 0 0 0 0.0%
IRModule.NumGOTEntries 6,945 6,945 0 0.0%
IRModule.NumIRAliases 3,666 3,666 0 0.0%
IRModule.NumIRBasicBlocks 176,002 176,002 0 0.0%
IRModule.NumIRComdatSymbols 0 0 0 0.0%
IRModule.NumIRFunctions 83,541 83,541 0 0.0%
IRModule.NumIRGlobals 102,513 102,513 0 0.0%
IRModule.NumIRIFuncs 0 0 0 0.0%
IRModule.NumIRInsts 1,515,696 1,515,696 0 0.0%
IRModule.NumIRNamedMetaData 3,495 3,495 0 0.0%
IRModule.NumIRValueSymbols 175,646 175,646 0 0.0%
LLVM.NumLLVMBytesOutput 60,920,828 60,922,204 1,376 0.0%
Parse.CodeCompletionSecondPassRequest 0 0 0 0.0%
Parse.NumFunctionsParsed 6,570 6,570 0 0.0%
Parse.NumIterableDeclContextParsed 2,403 2,403 0 0.0%
Parse.ParseAbstractFunctionBodyRequest 5,608 5,608 0 0.0%
Parse.ParseMembersRequest 8 8 0 0.0%
Parse.ParseSourceFileRequest 699 699 0 0.0%
SILGen.ASTLoweringRequest 18 18 0 0.0%
SILGen.ParseSILModuleRequest 0 0 0 0.0%
SILModule.NumSILGenDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILGenFunctions 32,376 32,376 0 0.0%
SILModule.NumSILGenGlobalVariables 2,440 2,440 0 0.0%
SILModule.NumSILGenVtables 250 250 0 0.0%
SILModule.NumSILGenWitnessTables 2,207 2,207 0 0.0%
SILModule.NumSILOptDefaultWitnessTables 0 0 0 0.0%
SILModule.NumSILOptFunctions 27,325 27,325 0 0.0%
SILModule.NumSILOptGlobalVariables 3,157 3,157 0 0.0%
SILModule.NumSILOptVtables 308 308 0 0.0%
SILModule.NumSILOptWitnessTables 2,262 2,262 0 0.0%
SILOptimizer.ExecuteSILPipelineRequest 72 72 0 0.0%
SILOptimizer.LoweredSILRequest 0 0 0 0.0%
Sema.AbstractGenericSignatureRequest 383 383 0 0.0%
Sema.AccessLevelRequest 38,479 38,479 0 0.0%
Sema.ActorIsolationRequest 12,158 12,158 0 0.0%
Sema.AnyObjectLookupRequest 34 34 0 0.0%
Sema.AreAllStoredPropertiesDefaultInitableRequest 212 212 0 0.0%
Sema.AttachedPropertyWrapperTypeRequest 10,481 10,481 0 0.0%
Sema.AttachedPropertyWrappersRequest 54,037 54,037 0 0.0%
Sema.AttachedResultBuilderRequest 17,083 17,083 0 0.0%
Sema.BodyInitKindRequest 1,145 1,145 0 0.0%
Sema.CallerSideDefaultArgExprRequest 647 647 0 0.0%
Sema.CanBeAsyncHandlerRequest 3,219 3,219 0 0.0%
Sema.CheckInconsistentImplementationOnlyImportsRequest 18 18 0 0.0%
Sema.CheckRedeclarationRequest 24,400 24,400 0 0.0%
Sema.ClassAncestryFlagsRequest 1,064 1,064 0 0.0%
Sema.ClosureHasExplicitResultRequest 3,260 3,260 0 0.0%
Sema.CodeCompletionFileRequest 0 0 0 0.0%
Sema.CollectOverriddenDeclsRequest 0 0 0 0.0%
Sema.CompareDeclSpecializationRequest 13,478 13,478 0 0.0%
Sema.CursorInfoRequest 0 0 0 0.0%
Sema.CustomAttrNominalRequest 0 0 0 0.0%
Sema.CustomAttrTypeRequest 0 0 0 0.0%
Sema.DefaultAndMaxAccessLevelRequest 1,101 1,101 0 0.0%
Sema.DefaultArgumentExprRequest 1,105 1,105 0 0.0%
Sema.DefaultArgumentInitContextRequest 0 0 0 0.0%
Sema.DefaultDefinitionTypeRequest 51 51 0 0.0%
Sema.DefaultTypeRequest 7,954 7,954 0 0.0%
Sema.DerivativeAttrOriginalDeclRequest 0 0 0 0.0%
Sema.DifferentiableAttributeTypeCheckRequest 0 0 0 0.0%
Sema.DirectLookupRequest 791,007 791,026 19 0.0%
Sema.DirectOperatorLookupRequest 43,316 43,316 0 0.0%
Sema.DirectPrecedenceGroupLookupRequest 15,915 15,915 0 0.0%
Sema.DynamicallyReplacedDeclRequest 18,837 18,837 0 0.0%
Sema.EnumRawTypeRequest 222 222 0 0.0%
Sema.EnumRawValuesRequest 241 241 0 0.0%
Sema.ExistentialConformsToSelfRequest 111 111 0 0.0%
Sema.ExistentialTypeSupportedRequest 167 167 0 0.0%
Sema.ExpandASTScopeRequest 75,439 75,439 0 0.0%
Sema.ExtendedNominalRequest 1,218 1,218 0 0.0%
Sema.ExtendedTypeRequest 1,218 1,218 0 0.0%
Sema.FragileFunctionKindRequest 26,164 26,164 0 0.0%
Sema.FunctionOperatorRequest 82 82 0 0.0%
Sema.GenericParamListRequest 29,834 29,834 0 0.0%
Sema.GenericSignatureRequest 25,369 25,369 0 0.0%
Sema.GetDestructorRequest 293 293 0 0.0%
Sema.GlobalActorAttributeRequest 12,963 12,963 0 0.0%
Sema.GlobalActorInstanceRequest 0 0 0 0.0%
Sema.HasCircularInheritedProtocolsRequest 168 168 0 0.0%
Sema.HasCircularRawValueRequest 222 222 0 0.0%
Sema.HasDefaultInitRequest 794 794 0 0.0%
Sema.HasDynamicCallableAttributeRequest 0 0 0 0.0%
Sema.HasDynamicMemberLookupAttributeRequest 6,972 6,972 0 0.0%
Sema.HasImplementationOnlyImportsRequest 699 699 0 0.0%
Sema.HasMemberwiseInitRequest 544 544 0 0.0%
Sema.HasMissingDesignatedInitializersRequest 279 279 0 0.0%
Sema.HasUserDefinedDesignatedInitRequest 794 794 0 0.0%
Sema.InferredGenericSignatureRequest 1,329 1,329 0 0.0%
Sema.InheritedDeclsReferencedRequest 27,131 27,131 0 0.0%
Sema.InheritedProtocolsRequest 1,927 1,927 0 0.0%
Sema.InheritedTypeRequest 3,406 3,406 0 0.0%
Sema.InheritsSuperclassInitializersRequest 181 181 0 0.0%
Sema.InitKindRequest 1,351 1,351 0 0.0%
Sema.InterfaceTypeRequest 78,078 78,078 0 0.0%
Sema.IsABICompatibleOverrideRequest 3,384 3,384 0 0.0%
Sema.IsAccessorTransparentRequest 6,109 6,109 0 0.0%
Sema.IsActorRequest 1,388 1,388 0 0.0%
Sema.IsAsyncHandlerRequest 16,858 16,858 0 0.0%
Sema.IsCallableNominalTypeRequest 199 199 0 0.0%
Sema.IsDeclApplicableRequest 0 0 0 0.0%
Sema.IsDefaultActorRequest 423 423 0 0.0%
Sema.IsDynamicRequest 30,583 30,583 0 0.0%
Sema.IsFinalRequest 24,126 24,126 0 0.0%
Sema.IsGetterMutatingRequest 9,285 9,285 0 0.0%
Sema.IsImplicitlyUnwrappedOptionalRequest 49,785 49,785 0 0.0%
Sema.IsObjCRequest 26,470 26,470 0 0.0%
Sema.IsSetterMutatingRequest 8,745 8,745 0 0.0%
Sema.IsStaticRequest 13,906 13,906 0 0.0%
Sema.LazyStoragePropertyRequest 11 11 0 0.0%
Sema.LookupAllConformancesInContextRequest 2,234 2,234 0 0.0%
Sema.LookupConformanceInModuleRequest 1,018,719 1,018,497 -222 -0.02%
Sema.LookupInModuleRequest 61,097 61,097 0 0.0%
Sema.LookupInfixOperatorRequest 1,726 1,726 0 0.0%
Sema.LookupPostfixOperatorRequest 0 0 0 0.0%
Sema.LookupPrecedenceGroupRequest 666 666 0 0.0%
Sema.LookupPrefixOperatorRequest 2 2 0 0.0%
Sema.MangleLocalTypeDeclRequest 15 15 0 0.0%
Sema.ModuleImplicitImportsRequest 18 18 0 0.0%
Sema.ModuleQualifiedLookupRequest 8,660 8,660 0 0.0%
Sema.NamedLazyMemberLoadSuccessCount 236,599 236,599 0 0.0%
Sema.NamingPatternRequest 2,114 2,114 0 0.0%
Sema.NeedsNewVTableEntryRequest 12,701 12,701 0 0.0%
Sema.NumAccessorBodiesSynthesized 4,550 4,550 0 0.0%
Sema.NumAccessorsSynthesized 4,618 4,618 0 0.0%
Sema.NumConformancesDeserialized 75,316 75,316 0 0.0%
Sema.NumConstraintScopes 569,743 569,743 0 0.0%
Sema.NumConstraintsConsideredForEdgeContraction 1,471,617 1,471,617 0 0.0%
Sema.NumCrossImportsChecked 0 0 0 0.0%
Sema.NumCrossImportsFound 0 0 0 0.0%
Sema.NumCyclicOneWayComponentsCollapsed 0 0 0 0.0%
Sema.NumDeclsDeserialized 215,823 215,823 0 0.0%
Sema.NumDeclsTypechecked 36,524 36,524 0 0.0%
Sema.NumGenericSignatureBuilders 4,872 4,872 0 0.0%
Sema.NumLazyIterableDeclContexts 26,550 26,550 0 0.0%
Sema.NumLazyRequirementSignatures 1,948 1,948 0 0.0%
Sema.NumLazyRequirementSignaturesLoaded 1,489 1,489 0 0.0%
Sema.NumLeafScopes 373,131 373,131 0 0.0%
Sema.NumTypesDeserialized 109,853 109,853 0 0.0%
Sema.NumUnloadedLazyIterableDeclContexts 16,704 16,704 0 0.0%
Sema.OpaqueReadOwnershipRequest 5,066 5,066 0 0.0%
Sema.OpaqueResultTypeRequest 0 0 0 0.0%
Sema.OperatorPrecedenceGroupRequest 4 4 0 0.0%
Sema.OverriddenDeclsRequest 24,784 24,784 0 0.0%
Sema.ParamSpecifierRequest 19,561 19,561 0 0.0%
Sema.PatternBindingEntryRequest 8,590 8,590 0 0.0%
Sema.PatternTypeRequest 11,602 11,602 0 0.0%
Sema.PreCheckResultBuilderRequest 0 0 0 0.0%
Sema.PrimarySourceFilesRequest 18 18 0 0.0%
Sema.PropertyWrapperBackingPropertyInfoRequest 10,331 10,331 0 0.0%
Sema.PropertyWrapperBackingPropertyTypeRequest 10,481 10,481 0 0.0%
Sema.PropertyWrapperLValuenessRequest 0 0 0 0.0%
Sema.PropertyWrapperMutabilityRequest 14,083 14,083 0 0.0%
Sema.PropertyWrapperTypeInfoRequest 0 0 0 0.0%
Sema.ProtocolRequiresClassRequest 203 203 0 0.0%
Sema.ProvideDefaultImplForRequest 0 0 0 0.0%
Sema.QualifiedLookupRequest 104,101 104,101 0 0.0%
Sema.RangeInfoRequest 0 0 0 0.0%
Sema.RequirementRequest 2,490 2,490 0 0.0%
Sema.RequirementSignatureRequest 1,743 1,743 0 0.0%
Sema.RequiresOpaqueAccessorsRequest 32,237 32,237 0 0.0%
Sema.RequiresOpaqueModifyCoroutineRequest 4,464 4,464 0 0.0%
Sema.ResolveEffectiveMemberwiseInitRequest 0 0 0 0.0%
Sema.ResolveImplicitMemberRequest 7,509 7,509 0 0.0%
Sema.ResolveProtocolNameRequest 0 0 0 0.0%
Sema.ResolveTypeEraserTypeRequest 0 0 0 0.0%
Sema.ResolveTypeRequest 48,044 48,044 0 0.0%
Sema.ResultBuilderTypeRequest 8,755 8,755 0 0.0%
Sema.ResultTypeRequest 9,473 9,473 0 0.0%
Sema.RootAndResultTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.RootTypeOfKeypathDynamicMemberRequest 0 0 0 0.0%
Sema.SPIGroupsRequest 49,042 49,042 0 0.0%
Sema.ScopedImportLookupRequest 0 0 0 0.0%
Sema.SelfAccessKindRequest 8,292 8,292 0 0.0%
Sema.SelfBoundsFromWhereClauseRequest 10,437 10,437 0 0.0%
Sema.SemanticMembersRequest 283 283 0 0.0%
Sema.SetterAccessLevelRequest 2,905 2,905 0 0.0%
Sema.SimpleDidSetRequest 7,896 7,896 0 0.0%
Sema.SpecializeAttrTargetDeclRequest 39 39 0 0.0%
Sema.StorageImplInfoRequest 35,293 35,293 0 0.0%
Sema.StoredPropertiesAndMissingMembersRequest 1,075 1,075 0 0.0%
Sema.StoredPropertiesRequest 3,367 3,367 0 0.0%
Sema.StructuralTypeRequest 10 10 0 0.0%
Sema.SuperclassDeclRequest 1,683 1,683 0 0.0%
Sema.SuperclassTypeRequest 434 434 0 0.0%
Sema.SynthesizeAccessorRequest 4,618 4,618 0 0.0%
Sema.SynthesizeDefaultInitRequest 103 103 0 0.0%
Sema.SynthesizeMainFunctionRequest 250 250 0 0.0%
Sema.SynthesizeMemberwiseInitRequest 90 90 0 0.0%
Sema.TangentStoredPropertyRequest 0 0 0 0.0%
Sema.TypeCheckASTNodeAtLocRequest 0 0 0 0.0%
Sema.TypeCheckFunctionBodyRequest 12,123 12,123 0 0.0%
Sema.TypeCheckSourceFileRequest 699 699 0 0.0%
Sema.TypeDeclsFromWhereClauseRequest 613 613 0 0.0%
Sema.TypeEraserHasViableInitRequest 0 0 0 0.0%
Sema.TypeRelationCheckRequest 0 0 0 0.0%
Sema.TypeWitnessRequest 116 116 0 0.0%
Sema.USRGenerationRequest 8,581 8,581 0 0.0%
Sema.UnderlyingTypeDeclsReferencedRequest 1,015 1,015 0 0.0%
Sema.UnderlyingTypeRequest 139 139 0 0.0%
Sema.UnqualifiedLookupRequest 61,585 61,585 0 0.0%
Sema.ValidatePrecedenceGroupRequest 3,838 3,838 0 0.0%
Sema.ValueWitnessRequest 1,192 1,192 0 0.0%
TBDGen.GenerateTBDRequest 0 0 0 0.0%
TBDGen.PublicSymbolsRequest 18 18 0 0.0%
TBDGen.SymbolSourceMapRequest 0 0 0 0.0%

@ahoppen
Copy link
Member Author

ahoppen commented Dec 19, 2020

@swift-ci Please smoke test

@ahoppen
Copy link
Member Author

ahoppen commented Mar 2, 2021

This is no longer up-to-date. Closing.

@ahoppen ahoppen closed this Mar 2, 2021
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