text:
Methods on parameter packed generic types specialized with zero types cannot be used without crashing the compiler

Description

You can't create a generic type with a parameter pack, specialize it with zero types, and then call a method that uses that parameter pack. It crashes the compiler.
Steps to reproduce

Stack trace:
0.	Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -c /Users/fnord/Documents/Swift/TestMacOS/TestMacOSCore/Sources/TestMacOSCore/Dependencies.swift -primary-file /Users/fnord/Documents/Swift/TestMacOS/TestMacOSCore/Sources/TestMacOSCore/TestMacOSCore.swift -emit-dependencies-path /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/Objects-normal/arm64/TestMacOSCore.d -emit-const-values-path /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/Objects-normal/arm64/TestMacOSCore.swiftconstvalues -emit-reference-dependencies-path /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/Objects-normal/arm64/TestMacOSCore.swiftdeps -serialize-diagnostics-path /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/Objects-normal/arm64/TestMacOSCore.dia -target arm64-apple-macos14.0 -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk -I /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug -I /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib -F /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug/PackageFrameworks -F /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug/PackageFrameworks -F /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug/PackageFrameworks -F /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug/PackageFrameworks -F /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug/PackageFrameworks -F /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug -F /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/Library/Frameworks -no-color-diagnostics -enable-testing -g -module-cache-path /Users/fnord/Library/Developer/Xcode/DerivedData/ModuleCache.noindex -profile-generate -profile-coverage-mapping -swift-version 5 -enforce-exclusivity=checked -Onone -D SWIFT_PACKAGE -D DEBUG -D Xcode -serialize-debugging-options -package-name testmacoscore -const-gather-protocols-file /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/Objects-normal/arm64/TestMacOSCore_const_extract_protocols.json -empty-abi-descriptor -validate-clang-modules-once -clang-build-session-file /Users/fnord/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /Users/fnord/Documents/Swift/TestMacOS/TestMacOSCore -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift -enable-anonymous-context-mangled-names -Xcc -ivfsstatcache -Xcc /Users/fnord/Library/Developer/Xcode/DerivedData/SDKStatCaches.noindex/macosx14.0-23A334-4a76ee93ef69e462914ffe9883de22b8.sdkstatcache -Xcc -I/Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/swift-overrides.hmap -Xcc -I/Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Products/Debug/include -Xcc -I/Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/DerivedSources-normal/arm64 -Xcc -I/Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/DerivedSources/arm64 -Xcc -I/Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG=1 -module-name TestMacOSCore -frontend-parseable-output -disable-clang-spi -target-sdk-version 14.0 -target-sdk-name macosx14.0 -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/local/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.0.sdk/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/local/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins -o /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Build/Intermediates.noindex/TestMacOSCore.build/Debug/TestMacOSCore.build/Objects-normal/arm64/TestMacOSCore.o -index-unit-output-path /TestMacOSCore.build/Debug/TestMacOSCore.build/Objects-normal/arm64/TestMacOSCore.o -index-store-path /Users/fnord/Library/Developer/Xcode/DerivedData/TestMacOSCore-ahgngaarecknxsfwsewfijgzqaot/Index.noindex/DataStore -index-system-modules
1.	Apple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1)
2.	Compiling with the current language version
3.	While evaluating request ASTLoweringRequest(Lowering AST to SIL for file "/Users/fnord/Documents/Swift/TestMacOS/TestMacOSCore/Sources/TestMacOSCore/TestMacOSCore.swift")
4.	While silgen emitFunction SIL function "@$s13TestMacOSCore3fooyyF".
 for 'foo()' (at /Users/fnord/Documents/Swift/TestMacOS/TestMacOSCore/Sources/TestMacOSCore/TestMacOSCore.swift:23:1)
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  swift-frontend           0x00000001054f314c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  swift-frontend           0x0000000108071f2c llvm::sys::RunSignalHandlers() + 112
2  swift-frontend           0x0000000103db310c SignalHandler(int) + 352
3  libsystem_platform.dylib 0x000000018a961a24 _sigtramp + 56
4  swift-frontend           0x00000001058b51d0 (anonymous namespace)::ArgEmitter::emitPackArg(llvm::MutableArrayRef<swift::Lowering::ArgumentSource>, swift::Lowering::AbstractionPattern) + 164
5  swift-frontend           0x00000001058a2658 (anonymous namespace)::ArgEmitter::emitPreparedArgs(swift::Lowering::PreparedArguments&&, swift::Lowering::AbstractionPattern) + 512
6  swift-frontend           0x000000010591dea0 (anonymous namespace)::CallSite::emit(swift::Lowering::SILGenFunction&, swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::SILFunctionType>, (anonymous namespace)::ParamLowering&, llvm::SmallVectorImpl<swift::Lowering::ManagedValue>&, llvm::SmallVectorImpl<(anonymous namespace)::DelayedArgument>&, swift::ForeignInfo const&) && + 672
7  swift-frontend           0x000000010591cab4 (anonymous namespace)::CallEmission::emitArgumentsForNormalApply(swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::SILFunctionType>, swift::ForeignInfo const&, llvm::SmallVectorImpl<swift::Lowering::ManagedValue>&, llvm::Optional<swift::SILLocation>&) + 1000
8  swift-frontend           0x0000000102edb34c (anonymous namespace)::CallEmission::apply(swift::Lowering::SGFContext) + 4044
9  swift-frontend           0x000000010585574c swift::Lowering::SILGenFunction::emitApplyExpr(swift::ApplyExpr*, swift::Lowering::SGFContext) + 3072
10 swift-frontend           0x0000000105ab8468 swift::Lowering::SILGenFunction::emitIgnoredExpr(swift::Expr*) + 892
11 swift-frontend           0x000000010368f570 swift::ASTVisitor<(anonymous namespace)::StmtEmitter, void, void, void, void, void, void>::visit(swift::Stmt*) (.llvm.5384354941888427540) + 5512
12 swift-frontend           0x0000000105be5864 swift::Lowering::SILGenFunction::emitFunction(swift::FuncDecl*) + 632
13 swift-frontend           0x0000000102ec8a4c swift::Lowering::SILGenModule::emitFunctionDefinition(swift::SILDeclRef, swift::SILFunction*) + 8004
14 swift-frontend           0x00000001057d563c emitOrDelayFunction(swift::Lowering::SILGenModule&, swift::SILDeclRef) (.llvm.12369091251732681984) + 168
15 swift-frontend           0x00000001057bcbe8 swift::Lowering::SILGenModule::emitFunction(swift::FuncDecl*) + 292
16 swift-frontend           0x00000001057e4608 swift::ASTLoweringRequest::evaluate(swift::Evaluator&, swift::ASTLoweringDescriptor) const + 2908
17 swift-frontend           0x000000010440c4fc swift::SimpleRequest<swift::ASTLoweringRequest, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>> (swift::ASTLoweringDescriptor), (swift::RequestFlags)9>::evaluateRequest(swift::ASTLoweringRequest const&, swift::Evaluator&) + 200
18 swift-frontend           0x0000000105802948 llvm::Expected<swift::ASTLoweringRequest::OutputType> swift::Evaluator::getResultUncached<swift::ASTLoweringRequest>(swift::ASTLoweringRequest const&) + 584
19 swift-frontend           0x00000001080298d8 performCompile(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 1680
20 swift-frontend           0x000000010802d474 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 4568
21 swift-frontend           0x00000001079734e0 swift::mainEntry(int, char const**) + 4116
22 dyld                     0x000000018a5b9058 start + 2224

This causes the compiler to crash.
class CounterBox<each Param> {
  func recordCall(_ params: repeat each Param) {}
}

func foo() {
  CounterBox< >().recordCall() // crash
}

Expected behavior

The above should compile. Additionally, the parameter pack syntax is slightly different from what's described in the proposal. CounterBox<>() doesn't compile.

Environment

Swift compiler version info:

swift-driver version: 1.87.1 Apple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1)
Target: arm64-apple-macosx14.0

Xcode version info

Xcode 15.0
Build version 15A240d

Deployment target: macOS 14.0

Additional context: Development is being done in a Swift Package using Xcode.

Assertion failed: (nextSubstParamIndex == substParams.size()), function claimParams, file SILGenApply.cpp, line 4556.
Stack dump:
0.	Program arguments: bin/swift-frontend /Users/mac/Desktop/test.swift -debug-diagnostic-names -interpret
1.	Swift version 5.11-dev (LLVM 5601e23279f85d8, Swift 140caf63be3f0fe)
2.	Compiling with the current language version
3.	While evaluating request ASTLoweringRequest(Lowering AST to SIL for module test)
4.	While silgen emitFunction SIL function "@$s4test3fooyyF".
 for 'foo()' (at /Users/mac/Desktop/test.swift:85:1)
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  swift-frontend           0x0000000112e6b51b llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 43
1  swift-frontend           0x0000000112e6a755 llvm::sys::RunSignalHandlers() + 85
2  swift-frontend           0x0000000112e6bb4e SignalHandler(int) + 270
3  libsystem_platform.dylib 0x00007ff81913037d _sigtramp + 29
4  swift-frontend           0x000000010b27d24a swift::CanType::CanType(swift::TypeBase*) + 42
5  libsystem_c.dylib        0x00007ff819021a4d abort + 126
6  libsystem_c.dylib        0x00007ff819020d60 err + 0
7  swift-frontend           0x000000010bd223f6 (anonymous namespace)::ParamLowering::claimParams(swift::Lowering::AbstractionPattern, llvm::ArrayRef<swift::AnyFunctionType::Param>, swift::ForeignInfo const&) + 566
8  swift-frontend           0x000000010bd2146a (anonymous namespace)::CallSite::emit(swift::Lowering::SILGenFunction&, swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::SILFunctionType>, (anonymous namespace)::ParamLowering&, llvm::SmallVectorImpl<swift::Lowering::ManagedValue>&, llvm::SmallVectorImpl<(anonymous namespace)::DelayedArgument>&, swift::ForeignInfo const&) && + 170
9  swift-frontend           0x000000010bd2054e (anonymous namespace)::CallEmission::emitArgumentsForNormalApply(swift::Lowering::AbstractionPattern, swift::CanTypeWrapper<swift::SILFunctionType>, swift::ForeignInfo const&, llvm::SmallVectorImpl<swift::Lowering::ManagedValue>&, llvm::Optional<swift::SILLocation>&) + 1630
10 swift-frontend           0x000000010bd1f890 (anonymous namespace)::CallEmission::applyNormalCall(swift::Lowering::SGFContext) + 1120
11 swift-frontend           0x000000010bd1ddcd (anonymous namespace)::CallEmission::applyFirstLevelCallee(swift::Lowering::SGFContext) + 205
12 swift-frontend           0x000000010bcee740 (anonymous namespace)::CallEmission::apply(swift::Lowering::SGFContext) + 80
13 swift-frontend           0x000000010bcee0c8 swift::Lowering::SILGenFunction::emitApplyExpr(swift::ApplyExpr*, swift::Lowering::SGFContext) + 136
14 swift-frontend           0x000000010bdf09ab (anonymous namespace)::RValueEmitter::visitApplyExpr(swift::ApplyExpr*, swift::Lowering::SGFContext) + 59
15 swift-frontend           0x000000010bdde0e8 swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visitCallExpr(swift::CallExpr*, swift::Lowering::SGFContext) + 56
16 swift-frontend           0x000000010bdc78bc swift::ASTVisitor<(anonymous namespace)::RValueEmitter, swift::Lowering::RValue, void, void, void, void, void, swift::Lowering::SGFContext>::visit(swift::Expr*, swift::Lowering::SGFContext) + 2956
17 swift-frontend           0x000000010bdb8d23 swift::Lowering::SILGenFunction::emitRValue(swift::Expr*, swift::Lowering::SGFContext) + 195
18 swift-frontend           0x000000010bdbd9e6 swift::Lowering::SILGenFunction::emitIgnoredExpr(swift::Expr*) + 1990
19 swift-frontend           0x000000010bef76d9 (anonymous namespace)::StmtEmitter::visitBraceStmt(swift::BraceStmt*) + 2233
20 swift-frontend           0x000000010bef3181 swift::ASTVisitor<(anonymous namespace)::StmtEmitter, void, void, void, void, void, void>::visit(swift::Stmt*) + 81
21 swift-frontend           0x000000010bef30fa swift::Lowering::SILGenFunction::emitStmt(swift::Stmt*) + 42
22 swift-frontend           0x000000010be0f55a swift::Lowering::SILGenFunction::emitFunction(swift::FuncDecl*) + 842
23 swift-frontend           0x000000010bcc452b swift::Lowering::SILGenModule::emitFunctionDefinition(swift::SILDeclRef, swift::SILFunction*) + 4411
24 swift-frontend           0x000000010bcc7a75 swift::Lowering::SILGenModule::emitOrDelayFunction(swift::SILDeclRef) + 501
25 swift-frontend           0x000000010bcc33e5 swift::Lowering::SILGenModule::emitFunction(swift::FuncDecl*) + 309
26 swift-frontend           0x000000010bcc329d swift::Lowering::SILGenModule::visitFuncDecl(swift::FuncDecl*) + 29
27 swift-frontend           0x000000010bcc2f64 swift::ASTVisitor<swift::Lowering::SILGenModule, void, void, void, void, void, void>::visit(swift::Decl*) + 996
28 swift-frontend           0x000000010bcc2b6b swift::Lowering::SILGenModule::visit(swift::Decl*) + 59
29 swift-frontend           0x000000010bccc72a (anonymous namespace)::SILGenModuleRAII::emitSourceFile(swift::SourceFile*) + 314
30 swift-frontend           0x000000010bccc2e4 swift::ASTLoweringRequest::evaluate(swift::Evaluator&, swift::ASTLoweringDescriptor) const + 916
31 swift-frontend           0x000000010bef22de std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>> swift::SimpleRequest<swift::ASTLoweringRequest, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>> (swift::ASTLoweringDescriptor), (swift::RequestFlags)9>::callDerived<0ul>(swift::Evaluator&, std::__1::integer_sequence<unsigned long, 0ul>) const + 142
32 swift-frontend           0x000000010bef21f8 swift::SimpleRequest<swift::ASTLoweringRequest, std::__1::unique_ptr<swift::SILModule, std::__1::default_delete<swift::SILModule>> (swift::ASTLoweringDescriptor), (swift::RequestFlags)9>::evaluateRequest(swift::ASTLoweringRequest const&, swift::Evaluator&) + 40
33 swift-frontend           0x000000010bcdeddc llvm::Expected<swift::ASTLoweringRequest::OutputType> swift::Evaluator::getResultUncached<swift::ASTLoweringRequest>(swift::ASTLoweringRequest const&) + 316
34 swift-frontend           0x000000010bcccee8 llvm::Expected<swift::ASTLoweringRequest::OutputType> swift::Evaluator::operator()<swift::ASTLoweringRequest, (void*)0>(swift::ASTLoweringRequest const&) + 40
35 swift-frontend           0x000000010bcccde0 swift::performASTLowering(swift::ModuleDecl*, swift::Lowering::TypeConverter&, swift::SILOptions const&, swift::IRGenOptions const*) + 256
36 swift-frontend           0x000000010b010cfb swift::performCompileStepsPostSema(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 283
37 swift-frontend           0x000000010b040003 performAction(swift::CompilerInstance&, int&, swift::FrontendObserver*)::$_28::operator()(swift::CompilerInstance&) const + 147
38 swift-frontend           0x000000010b03ff5d bool llvm::function_ref<bool (swift::CompilerInstance&)>::callback_fn<performAction(swift::CompilerInstance&, int&, swift::FrontendObserver*)::$_28>(long, swift::CompilerInstance&) + 29
39 swift-frontend           0x000000010b03f421 llvm::function_ref<bool (swift::CompilerInstance&)>::operator()(swift::CompilerInstance&) const + 33
40 swift-frontend           0x000000010b03e438 withSemanticAnalysis(swift::CompilerInstance&, swift::FrontendObserver*, llvm::function_ref<bool (swift::CompilerInstance&)>, bool) + 392
41 swift-frontend           0x000000010b036f26 performAction(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 1222
42 swift-frontend           0x000000010b014186 performCompile(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 262
43 swift-frontend           0x000000010b012b60 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 2816
44 swift-frontend           0x000000010aee53df run_driver(llvm::StringRef, llvm::ArrayRef<char const*>, llvm::ArrayRef<char const*>) + 2431
45 swift-frontend           0x000000010aee4057 swift::mainEntry(int, char const**) + 1543
46 swift-frontend           0x000000010aee36a2 main + 34
47 dyld                     0x00007ff818d7a3a6 start + 1942
Abort trap: 6

This no longer crashes on top of tree; please verify.

This regressed at some point, and is reproducible with the Swift 5.10 toolchain included with Xcode 15.3 (15E204a).

swift-driver version: 1.90.11.1 Apple Swift version 5.10 (swiftlang-5.10.0.13 clang-1500.3.9.4)
Target: arm64-apple-macosx14.0

Stack dumpStack dump:
0.      Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-frontend -frontend -interpret Swift69313.swift -Xllvm -aarch64-use-tbi -enable-objc-interop -stack-check -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk -color-diagnostics -new-driver-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-driver -empty-abi-descriptor -resource-dir /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift -module-name Swift69313 -disable-clang-spi -target-sdk-version 14.4 -target-sdk-name macosx14.4 -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/usr/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/usr/local/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX14.4.sdk/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -external-plugin-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/local/lib/swift/host/plugins#/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/usr/bin/swift-plugin-server -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/host/plugins -plugin-path /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/local/lib/swift/host/plugins
1.      Apple Swift version 5.10 (swiftlang-5.10.0.13 clang-1500.3.9.4)
2.      Compiling with the current language version
3.      While evaluating request ASTLoweringRequest(Lowering AST to SIL for module Swift69313)
4.      While silgen emitFunction SIL function "@$s10Swift693133fooyyF".
 for 'foo()' (at Swift69313.swift:5:1)
Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
0  swift-frontend           0x00000001063bbf3c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 56
1  swift-frontend           0x00000001063bb0f8 llvm::sys::RunSignalHandlers() + 112
2  swift-frontend           0x00000001063bc544 SignalHandler(int) + 360
3  libsystem_platform.dylib 0x000000019ded3584 _sigtramp + 56
4  swift-frontend           0x00000001012fbe9c (anonymous namespace)::ArgEmitter::emitPackArg(llvm::MutableArrayRef, swift::Lowering::AbstractionPattern) + 168
5  swift-frontend           0x00000001012f979c (anonymous namespace)::ArgEmitter::emitPreparedArgs(swift::Lowering::PreparedArguments&&, swift::Lowering::AbstractionPattern) + 512
6  swift-frontend           0x0000000101305fb4 (anonymous namespace)::CallSite::emit(swift::Lowering::SILGenFunction&, swift::Lowering::AbstractionPattern, swift::CanTypeWrapper, (anonymous namespace)::ParamLowering&, llvm::SmallVectorImpl&, llvm::SmallVectorImpl<(anonymous namespace)::DelayedArgument>&, swift::ForeignInfo const&) && + 672
7  swift-frontend           0x00000001013059cc (anonymous namespace)::CallEmission::emitArgumentsForNormalApply(swift::Lowering::AbstractionPattern, swift::CanTypeWrapper, swift::ForeignInfo const&, llvm::SmallVectorImpl&, llvm::Optional&) + 1000
8  swift-frontend           0x00000001012edd68 (anonymous namespace)::CallEmission::apply(swift::Lowering::SGFContext) + 4064
9  swift-frontend           0x00000001012eb7bc swift::Lowering::SILGenFunction::emitApplyExpr(swift::ApplyExpr*, swift::Lowering::SGFContext) + 3060
10 swift-frontend           0x0000000101357618 swift::Lowering::SILGenFunction::emitIgnoredExpr(swift::Expr*) + 892
11 swift-frontend           0x00000001013ef684 swift::ASTVisitor<(anonymous namespace)::StmtEmitter, void, void, void, void, void, void>::visit(swift::Stmt*) + 5032
12 swift-frontend           0x0000000101386538 swift::Lowering::SILGenFunction::emitFunction(swift::FuncDecl*) + 632
13 swift-frontend           0x00000001012dae48 swift::Lowering::SILGenModule::emitFunctionDefinition(swift::SILDeclRef, swift::SILFunction*) + 8344
14 swift-frontend           0x00000001012db5bc swift::Lowering::SILGenModule::emitOrDelayFunction(swift::SILDeclRef) + 172
15 swift-frontend           0x00000001012d8d9c swift::Lowering::SILGenModule::emitFunction(swift::FuncDecl*) + 292
16 swift-frontend           0x00000001012deb54 swift::ASTLoweringRequest::evaluate(swift::Evaluator&, swift::ASTLoweringDescriptor) const + 1668
17 swift-frontend           0x00000001013edf1c swift::SimpleRequest> (swift::ASTLoweringDescriptor), (swift::RequestFlags)9>::evaluateRequest(swift::ASTLoweringRequest const&, swift::Evaluator&) + 196
18 swift-frontend           0x00000001012e1f44 llvm::Expected swift::Evaluator::getResultUncached(swift::ASTLoweringRequest const&) + 584
19 swift-frontend           0x00000001012df854 swift::performASTLowering(swift::ModuleDecl*, swift::Lowering::TypeConverter&, swift::SILOptions const&, swift::IRGenOptions const*) + 152
20 swift-frontend           0x0000000100cb99f8 swift::performCompileStepsPostSema(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 2068
21 swift-frontend           0x0000000100cbdf0c performCompile(swift::CompilerInstance&, int&, swift::FrontendObserver*) + 3616
22 swift-frontend           0x0000000100cbb6d0 swift::performFrontend(llvm::ArrayRef, char const*, void*, swift::FrontendObserver*) + 4968
23 swift-frontend           0x0000000100c4ae8c swift::mainEntry(int, char const**) + 2612
24 dyld                     0x000000019db1a0e0 start + 2360
fish: Job 1, 'xcrun swift Swift69313.swift' terminated by signal SIGSEGV (Address boundary error)

@rjmccall What Swift version was at the top of the tree at this point? I'm seeing this the Swift toolchain that shipped with the most recent stable Xcode release. (5.10)

Ah makes sense. Thanks!

authors: AnthonyLatsis rjmccall slice twof


text:
Add a cmake flag to the benchmarks: SWIFT_BENCHMARK_EXTRA_FLAGS.

We used to have this cmake flag, but it seems to have disappeared. Building the
benchmarks with different swiftc flags is central to performance analysis, so
I'm not sure how people were getting this done.

@swift-ci smoke test.

@swift-ci smoke benchmark

Build comment file:
Optimized (O)

Regression (3)

TEST
OLD
NEW
DELTA
SPEEDUP

StaticArray
9
11
+22.2%
0.82x

DropLastCountableRangeLazy
11
12
+9.1%
0.92x

ObjectiveCBridgeStubFromArrayOfNSString
27825
29699
+6.7%
0.94x (?)

Improvement (3)

TEST
OLD
NEW
DELTA
SPEEDUP

ObjectiveCBridgeFromNSArrayAnyObject
22371
20673
-7.6%
1.08x (?)

StringBuilderLong
1124
1053
-6.3%
1.07x (?)

DictionaryBridge
2127
2019
-5.1%
1.05x (?)

No Changes (372)

TEST
OLD
NEW
DELTA
SPEEDUP

AngryPhonebook
3645
3706
+1.7%
0.98x (?)

AnyHashableWithAClass
73443
73565
+0.2%
1.00x (?)

Array2D
2555
2556
+0.0%
1.00x (?)

ArrayAppend
1023
1016
-0.7%
1.01x (?)

ArrayAppendArrayOfInt
797
799
+0.3%
1.00x (?)

ArrayAppendAscii
13239
13247
+0.1%
1.00x (?)

ArrayAppendFromGeneric
797
800
+0.4%
1.00x (?)

ArrayAppendGenericStructs
1427
1443
+1.1%
0.99x

ArrayAppendLatin1
38072
38111
+0.1%
1.00x

ArrayAppendLazyMap
1341
1343
+0.1%
1.00x (?)

ArrayAppendOptionals
1429
1431
+0.1%
1.00x (?)

ArrayAppendRepeatCol
1337
1339
+0.1%
1.00x (?)

ArrayAppendReserved
756
756
+0.0%
1.00x

ArrayAppendSequence
1130
1134
+0.4%
1.00x (?)

ArrayAppendStrings
15243
15253
+0.1%
1.00x (?)

ArrayAppendToFromGeneric
806
799
-0.9%
1.01x (?)

ArrayAppendToGeneric
805
802
-0.4%
1.00x (?)

ArrayAppendUTF16
37154
37111
-0.1%
1.00x (?)

ArrayInClass
86
85
-1.2%
1.01x

ArrayLiteral
0
0
+0.0%
1.00x

ArrayOfGenericPOD2
151
151
+0.0%
1.00x

ArrayOfGenericRef
4438
4444
+0.1%
1.00x (?)

ArrayOfPOD
183
183
+0.0%
1.00x

ArrayOfRef
4386
4443
+1.3%
0.99x (?)

ArrayPlusEqualArrayOfInt
797
798
+0.1%
1.00x (?)

ArrayPlusEqualFiveElementCollection
5530
5518
-0.2%
1.00x (?)

ArrayPlusEqualSingleElementCollection
1023
1021
-0.2%
1.00x (?)

ArrayPlusEqualThreeElements
1657
1654
-0.2%
1.00x (?)

ArraySubscript
1536
1533
-0.2%
1.00x (?)

ArrayValueProp
8
8
+0.0%
1.00x

ArrayValueProp2
8
8
+0.0%
1.00x

ArrayValueProp3
8
8
+0.0%
1.00x

ArrayValueProp4
8
8
+0.0%
1.00x

BinaryFloatingPointConversionFromBinaryInteger
41
41
+0.0%
1.00x

BitCount
202
202
+0.0%
1.00x

ByteSwap
99
99
+0.0%
1.00x

COWTree
5506
5560
+1.0%
0.99x (?)

CSVParsing
756043
762200
+0.8%
0.99x (?)

CSVParsingAlt
731897
738938
+1.0%
0.99x

CSVParsingAltIndices
368011
358621
-2.6%
1.03x

CStringLongAscii
4774
4897
+2.6%
0.97x

CStringLongNonAscii
2166
2193
+1.2%
0.99x

CStringShortAscii
4740
4746
+0.1%
1.00x (?)

Calculator
649
647
-0.3%
1.00x (?)

CaptureProp
3914
3920
+0.2%
1.00x

CharIndexing_ascii_unicodeScalars
14738
14733
-0.0%
1.00x (?)

CharIndexing_ascii_unicodeScalars_Backwards
14251
14246
-0.0%
1.00x (?)

CharIndexing_chinese_unicodeScalars
11172
11163
-0.1%
1.00x (?)

CharIndexing_chinese_unicodeScalars_Backwards
10793
10793
+0.0%
1.00x

CharIndexing_japanese_unicodeScalars
17649
17652
+0.0%
1.00x (?)

CharIndexing_japanese_unicodeScalars_Backwards
17071
17059
-0.1%
1.00x (?)

CharIndexing_korean_unicodeScalars
14293
14284
-0.1%
1.00x (?)

CharIndexing_korean_unicodeScalars_Backwards
13814
13817
+0.0%
1.00x (?)

CharIndexing_punctuatedJapanese_unicodeScalars
2680
2678
-0.1%
1.00x (?)

CharIndexing_punctuatedJapanese_unicodeScalars_Backwards
2592
2589
-0.1%
1.00x

CharIndexing_punctuated_unicodeScalars
3349
3348
-0.0%
1.00x (?)

CharIndexing_punctuated_unicodeScalars_Backwards
3239
3237
-0.1%
1.00x (?)

CharIndexing_russian_unicodeScalars
12289
12285
-0.0%
1.00x (?)

CharIndexing_russian_unicodeScalars_Backwards
11883
11875
-0.1%
1.00x (?)

CharIndexing_tweet_unicodeScalars
29086
29072
-0.0%
1.00x (?)

CharIndexing_tweet_unicodeScalars_Backwards
27623
27632
+0.0%
1.00x (?)

CharIndexing_utf16_unicodeScalars
20210
20221
+0.1%
1.00x (?)

CharIndexing_utf16_unicodeScalars_Backwards
20844
20845
+0.0%
1.00x (?)

CharIteration_ascii_unicodeScalars
20420
20436
+0.1%
1.00x (?)

CharIteration_ascii_unicodeScalars_Backwards
12706
12684
-0.2%
1.00x

CharIteration_chinese_unicodeScalars
15440
15453
+0.1%
1.00x

CharIteration_chinese_unicodeScalars_Backwards
9638
9641
+0.0%
1.00x (?)

CharIteration_japanese_unicodeScalars
24439
24463
+0.1%
1.00x (?)

CharIteration_japanese_unicodeScalars_Backwards
15179
15180
+0.0%
1.00x (?)

CharIteration_korean_unicodeScalars
19818
19811
-0.0%
1.00x (?)

CharIteration_korean_unicodeScalars_Backwards
12319
12319
+0.0%
1.00x

CharIteration_punctuatedJapanese_unicodeScalars
3644
3644
+0.0%
1.00x

CharIteration_punctuatedJapanese_unicodeScalars_Backwards
2341
2340
-0.0%
1.00x (?)

CharIteration_punctuated_unicodeScalars
4579
4577
-0.0%
1.00x (?)

CharIteration_punctuated_unicodeScalars_Backwards
2916
2915
-0.0%
1.00x (?)

CharIteration_russian_unicodeScalars
17031
17017
-0.1%
1.00x

CharIteration_russian_unicodeScalars_Backwards
10605
10600
-0.0%
1.00x

CharIteration_tweet_unicodeScalars
40358
40352
-0.0%
1.00x (?)

CharIteration_tweet_unicodeScalars_Backwards
25055
25040
-0.1%
1.00x (?)

CharIteration_utf16_unicodeScalars
27072
27053
-0.1%
1.00x (?)

CharIteration_utf16_unicodeScalars_Backwards
15869
15877
+0.1%
1.00x (?)

CharacterLiteralsLarge
6008
6038
+0.5%
1.00x (?)

CharacterLiteralsSmall
410
411
+0.2%
1.00x (?)

CharacterPropertiesFetch
4682
4697
+0.3%
1.00x (?)

CharacterPropertiesPrecomputed
961
973
+1.2%
0.99x

CharacterPropertiesStashed
1548
1566
+1.2%
0.99x

CharacterPropertiesStashedMemo
1517
1533
+1.1%
0.99x

Chars
969
970
+0.1%
1.00x (?)

ClassArrayGetter
15
15
+0.0%
1.00x

Combos
463
463
+0.0%
1.00x

DictOfArraysToArrayOfDicts
791
803
+1.5%
0.99x (?)

Dictionary
507
503
-0.8%
1.01x

Dictionary2
1618
1614
-0.2%
1.00x (?)

Dictionary2OfObjects
2977
2980
+0.1%
1.00x (?)

Dictionary3
234
234
+0.0%
1.00x

Dictionary3OfObjects
682
681
-0.1%
1.00x (?)

Dictionary4
147
147
+0.0%
1.00x

Dictionary4OfObjects
200
200
+0.0%
1.00x

DictionaryGroup
133
132
-0.8%
1.01x

DictionaryGroupOfObjects
1957
1958
+0.1%
1.00x (?)

DictionaryLiteral
1590
1586
-0.3%
1.00x (?)

DictionaryOfObjects
2182
2171
-0.5%
1.01x (?)

DictionaryRemove
2927
2990
+2.2%
0.98x (?)

DictionaryRemoveOfObjects
24034
24002
-0.1%
1.00x (?)

DictionarySubscriptDefaultMutation
143
143
+0.0%
1.00x

DictionarySubscriptDefaultMutationArray
493
494
+0.2%
1.00x (?)

DictionarySubscriptDefaultMutationArrayOfObjects
3812
3817
+0.1%
1.00x (?)

DictionarySubscriptDefaultMutationOfObjects
1397
1400
+0.2%
1.00x (?)

DictionarySwap
471
471
+0.0%
1.00x

DictionarySwapOfObjects
7468
7462
-0.1%
1.00x (?)

DoubleWidthDivision
0
0
+0.0%
1.00x

DropFirstAnyCollection
102
101
-1.0%
1.01x

DropFirstAnyCollectionLazy
67046
67032
-0.0%
1.00x (?)

DropFirstAnySeqCRangeIter
19580
19583
+0.0%
1.00x (?)

DropFirstAnySeqCRangeIterLazy
19588
19558
-0.2%
1.00x (?)

DropFirstAnySeqCntRange
94
94
+0.0%
1.00x

DropFirstAnySeqCntRangeLazy
94
94
+0.0%
1.00x

DropFirstAnySequence
5082
5082
+0.0%
1.00x

DropFirstAnySequenceLazy
5084
5081
-0.1%
1.00x (?)

DropFirstArray
35
35
+0.0%
1.00x

DropFirstArrayLazy
35
35
+0.0%
1.00x

DropFirstCountableRange
35
35
+0.0%
1.00x

DropFirstCountableRangeLazy
35
35
+0.0%
1.00x

DropFirstSequence
2699
2698
-0.0%
1.00x (?)

DropFirstSequenceLazy
2785
2784
-0.0%
1.00x (?)

DropLastAnyCollection
37
37
+0.0%
1.00x

DropLastAnyCollectionLazy
22445
22381
-0.3%
1.00x (?)

DropLastAnySeqCRangeIter
3914
3914
+0.0%
1.00x

DropLastAnySeqCRangeIterLazy
3916
3908
-0.2%
1.00x (?)

DropLastAnySeqCntRange
30
29
-3.3%
1.03x

DropLastAnySeqCntRangeLazy
30
30
+0.0%
1.00x

DropLastAnySequence
5218
5210
-0.2%
1.00x

DropLastAnySequenceLazy
5321
5322
+0.0%
1.00x (?)

DropLastCountableRange
11
11
+0.0%
1.00x

DropLastSequence
642
640
-0.3%
1.00x (?)

DropLastSequenceLazy
642
642
+0.0%
1.00x

DropWhileAnyCollection
125
125
+0.0%
1.00x

DropWhileAnyCollectionLazy
166
166
+0.0%
1.00x

DropWhileAnySeqCRangeIter
16093
16069
-0.1%
1.00x (?)

DropWhileAnySeqCRangeIterLazy
166
166
+0.0%
1.00x

DropWhileAnySeqCntRange
118
118
+0.0%
1.00x

DropWhileAnySeqCntRangeLazy
166
166
+0.0%
1.00x

DropWhileAnySequence
5787
5788
+0.0%
1.00x (?)

DropWhileAnySequenceLazy
1858
1856
-0.1%
1.00x

DropWhileArrayLazy
129
129
+0.0%
1.00x

DropWhileCountableRange
36
36
+0.0%
1.00x

DropWhileCountableRangeLazy
111
111
+0.0%
1.00x

DropWhileSequence
1344
1343
-0.1%
1.00x (?)

DropWhileSequenceLazy
88
88
+0.0%
1.00x

EqualStringSubstring
48
48
+0.0%
1.00x

EqualSubstringString
48
48
+0.0%
1.00x

EqualSubstringSubstring
48
48
+0.0%
1.00x

EqualSubstringSubstringGenericEquatable
48
48
+0.0%
1.00x

ErrorHandling
2341
2330
-0.5%
1.00x (?)

ExclusivityGlobal
5
5
+0.0%
1.00x

ExclusivityIndependent
2
2
+0.0%
1.00x

FilterEvenUsingReduce
1333
1329
-0.3%
1.00x (?)

FilterEvenUsingReduceInto
151
150
-0.7%
1.01x (?)

FrequenciesUsingReduce
6653
6689
+0.5%
0.99x (?)

FrequenciesUsingReduceInto
3113
3106
-0.2%
1.00x (?)

Hanoi
3334
3328
-0.2%
1.00x (?)

HashTest
1765
1763
-0.1%
1.00x (?)

Histogram
321
321
+0.0%
1.00x

Integrate
334
335
+0.3%
1.00x

IterateData
1357
1353
-0.3%
1.00x

Join
372
371
-0.3%
1.00x

LazilyFilteredArrayContains
36273
36259
-0.0%
1.00x (?)

LazilyFilteredArrays
66106
66016
-0.1%
1.00x (?)

LazilyFilteredRange
3919
3852
-1.7%
1.02x (?)

LessSubstringSubstring
47
48
+2.1%
0.98x

LessSubstringSubstringGenericComparable
47
47
+0.0%
1.00x

LinkedList
7521
7522
+0.0%
1.00x (?)

LuhnAlgoEager
610
610
+0.0%
1.00x

LuhnAlgoLazy
611
614
+0.5%
1.00x (?)

MapReduce
400
398
-0.5%
1.01x

MapReduceAnyCollection
430
429
-0.2%
1.00x

MapReduceAnyCollectionShort
2243
2245
+0.1%
1.00x (?)

MapReduceClass
3049
3045
-0.1%
1.00x

MapReduceClassShort
4582
4595
+0.3%
1.00x

MapReduceLazyCollection
13
13
+0.0%
1.00x

MapReduceLazyCollectionShort
37
37
+0.0%
1.00x

MapReduceLazySequence
86
86
+0.0%
1.00x

MapReduceSequence
460
456
-0.9%
1.01x

MapReduceShort
2030
2027
-0.1%
1.00x (?)

MapReduceShortString
21
21
+0.0%
1.00x

MapReduceString
83
83
+0.0%
1.00x

Memset
222
215
-3.2%
1.03x (?)

MonteCarloE
10290
10267
-0.2%
1.00x

MonteCarloPi
43095
42670
-1.0%
1.01x

NSDictionaryCastToSwift
5606
5633
+0.5%
1.00x (?)

NSError
303
304
+0.3%
1.00x (?)

NSStringConversion
306
306
+0.0%
1.00x

NibbleSort
3712
3710
-0.1%
1.00x (?)

NopDeinit
21597
21576
-0.1%
1.00x (?)

ObjectAllocation
185
184
-0.5%
1.01x (?)

ObjectiveCBridgeFromNSArrayAnyObjectForced
4344
4534
+4.4%
0.96x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToString
38750
40417
+4.3%
0.96x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToStringForced
36634
37599
+2.6%
0.97x (?)

ObjectiveCBridgeFromNSDictionaryAnyObject
124775
125322
+0.4%
1.00x (?)

ObjectiveCBridgeFromNSSetAnyObject
58638
60157
+2.6%
0.97x (?)

ObjectiveCBridgeFromNSSetAnyObjectForced
4484
4675
+4.3%
0.96x (?)

ObjectiveCBridgeFromNSSetAnyObjectToString
69796
67683
-3.0%
1.03x (?)

ObjectiveCBridgeFromNSString
1311
1316
+0.4%
1.00x (?)

ObjectiveCBridgeFromNSStringForced
2441
2474
+1.4%
0.99x (?)

ObjectiveCBridgeStubDataAppend
4123
3942
-4.4%
1.05x (?)

ObjectiveCBridgeStubDateMutation
258
257
-0.4%
1.00x

ObjectiveCBridgeStubFromNSDate
4132
4131
-0.0%
1.00x

ObjectiveCBridgeStubFromNSString
861
864
+0.3%
1.00x (?)

ObjectiveCBridgeStubFromNSStringRef
161
161
+0.0%
1.00x

ObjectiveCBridgeStubNSDataAppend
2521
2511
-0.4%
1.00x (?)

ObjectiveCBridgeStubNSDateMutationRef
13132
13205
+0.6%
0.99x (?)

ObjectiveCBridgeStubToArrayOfNSString
28821
29526
+2.4%
0.98x (?)

ObjectiveCBridgeStubToNSDate
15324
15568
+1.6%
0.98x (?)

ObjectiveCBridgeStubToNSDateRef
3478
3492
+0.4%
1.00x (?)

ObjectiveCBridgeStubToNSString
1519
1519
+0.0%
1.00x

ObjectiveCBridgeStubToNSStringRef
115
115
+0.0%
1.00x

ObjectiveCBridgeStubURLAppendPath
334340
334017
-0.1%
1.00x (?)

ObjectiveCBridgeStubURLAppendPathRef
340455
332243
-2.4%
1.02x

ObjectiveCBridgeToNSArray
29360
29455
+0.3%
1.00x (?)

ObjectiveCBridgeToNSDictionary
49334
48748
-1.2%
1.01x (?)

ObjectiveCBridgeToNSSet
42089
42048
-0.1%
1.00x (?)

ObjectiveCBridgeToNSString
1291
1291
+0.0%
1.00x

ObserverClosure
2155
2169
+0.6%
0.99x (?)

ObserverForwarderStruct
1008
998
-1.0%
1.01x (?)

ObserverPartiallyAppliedMethod
3761
3739
-0.6%
1.01x (?)

ObserverUnappliedMethod
2366
2372
+0.3%
1.00x (?)

OpenClose
123
123
+0.0%
1.00x

PartialApplyDynamicType
0
0
+0.0%
1.00x

Phonebook
3881
3882
+0.0%
1.00x

PointerArithmetics
31517
31497
-0.1%
1.00x

PolymorphicCalls
25
25
+0.0%
1.00x

PopFrontArray
1945
1946
+0.1%
1.00x (?)

PopFrontArrayGeneric
1970
1961
-0.5%
1.00x (?)

PopFrontUnsafePointer
9486
9484
-0.0%
1.00x (?)

PrefixAnyCollection
102
101
-1.0%
1.01x

PrefixAnyCollectionLazy
67014
67024
+0.0%
1.00x (?)

PrefixAnySeqCRangeIter
15252
15245
-0.0%
1.00x (?)

PrefixAnySeqCRangeIterLazy
15259
15246
-0.1%
1.00x (?)

PrefixAnySeqCntRange
94
94
+0.0%
1.00x

PrefixAnySeqCntRangeLazy
94
94
+0.0%
1.00x

PrefixAnySequence
4497
4496
-0.0%
1.00x (?)

PrefixAnySequenceLazy
4483
4491
+0.2%
1.00x

PrefixArray
35
35
+0.0%
1.00x

PrefixArrayLazy
35
35
+0.0%
1.00x

PrefixCountableRange
35
35
+0.0%
1.00x

PrefixCountableRangeLazy
35
35
+0.0%
1.00x

PrefixSequence
1324
1326
+0.2%
1.00x (?)

PrefixSequenceLazy
1413
1414
+0.1%
1.00x (?)

PrefixWhileAnyCollection
172
173
+0.6%
0.99x

PrefixWhileAnyCollectionLazy
108
108
+0.0%
1.00x

PrefixWhileAnySeqCRangeIter
9644
9626
-0.2%
1.00x (?)

PrefixWhileAnySeqCRangeIterLazy
90
90
+0.0%
1.00x

PrefixWhileAnySeqCntRange
165
165
+0.0%
1.00x

PrefixWhileAnySeqCntRangeLazy
108
108
+0.0%
1.00x

PrefixWhileAnySequence
10801
10779
-0.2%
1.00x (?)

PrefixWhileAnySequenceLazy
1394
1394
+0.0%
1.00x

PrefixWhileArray
105
105
+0.0%
1.00x

PrefixWhileArrayLazy
70
70
+0.0%
1.00x

PrefixWhileCountableRange
46
46
+0.0%
1.00x

PrefixWhileCountableRangeLazy
35
35
+0.0%
1.00x

PrefixWhileSequence
397
395
-0.5%
1.01x (?)

PrefixWhileSequenceLazy
52
52
+0.0%
1.00x

Prims
775
770
-0.6%
1.01x (?)

PrimsSplit
767
767
+0.0%
1.00x

QueueConcrete
1305
1307
+0.2%
1.00x (?)

QueueGeneric
1158
1157
-0.1%
1.00x

RC4
171
171
+0.0%
1.00x

RGBHistogram
2214
2204
-0.5%
1.00x (?)

RGBHistogramOfObjects
23815
23773
-0.2%
1.00x (?)

RangeAssignment
356
356
+0.0%
1.00x

RangeIterationSigned
171
171
+0.0%
1.00x

RangeIterationSigned64
200
200
+0.0%
1.00x

RangeIterationUnsigned
200
200
+0.0%
1.00x

RangeReplaceableCollectionPlusDefault
977
988
+1.1%
0.99x (?)

RecursiveOwnedParameter
2347
2348
+0.0%
1.00x (?)

RemoveWhereFilterInts
46
46
+0.0%
1.00x

RemoveWhereFilterString
294
294
+0.0%
1.00x

RemoveWhereFilterStrings
432
432
+0.0%
1.00x

RemoveWhereMoveInts
17
17
+0.0%
1.00x

RemoveWhereMoveStrings
519
519
+0.0%
1.00x

RemoveWhereQuadraticInts
1289
1286
-0.2%
1.00x (?)

RemoveWhereQuadraticString
206
206
+0.0%
1.00x

RemoveWhereQuadraticStrings
2758
2760
+0.1%
1.00x (?)

RemoveWhereSwapInts
19
19
+0.0%
1.00x

RemoveWhereSwapStrings
848
849
+0.1%
1.00x (?)

ReversedArray
57
57
+0.0%
1.00x

ReversedBidirectional
17391
17366
-0.1%
1.00x (?)

ReversedDictionary
134
135
+0.7%
0.99x (?)

RomanNumbers
114190
119878
+5.0%
0.95x (?)

SequenceAlgosAnySequence
10988
11027
+0.4%
1.00x (?)

SequenceAlgosArray
1579
1579
+0.0%
1.00x

SequenceAlgosContiguousArray
1584
1588
+0.3%
1.00x (?)

SequenceAlgosList
1351
1351
+0.0%
1.00x

SequenceAlgosRange
4297
4294
-0.1%
1.00x

SequenceAlgosUnfoldSequence
1076
1077
+0.1%
1.00x

SetExclusiveOr
3452
3440
-0.3%
1.00x (?)

SetExclusiveOr_OfObjects
8915
8892
-0.3%
1.00x (?)

SetIntersect
319
319
+0.0%
1.00x

SetIntersect_OfObjects
1762
1766
+0.2%
1.00x (?)

SetIsSubsetOf
298
298
+0.0%
1.00x

SetIsSubsetOf_OfObjects
363
363
+0.0%
1.00x

SetUnion
3121
3149
+0.9%
0.99x

SetUnion_OfObjects
7252
7283
+0.4%
1.00x (?)

SevenBoom
1517
1517
+0.0%
1.00x

Sim2DArray
599
599
+0.0%
1.00x

SortLargeExistentials
6667
6678
+0.2%
1.00x

SortLettersInPlace
1124
1124
+0.0%
1.00x

SortSortedStrings
1015
1014
-0.1%
1.00x (?)

SortStrings
1820
1820
+0.0%
1.00x

SortStringsUnicode
2515
2519
+0.2%
1.00x (?)

StackPromo
22257
22275
+0.1%
1.00x (?)

StrComplexWalk
1559
1559
+0.0%
1.00x

StrToInt
2113
2121
+0.4%
1.00x (?)

StringAdder
4195
4190
-0.1%
1.00x (?)

StringBuilder
1395
1397
+0.1%
1.00x (?)

StringComparison_abnormal
741
741
+0.0%
1.00x

StringComparison_ascii
991
991
+0.0%
1.00x

StringComparison_emoji
794
777
-2.1%
1.02x (?)

StringComparison_fastPrenormal
732
731
-0.1%
1.00x (?)

StringComparison_latin1
553
552
-0.2%
1.00x

StringComparison_longSharedPrefix
899
895
-0.4%
1.00x (?)

StringComparison_nonBMPSlowestPrenormal
1560
1531
-1.9%
1.02x

StringComparison_slowerPrenormal
1668
1618
-3.0%
1.03x

StringComparison_zalgo
113739
113421
-0.3%
1.00x

StringEdits
118166
117547
-0.5%
1.01x (?)

StringEnumRawValueInitialization
965
958
-0.7%
1.01x (?)

StringEqualPointerComparison
286
286
+0.0%
1.00x

StringFromLongWholeSubstring
21
21
+0.0%
1.00x

StringFromLongWholeSubstringGeneric
10
10
+0.0%
1.00x

StringHasPrefixAscii
1288
1288
+0.0%
1.00x

StringHasPrefixUnicode
27676
27640
-0.1%
1.00x (?)

StringHasSuffixAscii
1431
1433
+0.1%
1.00x (?)

StringHasSuffixUnicode
84885
84865
-0.0%
1.00x (?)

StringInterpolation
10863
10962
+0.9%
0.99x (?)

StringMatch
7287
7286
-0.0%
1.00x (?)

StringRemoveDupes
1211
1202
-0.7%
1.01x (?)

StringUTF16Builder
2400
2413
+0.5%
0.99x (?)

StringWalk
1437
1437
+0.0%
1.00x

StringWithCString
43179
43165
-0.0%
1.00x (?)

StringWordBuilder
1703
1707
+0.2%
1.00x (?)

StringWordBuilderReservingCapacity
1270
1268
-0.2%
1.00x (?)

SubstringComparable
41
41
+0.0%
1.00x

SubstringEqualString
533
531
-0.4%
1.00x (?)

SubstringEquatable
1366
1372
+0.4%
1.00x (?)

SubstringFromLongString
10
10
+0.0%
1.00x

SubstringFromLongStringGeneric
69
69
+0.0%
1.00x

SuffixAnyCollection
43
43
+0.0%
1.00x

SuffixAnyCollectionLazy
22378
22416
+0.2%
1.00x (?)

SuffixAnySeqCRangeIter
4099
4111
+0.3%
1.00x (?)

SuffixAnySeqCRangeIterLazy
4109
4102
-0.2%
1.00x (?)

SuffixAnySeqCntRange
35
35
+0.0%
1.00x

SuffixAnySeqCntRangeLazy
35
35
+0.0%
1.00x

SuffixAnySequence
5215
5213
-0.0%
1.00x (?)

SuffixAnySequenceLazy
5298
5300
+0.0%
1.00x (?)

SuffixCountableRange
12
12
+0.0%
1.00x

SuffixCountableRangeLazy
12
12
+0.0%
1.00x

SuffixSequence
3897
3897
+0.0%
1.00x

SuffixSequenceLazy
3902
3897
-0.1%
1.00x (?)

SumUsingReduce
96
96
+0.0%
1.00x

SumUsingReduceInto
96
96
+0.0%
1.00x

SuperChars
41486
41321
-0.4%
1.00x (?)

TwoSum
986
991
+0.5%
0.99x

TypeFlood
0
0
+0.0%
1.00x

UTF8Decode
327
327
+0.0%
1.00x

Walsh
419
419
+0.0%
1.00x

WordCountHistogramASCII
7271
7290
+0.3%
1.00x (?)

WordCountHistogramUTF16
24377
25342
+4.0%
0.96x

WordCountUniqueASCII
1748
1818
+4.0%
0.96x

WordCountUniqueUTF16
16538
16611
+0.4%
1.00x (?)

WordSplitASCII
21693
21464
-1.1%
1.01x (?)

WordSplitUTF16
23161
23149
-0.1%
1.00x (?)

XorLoop
394
395
+0.3%
1.00x (?)

Unoptimized (Onone)

Regression (9)

TEST
OLD
NEW
DELTA
SPEEDUP

WordCountUniqueUTF16
26909
30099
+11.9%
0.89x (?)

ObjectiveCBridgeFromNSSetAnyObjectForced
7158
7887
+10.2%
0.91x (?)

CharacterPropertiesFetch
5927
6484
+9.4%
0.91x (?)

CharIndexing_chinese_unicodeScalars
275390
299901
+8.9%
0.92x (?)

ObjectiveCBridgeFromNSSetAnyObjectToString
75097
81138
+8.0%
0.93x (?)

DictionaryBridge
2085
2244
+7.6%
0.93x

CharIteration_tweet_unicodeScalars_Backwards
606174
648211
+6.9%
0.94x (?)

CharIteration_utf16_unicodeScalars
132997
140780
+5.9%
0.94x

StringUTF16Builder
7757
8208
+5.8%
0.95x

Improvement (6)

TEST
OLD
NEW
DELTA
SPEEDUP

CharIndexing_russian_unicodeScalars
338061
311345
-7.9%
1.09x (?)

ObjectiveCBridgeFromNSArrayAnyObjectForced
9440
8799
-6.8%
1.07x (?)

DropFirstAnyCollectionLazy
109972
102762
-6.6%
1.07x (?)

StringEdits
362663
339297
-6.4%
1.07x (?)

ObjectiveCBridgeStubFromArrayOfNSString
29611
27892
-5.8%
1.06x (?)

CharIndexing_chinese_unicodeScalars_Backwards
343159
326791
-4.8%
1.05x (?)

No Changes (363)

TEST
OLD
NEW
DELTA
SPEEDUP

AngryPhonebook
5152
5156
+0.1%
1.00x (?)

AnyHashableWithAClass
90360
90383
+0.0%
1.00x (?)

Array2D
631258
631335
+0.0%
1.00x (?)

ArrayAppend
4594
4586
-0.2%
1.00x (?)

ArrayAppendArrayOfInt
868
869
+0.1%
1.00x (?)

ArrayAppendAscii
40575
40594
+0.0%
1.00x (?)

ArrayAppendFromGeneric
878
876
-0.2%
1.00x

ArrayAppendGenericStructs
1509
1514
+0.3%
1.00x (?)

ArrayAppendLatin1
64174
64138
-0.1%
1.00x (?)

ArrayAppendLazyMap
178042
180063
+1.1%
0.99x (?)

ArrayAppendOptionals
1510
1514
+0.3%
1.00x (?)

ArrayAppendRepeatCol
187835
187719
-0.1%
1.00x (?)

ArrayAppendReserved
4280
4279
-0.0%
1.00x (?)

ArrayAppendSequence
157196
157016
-0.1%
1.00x (?)

ArrayAppendStrings
15365
15379
+0.1%
1.00x (?)

ArrayAppendToFromGeneric
872
874
+0.2%
1.00x (?)

ArrayAppendToGeneric
879
876
-0.3%
1.00x (?)

ArrayAppendUTF16
63630
63648
+0.0%
1.00x (?)

ArrayInClass
6256
6254
-0.0%
1.00x (?)

ArrayLiteral
1799
1801
+0.1%
1.00x (?)

ArrayOfGenericPOD2
1132
1135
+0.3%
1.00x (?)

ArrayOfGenericRef
10277
10291
+0.1%
1.00x (?)

ArrayOfPOD
842
842
+0.0%
1.00x

ArrayOfRef
9467
9510
+0.5%
1.00x (?)

ArrayPlusEqualArrayOfInt
873
871
-0.2%
1.00x (?)

ArrayPlusEqualFiveElementCollection
240989
241217
+0.1%
1.00x (?)

ArrayPlusEqualSingleElementCollection
236901
235678
-0.5%
1.01x (?)

ArrayPlusEqualThreeElements
9528
9503
-0.3%
1.00x (?)

ArraySubscript
116652
116829
+0.2%
1.00x (?)

ArrayValueProp
3697
3698
+0.0%
1.00x (?)

ArrayValueProp2
16783
16895
+0.7%
0.99x (?)

ArrayValueProp3
4174
4226
+1.2%
0.99x (?)

ArrayValueProp4
4162
4189
+0.6%
0.99x (?)

BinaryFloatingPointConversionFromBinaryInteger
6310
6240
-1.1%
1.01x (?)

BitCount
7874
7877
+0.0%
1.00x (?)

ByteSwap
9217
9215
-0.0%
1.00x (?)

COWTree
12282
11754
-4.3%
1.04x

CSVParsing
2500667
2491196
-0.4%
1.00x (?)

CSVParsingAlt
1316982
1324118
+0.5%
0.99x (?)

CSVParsingAltIndices
2277002
2235821
-1.8%
1.02x (?)

CStringLongAscii
4857
4797
-1.2%
1.01x (?)

CStringLongNonAscii
2136
2140
+0.2%
1.00x

CStringShortAscii
7546
7528
-0.2%
1.00x (?)

Calculator
1506
1505
-0.1%
1.00x (?)

CaptureProp
265070
264978
-0.0%
1.00x (?)

CharIndexing_ascii_unicodeScalars
376720
373393
-0.9%
1.01x (?)

CharIndexing_ascii_unicodeScalars_Backwards
428576
426625
-0.5%
1.00x (?)

CharIndexing_japanese_unicodeScalars
441226
444417
+0.7%
0.99x (?)

CharIndexing_japanese_unicodeScalars_Backwards
517606
543780
+5.1%
0.95x (?)

CharIndexing_korean_unicodeScalars
361857
377805
+4.4%
0.96x (?)

CharIndexing_korean_unicodeScalars_Backwards
414745
416511
+0.4%
1.00x (?)

CharIndexing_punctuatedJapanese_unicodeScalars
65240
64980
-0.4%
1.00x (?)

CharIndexing_punctuatedJapanese_unicodeScalars_Backwards
74478
74179
-0.4%
1.00x (?)

CharIndexing_punctuated_unicodeScalars
81357
80515
-1.0%
1.01x (?)

CharIndexing_punctuated_unicodeScalars_Backwards
93634
95052
+1.5%
0.99x (?)

CharIndexing_russian_unicodeScalars_Backwards
362398
365302
+0.8%
0.99x (?)

CharIndexing_tweet_unicodeScalars
739021
720819
-2.5%
1.03x (?)

CharIndexing_tweet_unicodeScalars_Backwards
857012
885568
+3.3%
0.97x (?)

CharIndexing_utf16_unicodeScalars
312631
310874
-0.6%
1.01x (?)

CharIndexing_utf16_unicodeScalars_Backwards
359985
358599
-0.4%
1.00x (?)

CharIteration_ascii_unicodeScalars
156699
156979
+0.2%
1.00x (?)

CharIteration_ascii_unicodeScalars_Backwards
304533
302870
-0.5%
1.01x (?)

CharIteration_chinese_unicodeScalars
118735
118599
-0.1%
1.00x (?)

CharIteration_chinese_unicodeScalars_Backwards
231432
232490
+0.5%
1.00x (?)

CharIteration_japanese_unicodeScalars
188116
188136
+0.0%
1.00x (?)

CharIteration_japanese_unicodeScalars_Backwards
368006
366874
-0.3%
1.00x (?)

CharIteration_korean_unicodeScalars
151369
151413
+0.0%
1.00x (?)

CharIteration_korean_unicodeScalars_Backwards
295666
295118
-0.2%
1.00x (?)

CharIteration_punctuatedJapanese_unicodeScalars
28157
28147
-0.0%
1.00x (?)

CharIteration_punctuatedJapanese_unicodeScalars_Backwards
52896
53372
+0.9%
0.99x (?)

CharIteration_punctuated_unicodeScalars
35204
35209
+0.0%
1.00x (?)

CharIteration_punctuated_unicodeScalars_Backwards
67342
67628
+0.4%
1.00x (?)

CharIteration_russian_unicodeScalars
130353
130418
+0.0%
1.00x (?)

CharIteration_russian_unicodeScalars_Backwards
254336
255629
+0.5%
0.99x (?)

CharIteration_tweet_unicodeScalars
308803
308602
-0.1%
1.00x (?)

CharIteration_utf16_unicodeScalars_Backwards
265635
271270
+2.1%
0.98x (?)

CharacterLiteralsLarge
6019
6013
-0.1%
1.00x (?)

CharacterLiteralsSmall
689
688
-0.1%
1.00x

CharacterPropertiesPrecomputed
4438
4364
-1.7%
1.02x (?)

CharacterPropertiesStashed
2451
2370
-3.3%
1.03x (?)

CharacterPropertiesStashedMemo
5103
5278
+3.4%
0.97x (?)

Chars
40482
40571
+0.2%
1.00x (?)

ClassArrayGetter
987
988
+0.1%
1.00x (?)

Combos
2227
2212
-0.7%
1.01x (?)

DictOfArraysToArrayOfDicts
3479
3450
-0.8%
1.01x (?)

Dictionary
2767
2767
+0.0%
1.00x

Dictionary2
3048
3051
+0.1%
1.00x (?)

Dictionary2OfObjects
5746
5890
+2.5%
0.98x (?)

Dictionary3
1374
1370
-0.3%
1.00x (?)

Dictionary3OfObjects
2333
2406
+3.1%
0.97x (?)

Dictionary4
1254
1249
-0.4%
1.00x (?)

Dictionary4OfObjects
1948
1869
-4.1%
1.04x

DictionaryGroup
4307
4305
-0.0%
1.00x (?)

DictionaryGroupOfObjects
7439
7441
+0.0%
1.00x (?)

DictionaryLiteral
8813
8788
-0.3%
1.00x (?)

DictionaryOfObjects
6429
6628
+3.1%
0.97x

DictionaryRemove
19225
19218
-0.0%
1.00x (?)

DictionaryRemoveOfObjects
51929
51788
-0.3%
1.00x (?)

DictionarySubscriptDefaultMutation
2096
2078
-0.9%
1.01x (?)

DictionarySubscriptDefaultMutationArray
2330
2331
+0.0%
1.00x (?)

DictionarySubscriptDefaultMutationArrayOfObjects
9171
9134
-0.4%
1.00x (?)

DictionarySubscriptDefaultMutationOfObjects
5818
5656
-2.8%
1.03x (?)

DictionarySwap
5696
5689
-0.1%
1.00x (?)

DictionarySwapOfObjects
22877
22840
-0.2%
1.00x (?)

DoubleWidthDivision
0
0
+0.0%
1.00x

DropFirstAnyCollection
14494
14534
+0.3%
1.00x (?)

DropFirstAnySeqCRangeIter
21585
21636
+0.2%
1.00x (?)

DropFirstAnySeqCRangeIterLazy
21629
21618
-0.1%
1.00x (?)

DropFirstAnySeqCntRange
14616
14615
-0.0%
1.00x (?)

DropFirstAnySeqCntRangeLazy
14552
14590
+0.3%
1.00x (?)

DropFirstAnySequence
11767
11753
-0.1%
1.00x (?)

DropFirstAnySequenceLazy
11670
11672
+0.0%
1.00x (?)

DropFirstArray
4049
4056
+0.2%
1.00x

DropFirstArrayLazy
31819
31807
-0.0%
1.00x (?)

DropFirstCountableRange
326
326
+0.0%
1.00x

DropFirstCountableRangeLazy
28082
28081
-0.0%
1.00x (?)

DropFirstSequence
11225
11234
+0.1%
1.00x (?)

DropFirstSequenceLazy
11253
11283
+0.3%
1.00x

DropLastAnyCollection
4903
4862
-0.8%
1.01x

DropLastAnyCollectionLazy
34471
34682
+0.6%
0.99x (?)

DropLastAnySeqCRangeIter
38902
38866
-0.1%
1.00x

DropLastAnySeqCRangeIterLazy
39012
39049
+0.1%
1.00x (?)

DropLastAnySeqCntRange
4879
4881
+0.0%
1.00x (?)

DropLastAnySeqCntRangeLazy
4827
4823
-0.1%
1.00x (?)

DropLastAnySequence
29676
29651
-0.1%
1.00x (?)

DropLastAnySequenceLazy
29652
29578
-0.2%
1.00x

DropLastCountableRange
112
113
+0.9%
0.99x

DropLastCountableRangeLazy
9310
9373
+0.7%
0.99x (?)

DropLastSequence
29486
29474
-0.0%
1.00x (?)

DropLastSequenceLazy
29545
29588
+0.1%
1.00x (?)

DropWhileAnyCollection
18633
18627
-0.0%
1.00x (?)

DropWhileAnyCollectionLazy
20800
20823
+0.1%
1.00x (?)

DropWhileAnySeqCRangeIter
23328
23266
-0.3%
1.00x (?)

DropWhileAnySeqCRangeIterLazy
20913
20825
-0.4%
1.00x (?)

DropWhileAnySeqCntRange
18242
18253
+0.1%
1.00x (?)

DropWhileAnySeqCntRangeLazy
20785
20769
-0.1%
1.00x (?)

DropWhileAnySequence
13443
13403
-0.3%
1.00x

DropWhileAnySequenceLazy
11655
11649
-0.1%
1.00x (?)

DropWhileArrayLazy
14617
14607
-0.1%
1.00x (?)

DropWhileCountableRange
4183
4179
-0.1%
1.00x

DropWhileCountableRangeLazy
20135
20115
-0.1%
1.00x (?)

DropWhileSequence
13102
13134
+0.2%
1.00x (?)

DropWhileSequenceLazy
10925
10923
-0.0%
1.00x (?)

EqualStringSubstring
91
92
+1.1%
0.99x

EqualSubstringString
92
92
+0.0%
1.00x

EqualSubstringSubstring
92
92
+0.0%
1.00x

EqualSubstringSubstringGenericEquatable
97
97
+0.0%
1.00x

ErrorHandling
7035
7332
+4.2%
0.96x (?)

ExclusivityGlobal
186
186
+0.0%
1.00x

ExclusivityIndependent
70
71
+1.4%
0.99x

FilterEvenUsingReduce
3671
3684
+0.4%
1.00x

FilterEvenUsingReduceInto
1957
1947
-0.5%
1.01x (?)

FrequenciesUsingReduce
10711
10407
-2.8%
1.03x (?)

FrequenciesUsingReduceInto
5689
5594
-1.7%
1.02x (?)

Hanoi
19959
20055
+0.5%
1.00x

HashTest
21718
21657
-0.3%
1.00x (?)

Histogram
6810
6802
-0.1%
1.00x (?)

Integrate
817
817
+0.0%
1.00x

IterateData
6083
6081
-0.0%
1.00x (?)

Join
1122
1120
-0.2%
1.00x (?)

LazilyFilteredArrayContains
802440
799120
-0.4%
1.00x (?)

LazilyFilteredArrays
1482250
1481903
-0.0%
1.00x (?)

LazilyFilteredRange
496874
496737
-0.0%
1.00x (?)

LessSubstringSubstring
92
92
+0.0%
1.00x

LessSubstringSubstringGenericComparable
96
96
+0.0%
1.00x

LinkedList
32147
32152
+0.0%
1.00x (?)

LuhnAlgoEager
4944
5029
+1.7%
0.98x (?)

LuhnAlgoLazy
5090
5106
+0.3%
1.00x (?)

MapReduce
25935
25934
-0.0%
1.00x (?)

MapReduceAnyCollection
25868
25809
-0.2%
1.00x (?)

MapReduceAnyCollectionShort
38151
37465
-1.8%
1.02x (?)

MapReduceClass
30429
30446
+0.1%
1.00x (?)

MapReduceClassShort
41715
41547
-0.4%
1.00x (?)

MapReduceLazyCollection
24259
24257
-0.0%
1.00x (?)

MapReduceLazyCollectionShort
34827
34829
+0.0%
1.00x (?)

MapReduceLazySequence
18938
18937
-0.0%
1.00x (?)

MapReduceSequence
30165
30209
+0.1%
1.00x (?)

MapReduceShort
37627
38058
+1.1%
0.99x (?)

MapReduceShortString
236
239
+1.3%
0.99x (?)

MapReduceString
1859
1915
+3.0%
0.97x

Memset
44715
44734
+0.0%
1.00x (?)

MonteCarloE
1244837
1248003
+0.3%
1.00x (?)

MonteCarloPi
5624224
5621708
-0.0%
1.00x (?)

NSDictionaryCastToSwift
6764
6839
+1.1%
0.99x (?)

NSError
741
720
-2.8%
1.03x (?)

NSStringConversion
352
352
+0.0%
1.00x

NibbleSort
436348
448658
+2.8%
0.97x

NopDeinit
169344
169167
-0.1%
1.00x (?)

ObjectAllocation
1386
1386
+0.0%
1.00x

ObjectiveCBridgeFromNSArrayAnyObject
22989
24104
+4.9%
0.95x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToString
42888
44994
+4.9%
0.95x (?)

ObjectiveCBridgeFromNSArrayAnyObjectToStringForced
36538
36709
+0.5%
1.00x (?)

ObjectiveCBridgeFromNSDictionaryAnyObject
127888
127193
-0.5%
1.01x (?)

ObjectiveCBridgeFromNSSetAnyObject
63363
65927
+4.0%
0.96x (?)

ObjectiveCBridgeFromNSString
3172
3157
-0.5%
1.00x (?)

ObjectiveCBridgeFromNSStringForced
2779
2784
+0.2%
1.00x (?)

ObjectiveCBridgeStubDataAppend
4384
4506
+2.8%
0.97x (?)

ObjectiveCBridgeStubDateMutation
632
634
+0.3%
1.00x (?)

ObjectiveCBridgeStubFromNSDate
4789
4794
+0.1%
1.00x (?)

ObjectiveCBridgeStubFromNSString
924
924
+0.0%
1.00x

ObjectiveCBridgeStubFromNSStringRef
199
200
+0.5%
1.00x

ObjectiveCBridgeStubNSDataAppend
2984
3004
+0.7%
0.99x (?)

ObjectiveCBridgeStubNSDateMutationRef
16802
16452
-2.1%
1.02x (?)

ObjectiveCBridgeStubToArrayOfNSString
29040
28927
-0.4%
1.00x (?)

ObjectiveCBridgeStubToNSDate
16551
16650
+0.6%
0.99x (?)

ObjectiveCBridgeStubToNSDateRef
4151
4090
-1.5%
1.01x

ObjectiveCBridgeStubToNSString
1590
1590
+0.0%
1.00x

ObjectiveCBridgeStubToNSStringRef
153
153
+0.0%
1.00x

ObjectiveCBridgeStubURLAppendPath
344933
334843
-2.9%
1.03x (?)

ObjectiveCBridgeStubURLAppendPathRef
356033
353326
-0.8%
1.01x (?)

ObjectiveCBridgeToNSArray
29426
29948
+1.8%
0.98x (?)

ObjectiveCBridgeToNSDictionary
51893
51222
-1.3%
1.01x (?)

ObjectiveCBridgeToNSSet
43779
42952
-1.9%
1.02x (?)

ObjectiveCBridgeToNSString
1362
1362
+0.0%
1.00x

ObserverClosure
6469
6508
+0.6%
0.99x (?)

ObserverForwarderStruct
4568
4570
+0.0%
1.00x (?)

ObserverPartiallyAppliedMethod
8180
8138
-0.5%
1.01x (?)

ObserverUnappliedMethod
8219
8225
+0.1%
1.00x (?)

OpenClose
541
543
+0.4%
1.00x (?)

PartialApplyDynamicType
41361
41277
-0.2%
1.00x (?)

Phonebook
19959
20064
+0.5%
0.99x

PointerArithmetics
114533
114584
+0.0%
1.00x (?)

PolymorphicCalls
6106
6097
-0.1%
1.00x (?)

PopFrontArray
4713
4696
-0.4%
1.00x (?)

PopFrontArrayGeneric
5735
5719
-0.3%
1.00x (?)

PopFrontUnsafePointer
11251
11343
+0.8%
0.99x (?)

PrefixAnyCollection
14527
14691
+1.1%
0.99x (?)

PrefixAnyCollectionLazy
105963
107133
+1.1%
0.99x (?)

PrefixAnySeqCRangeIter
17398
17417
+0.1%
1.00x (?)

PrefixAnySeqCRangeIterLazy
17437
17408
-0.2%
1.00x (?)

PrefixAnySeqCntRange
14543
14606
+0.4%
1.00x (?)

PrefixAnySeqCntRangeLazy
14421
14438
+0.1%
1.00x (?)

PrefixAnySequence
9833
9764
-0.7%
1.01x

PrefixAnySequenceLazy
9816
9777
-0.4%
1.00x (?)

PrefixArray
4054
4050
-0.1%
1.00x (?)

PrefixArrayLazy
31930
31753
-0.6%
1.01x (?)

PrefixCountableRange
326
326
+0.0%
1.00x

PrefixCountableRangeLazy
27955
27925
-0.1%
1.00x (?)

PrefixSequence
9635
9602
-0.3%
1.00x (?)

PrefixSequenceLazy
9541
9583
+0.4%
1.00x (?)

PrefixWhileAnyCollection
25918
25926
+0.0%
1.00x (?)

PrefixWhileAnyCollectionLazy
17010
17131
+0.7%
0.99x (?)

PrefixWhileAnySeqCRangeIter
33980
33947
-0.1%
1.00x (?)

PrefixWhileAnySeqCRangeIterLazy
17073
17086
+0.1%
1.00x (?)

PrefixWhileAnySeqCntRange
25854
25874
+0.1%
1.00x

PrefixWhileAnySeqCntRangeLazy
17232
17234
+0.0%
1.00x (?)

PrefixWhileAnySequence
27034
26956
-0.3%
1.00x (?)

PrefixWhileAnySequenceLazy
10461
10440
-0.2%
1.00x (?)

PrefixWhileArray
10919
10935
+0.1%
1.00x (?)

PrefixWhileArrayLazy
12933
12926
-0.1%
1.00x (?)

PrefixWhileCountableRange
11761
11762
+0.0%
1.00x (?)

PrefixWhileCountableRangeLazy
17004
17031
+0.2%
1.00x

PrefixWhileSequence
26608
26673
+0.2%
1.00x

PrefixWhileSequenceLazy
10126
10137
+0.1%
1.00x (?)

Prims
9815
9752
-0.6%
1.01x (?)

PrimsSplit
9689
9822
+1.4%
0.99x (?)

QueueConcrete
15272
15270
-0.0%
1.00x (?)

QueueGeneric
19849
19598
-1.3%
1.01x (?)

RC4
16685
16808
+0.7%
0.99x (?)

RGBHistogram
26680
26560
-0.4%
1.00x (?)

RGBHistogramOfObjects
96151
96077
-0.1%
1.00x (?)

RangeAssignment
2198
2211
+0.6%
0.99x

RangeIterationSigned
16754
16734
-0.1%
1.00x (?)

RangeIterationSigned64
39903
40180
+0.7%
0.99x (?)

RangeIterationUnsigned
35643
35616
-0.1%
1.00x (?)

RangeReplaceableCollectionPlusDefault
8195
8414
+2.7%
0.97x

RecursiveOwnedParameter
7939
7944
+0.1%
1.00x (?)

RemoveWhereFilterInts
2119
2117
-0.1%
1.00x

RemoveWhereFilterString
1516
1515
-0.1%
1.00x (?)

RemoveWhereFilterStrings
2982
2984
+0.1%
1.00x

RemoveWhereMoveInts
3338
3336
-0.1%
1.00x

RemoveWhereMoveStrings
4037
4151
+2.8%
0.97x (?)

RemoveWhereQuadraticInts
7926
7924
-0.0%
1.00x (?)

RemoveWhereQuadraticString
2338
2337
-0.0%
1.00x (?)

RemoveWhereQuadraticStrings
9602
9593
-0.1%
1.00x (?)

RemoveWhereSwapInts
5982
6033
+0.9%
0.99x (?)

RemoveWhereSwapStrings
6792
6798
+0.1%
1.00x (?)

ReversedArray
13917
13909
-0.1%
1.00x (?)

ReversedBidirectional
44528
44118
-0.9%
1.01x (?)

ReversedDictionary
23602
23541
-0.3%
1.00x (?)

RomanNumbers
1352351
1374041
+1.6%
0.98x (?)

SequenceAlgosAnySequence
11767
11725
-0.4%
1.00x (?)

SequenceAlgosArray
800057
799940
-0.0%
1.00x (?)

SequenceAlgosContiguousArray
341107
338947
-0.6%
1.01x (?)

SequenceAlgosList
8395
8397
+0.0%
1.00x (?)

SequenceAlgosRange
1144611
1143780
-0.1%
1.00x (?)

SequenceAlgosUnfoldSequence
5965
5960
-0.1%
1.00x (?)

SetExclusiveOr
18219
18169
-0.3%
1.00x (?)

SetExclusiveOr_OfObjects
42394
42377
-0.0%
1.00x (?)

SetIntersect
9053
9040
-0.1%
1.00x (?)

SetIntersect_OfObjects
12951
12946
-0.0%
1.00x (?)

SetIsSubsetOf
1459
1458
-0.1%
1.00x (?)

SetIsSubsetOf_OfObjects
1648
1652
+0.2%
1.00x (?)

SetUnion
12247
12261
+0.1%
1.00x (?)

SetUnion_OfObjects
29508
29898
+1.3%
0.99x

SevenBoom
1663
1673
+0.6%
0.99x (?)

Sim2DArray
43679
43653
-0.1%
1.00x (?)

SortLargeExistentials
15458
15441
-0.1%
1.00x (?)

SortLettersInPlace
2736
2711
-0.9%
1.01x

SortSortedStrings
1072
1070
-0.2%
1.00x (?)

SortStrings
2129
2125
-0.2%
1.00x

SortStringsUnicode
2755
2760
+0.2%
1.00x (?)

StackPromo
93173
92716
-0.5%
1.00x (?)

StaticArray
2615
2617
+0.1%
1.00x (?)

StrComplexWalk
6434
6440
+0.1%
1.00x (?)

StrToInt
58251
58350
+0.2%
1.00x (?)

StringAdder
4785
4791
+0.1%
1.00x (?)

StringBuilder
6923
6990
+1.0%
0.99x

StringBuilderLong
2726
2733
+0.3%
1.00x (?)

StringComparison_abnormal
1342
1340
-0.1%
1.00x (?)

StringComparison_ascii
9790
9765
-0.3%
1.00x (?)

StringComparison_emoji
2125
2122
-0.1%
1.00x (?)

StringComparison_fastPrenormal
5374
5317
-1.1%
1.01x (?)

StringComparison_latin1
4180
4183
+0.1%
1.00x (?)

StringComparison_longSharedPrefix
2501
2500
-0.0%
1.00x (?)

StringComparison_nonBMPSlowestPrenormal
3923
3928
+0.1%
1.00x (?)

StringComparison_slowerPrenormal
4405
4404
-0.0%
1.00x (?)

StringComparison_zalgo
115299
115627
+0.3%
1.00x

StringEnumRawValueInitialization
17405
17488
+0.5%
1.00x (?)

StringEqualPointerComparison
3557
3560
+0.1%
1.00x (?)

StringFromLongWholeSubstring
24
24
+0.0%
1.00x

StringFromLongWholeSubstringGeneric
205
207
+1.0%
0.99x (?)

StringHasPrefixAscii
3068
3066
-0.1%
1.00x (?)

StringHasPrefixUnicode
29206
29538
+1.1%
0.99x (?)

StringHasSuffixAscii
3143
3143
+0.0%
1.00x

StringHasSuffixUnicode
86907
86628
-0.3%
1.00x (?)

StringInterpolation
13309
13337
+0.2%
1.00x (?)

StringMatch
34432
34131
-0.9%
1.01x (?)

StringRemoveDupes
1417
1431
+1.0%
0.99x (?)

StringWalk
13196
13150
-0.3%
1.00x (?)

StringWithCString
39447
39427
-0.1%
1.00x (?)

StringWordBuilder
2733
2724
-0.3%
1.00x (?)

StringWordBuilderReservingCapacity
2318
2320
+0.1%
1.00x (?)

SubstringComparable
2108
2103
-0.2%
1.00x (?)

SubstringEqualString
1912
1916
+0.2%
1.00x (?)

SubstringEquatable
6139
6107
-0.5%
1.01x (?)

SubstringFromLongString
24
25
+4.2%
0.96x

SubstringFromLongStringGeneric
105
105
+0.0%
1.00x

SuffixAnyCollection
4849
4855
+0.1%
1.00x (?)

SuffixAnyCollectionLazy
34297
35831
+4.5%
0.96x (?)

SuffixAnySeqCRangeIter
34749
34706
-0.1%
1.00x (?)

SuffixAnySeqCRangeIterLazy
34722
34827
+0.3%
1.00x (?)

SuffixAnySeqCntRange
4904
4908
+0.1%
1.00x (?)

SuffixAnySeqCntRangeLazy
4831
4832
+0.0%
1.00x (?)

SuffixAnySequence
25551
25527
-0.1%
1.00x (?)

SuffixAnySequenceLazy
25475
25498
+0.1%
1.00x (?)

SuffixCountableRange
112
112
+0.0%
1.00x

SuffixCountableRangeLazy
9316
9319
+0.0%
1.00x (?)

SuffixSequence
25672
25630
-0.2%
1.00x (?)

SuffixSequenceLazy
25425
25407
-0.1%
1.00x

SumUsingReduce
167649
167787
+0.1%
1.00x (?)

SumUsingReduceInto
162345
162348
+0.0%
1.00x (?)

SuperChars
125659
124863
-0.6%
1.01x (?)

TwoSum
4255
4280
+0.6%
0.99x (?)

TypeFlood
163
162
-0.6%
1.01x (?)

UTF8Decode
31010
31085
+0.2%
1.00x

Walsh
12069
12059
-0.1%
1.00x (?)

WordCountHistogramASCII
46795
46884
+0.2%
1.00x (?)

WordCountHistogramUTF16
69554
72099
+3.7%
0.96x (?)

WordCountUniqueASCII
8194
8206
+0.1%
1.00x (?)

WordSplitASCII
26057
27249
+4.6%
0.96x

WordSplitUTF16
27513
28045
+1.9%
0.98x (?)

XorLoop
24847
24841
-0.0%
1.00x (?)

Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

source: gharchive/pull-request

authors: atrick swift-ci

repo: apple/swift

license_type: permissive

license_source: github-api