-
Commit d9b95a026f115c2981a80dee547e8cd4d871d3d9 by z.zoelec2:
Implement devirtualization calls to composition type protocols
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerCastVisitors.cpp
-
edit: lib/AST/SubstitutionMap.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerMiscVisitors.cpp
-
edit: lib/SILOptimizer/Utils/InstOptUtils.cpp
-
Commit bfb3dd72d779a13afd49a28b365c66e1b90f49af by z.zoelec2:
Clean up implementation and remove debug
-
edit: lib/AST/SubstitutionMap.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
edit: lib/SILOptimizer/Utils/InstOptUtils.cpp
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerCastVisitors.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerMiscVisitors.cpp
-
Commit 287bbd4df40cdf96549894b4c378a55ac9c5e26e by z.zoelec2:
Add a test
-
add: test/SILOptimizer/devirtualize_protocol_composition.swift
-
Commit f3ac3bd08b6bbece20fd20567963590ef63b5432 by z.zoelec2:
Cleanup and fix spacing (again)
-
edit: lib/SILOptimizer/Utils/InstOptUtils.cpp
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit f1c75f6d628fa47996cf1bafba7ed51162bd626f by z.zoelec2:
Remove assertion all together and use getAddressOfStackInit instead of
-
edit: lib/SILOptimizer/Utils/InstOptUtils.cpp
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
Commit 4b36f3fd69d10fcc2e1ba405847f0da8747359c6 by z.zoelec2:
Fix based on review and add more tests
-
edit: test/SILOptimizer/devirtualize_protocol_composition.swift
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit f1c15d26f30ca5abfffe633daf0f97ab0bda2d8c by z.zoelec2:
Fix tests
-
edit: test/SILOptimizer/devirtualize_protocol_composition.swift
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
Commit 6c48a8d35fd5a821408ce29475db38b1fe72267a by z.zoelec2:
Ensure that only correct patterns are optimized
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
Commit 01a452f0cb72a42a84f2af25c92e9d4cc0b4130c by z.zoelec2:
Update comment
-
edit: test/SILOptimizer/devirtualize_protocol_composition.swift
-
Commit 17894bb6eb8f85161bd3d6369693b3718ca70035 by z.zoelec2:
Remove redundant protocols
-
edit: test/SILOptimizer/devirtualize_protocol_composition.swift
-
Commit 2913dbc430579b9fba575204473f660d847b2604 by z.zoelec2:
Check dominance order and add .sil test
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
add: test/SILOptimizer/devirtualize_protocol_composition_two_applies.sil
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit 331a6af2a422e376a733f3800e06b9f355dfeeec by z.zoelec2:
Remove .dump in unrelated file
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit d032de63a7db6d558d85914b5e6a2b2fd0d290d6 by z.zoelec2:
Move relevant part of sil test to the top of the file
-
edit: test/SILOptimizer/devirtualize_protocol_composition_two_applies.sil
-
Commit 644689dc12082942800327074c76d97851b07af8 by z.zoelec2:
Rename test
-
add: test/SILOptimizer/devirtualize_protocol_composition_two_stores.sil
-
delete: test/SILOptimizer/devirtualize_protocol_composition_two_applies.sil
-
Commit 758f1f3208ca897ec2a8f53b93c8e323feb0b855 by z.zoelec2:
Update getAddressOfStackInit and getStackInitInst to support store
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
Commit f4e3ca9999a422b2c2d907778e6cb56c4ee63833 by z.zoelec2:
Formatting
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
Commit a52fe57256f275e5897ae2d9af3d456f2c51e218 by z.zoelec2:
Cleanup tests
-
edit: test/SILOptimizer/devirtualize_protocol_composition_two_stores.sil
-
Commit 33987c5380e5a97efb3c93ab7f4d8751c1d73101 by z.zoelec2:
Inline/remove getAddressOfStackInit and update tests to make them more
-
edit: test/SILOptimizer/devirtualize_protocol_composition_two_stores.sil
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
Commit 0992e482d4417a50a76d6956a2836285d07ac480 by z.zoelec2:
Abort if not address type
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
edit: test/SILOptimizer/existential_specializer_indirect_class.sil
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
Commit ae64719824621e2a70f1c574ba98f57ce4006e93 by z.zoelec2:
Support store instructions in createApplyWithConcreteType
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
edit: test/SILOptimizer/existential_specializer_indirect_class.sil
-
Commit e93919b75495a56fbd94c9f59bb81598b5bd9a03 by z.zoelec2:
Add comments, remove commented code, and other general cleanup
-
edit: lib/SILOptimizer/Utils/Existential.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit 2ac715c22f5d398c93b73bcab8d7417bc623214d by z.zoelec2:
Update devirtualize_(...)_two_stores RUN to use sil-opt
-
edit: test/SILOptimizer/devirtualize_protocol_composition_two_stores.sil
-
Commit e38da06f7c4e86584fffd8ca94a75d5e2f763b36 by z.zoelec2:
Stash debugging changes
-
edit: lib/SILOptimizer/PassManager/PassManager.cpp
-
edit: lib/Sema/TypeChecker.cpp
-
edit: lib/IRGen/AllocStackHoisting.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit 809f569bccb3886ff6394bfd04ce7d2b0163c63e by z.zoelec2:
Remove debug code and update check for successful conversion of
-
edit: lib/IRGen/AllocStackHoisting.cpp
-
edit: lib/SILOptimizer/PassManager/PassManager.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
edit: lib/Sema/TypeChecker.cpp
-
Commit ddeef6483623af432fed5fdbbd6c7e84df351085 by z.zoelec2:
Re-add support for try_apply instruction and update tests.
-
edit: test/SILOptimizer/existential_specializer_indirect_class.sil
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit ac4fa332abfc5318a6c3ee4f346f613ed5d72b10 by z.zoelec2:
Stash optimization debugging
-
edit: lib/SILOptimizer/FunctionSignatureTransforms/ExistentialSpecializer.cpp
-
edit: lib/SILOptimizer/Transforms/AllocBoxToStack.cpp
-
edit: lib/SILOptimizer/Transforms/GenericSpecializer.cpp
-
edit: lib/SILOptimizer/PassManager/PassManager.cpp
-
edit: lib/SILOptimizer/Transforms/Devirtualizer.cpp
-
Commit 4d2c342639057c5748e8b5c71e3a52b509e415c5 by z.zoelec2:
Update how createApplyWithConcreteType checks if it can update Apply
-
edit: lib/SILOptimizer/Transforms/AllocBoxToStack.cpp
-
edit: lib/SILOptimizer/PassManager/PassManager.cpp
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
edit: lib/SILOptimizer/Transforms/Devirtualizer.cpp
-
edit: lib/SILOptimizer/FunctionSignatureTransforms/ExistentialSpecializer.cpp
-
edit: lib/SILOptimizer/Transforms/GenericSpecializer.cpp
-
Commit a0fb139260d7dae389037d96958d7aecdf02e621 by z.zoelec2:
Format
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit 65e8d37b6f011ee0231466c2d3cc254171444469 by z.zoelec2:
Add a madeUpdate check to createApplyWithConcreteType to prevent
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit 37c0eb2a5cb48106ac1af5cc4276852e7f592973 by z.zoelec2:
Manually check if types are the same when checking for change and update
-
edit: test/SILOptimizer/devirtualize_protocol_composition_two_stores.sil
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit 727cd962bc62800e94883a1446e4ad64823a2189 by z.zoelec2:
Format
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit dbadd99b62531e844e7d63f0bff7a5af7a893e6f by z.zoelec2:
Add benchmark for devirtualization performance measurements
-
edit: benchmark/utils/main.swift
-
add: benchmark/single-source/DevirtualizeProtocolComposition.swift
-
edit: benchmark/CMakeLists.txt
-
Commit bdd9480c1e1637e7b187202e966f635c636fc01d by z.zoelec2:
Update added tests to require objec interop
-
edit: test/SILOptimizer/devirtualize_protocol_composition_two_stores.sil
-
edit: test/SILOptimizer/devirtualize_protocol_composition.swift
-
Commit ea821b1adb17d04eb8171dab70b2cf2986247f94 by z.zoelec2:
Use blackHole to make sure benchmark isn't optimized away
-
edit: benchmark/single-source/DevirtualizeProtocolComposition.swift
-
Commit 209bfd085664896ccce46f9ccfcfb6fa08ab8685 by z.zoelec2:
Break argument checking out of a lambda and add comments
-
edit: lib/SILOptimizer/SILCombiner/SILCombinerApplyVisitors.cpp
-
Commit 464b585c9cfb79b0249e8add9607859faa06ec45 by z.zoelec2:
Update benchmark to be more similar to other devirtualization benchmarks
-
edit: benchmark/single-source/DevirtualizeProtocolComposition.swift
-
Commit 9bdf3ff1127d5bce9d521dff52efea4b36ffc9f3 by rishizaki:
[AST] Ensure AnyFunctionType::Param.Ty is non-null
-
edit: include/swift/AST/Types.h
-
Commit 88ad7804194b5f607c6e6bbc9ff2d2cae98946ed by max:
Fix a few tests for WASI
-
edit: test/stdlib/MathConstants.swift
-
edit: test/stdlib/Runtime.swift.gyb
-
edit: test/stdlib/FloatConstants.swift
-
edit: test/stdlib/PrintPointer.swift
-
edit: test/stdlib/tgmath_optimized.swift
-
edit: test/stdlib/tgmath.swift.gyb
-
edit: test/stdlib/VarArgs.swift
-
edit: test/stdlib/POSIX.swift
-
Commit edbe22b63c5ded136070abe4e03b0a4c72ce1eb5 by compnerd:
swift-lang: shuffle the source directory structure (NFC)
-
add: stdlib/tools/swift-lang/SourceKitdUID.swift
-
add: stdlib/tools/swift-lang/SwiftLang.swift
-
add: stdlib/tools/swift-lang/SourceKitdRequest.swift
-
delete: tools/SourceKit/tools/swift-lang/SourceKitdRequest.swift
-
delete: tools/SourceKit/tools/swift-lang/SourceKitdResponse.swift
-
delete: tools/SourceKit/tools/swift-lang/SourceKitdClient.swift
-
add: stdlib/tools/swift-lang/CMakeLists.txt
-
delete: tools/SourceKit/tools/swift-lang/SourceKitdUID.swift
-
add: stdlib/tools/swift-lang/UIDs.swift.gyb
-
delete: tools/SourceKit/tools/swift-lang/CMakeLists.txt
-
edit: stdlib/tools/CMakeLists.txt
-
add: stdlib/tools/swift-lang/SourceKitdResponse.swift
-
edit: tools/SourceKit/tools/CMakeLists.txt
-
add: stdlib/tools/swift-lang/SourceKitdClient.swift
-
delete: tools/SourceKit/tools/swift-lang/SwiftLang.swift
-
delete: tools/SourceKit/tools/swift-lang/UIDs.swift.gyb
-
Commit 8e705f3413b6033f9b3456d89acca570434c1664 by max:
[WebAssembly] Add wasm32 support to stdlib String
-
edit: stdlib/public/core/SmallString.swift
-
edit: stdlib/public/core/StringStorage.swift
-
edit: stdlib/public/core/StringObject.swift
-
Commit b44fbaeb87b93e402842840ab6b83ea8948e19e1 by mgottesman:
[sil] Use FrozenMultiMap in PredictableMemOpts instead of implementing
-
edit: lib/SILOptimizer/Mandatory/PredictableMemOpt.cpp
-
edit: include/swift/SILOptimizer/Utils/ValueLifetime.h
-
Commit 0555de5469007acb98994f89e9f0cd339146c0a2 by spestov:
Sema: Remove a couple of calls to clearLookupCache()
-
edit: include/swift/AST/SourceFile.h
-
edit: lib/Sema/TypeCheckREPL.cpp
-
edit: lib/Sema/NameBinding.cpp
-
edit: lib/AST/Module.cpp
-
Commit eaee6faa00ca8a349a5bd49ab335f1902b2a23fc by spestov:
Sema: Prefer an outer type named 'Self' over the SE-0068 behavior
-
edit: lib/Sema/TypeCheckType.cpp
-
edit: test/type/self.swift
-
Commit 457b5ddaf2023c524527ddc4e5c9ca64cdcda94a by mgottesman:
Add guidance about cost of var boxes being captured by an escaping
-
edit: docs/OptimizationTips.rst
-
Commit 56ecb8fc9b23866e15475a152da7bbdb0ae16cf8 by eeckstein:
Enable better runtime failure messages
-
edit: test/DebugInfo/linetable-codeview.swift
-
edit: test/IRGen/condfail_message.swift
-
edit: lib/IRGen/IRGenFunction.cpp
-
Commit c14a51b3127f1222de85287655a2a25d70a8b776 by github:
[SILVerifier] NFC: standardize same-type assertions. (#29862)
-
edit: lib/SIL/SILVerifier.cpp
-
Commit 47c9428fa20389a88afd40d552a340ca51a74a21 by davg:
Disable diagnostics for blacklisted document schemes
-
edit: Tests/SourceKitTests/LocalSwiftTests.swift
-
edit: Sources/SourceKit/sourcekitd/SwiftLanguageServer.swift
-
edit: Sources/LanguageServerProtocol/SupportTypes/DocumentURI.swift
-
Commit bb62772c32d0eef27a44a662396bd15724ac7d6a by davg:
Regenerate linux test main
-
edit: Tests/SourceKitTests/XCTestManifests.swift
-
Commit 8e9a22de3cfcc6b88f72873f4713d5eed715ae69 by vsk:
[HotColdSplit] Mark entire function cold when entry block is cold
-
edit: llvm/test/Transforms/HotColdSplit/X86/do-not-split.ll
-
edit: llvm/lib/Transforms/IPO/HotColdSplitting.cpp
-
Commit 139077a308b079bcca649604b43c727711508ce1 by david:
Reimplement binary targets tests without binaries
-
add: IntegrationTests/Fixtures/BinaryTargets/Inputs/SwiftFramework/SwiftFramework/SwiftFramework.swift
-
add: IntegrationTests/Fixtures/BinaryTargets/TestBinary/Package.swift
-
add: IntegrationTests/Fixtures/BinaryTargets/TestBinary/Sources/CLibrary/CLibrary.m
-
add: IntegrationTests/Fixtures/BinaryTargets/TestBinary/Sources/cexe/main.m
-
add: IntegrationTests/Fixtures/BinaryTargets/Inputs/SwiftFramework/SwiftFramework/Info.plist
-
add: IntegrationTests/Tests/IntegrationTests/SwiftPMTests.swift
-
add: IntegrationTests/Fixtures/BinaryTargets/Inputs/StaticLibrary/include/StaticLibrary.h
-
add: IntegrationTests/Fixtures/BinaryTargets/Inputs/SwiftFramework/SwiftFramework/SwiftFramework.h
-
add: IntegrationTests/Fixtures/BinaryTargets/TestBinary/SwiftFramework.zip
-
edit: IntegrationTests/Tests/IntegrationTests/Helpers.swift
-
edit: Tests/CommandsTests/PackageToolTests.swift
-
edit: IntegrationTests/Fixtures/XCBuild/SystemTargets/Inputs/libsys.h
-
add: IntegrationTests/Fixtures/BinaryTargets/TestBinary/Sources/exe/main.swift
-
add: IntegrationTests/Fixtures/BinaryTargets/Inputs/DynamicLibrary/include/DynamicLibrary.h
-
delete: IntegrationTests/Fixtures/XCBuild/SystemTargets/Inputs/libsys.a
-
add: IntegrationTests/Fixtures/XCBuild/SystemTargets/Inputs/libsys.c
-
add: IntegrationTests/Fixtures/BinaryTargets/Inputs/StaticLibrary/StaticLibrary.m
-
add: IntegrationTests/Fixtures/BinaryTargets/Inputs/DynamicLibrary/DynamicLibrary.m
-
add: IntegrationTests/Fixtures/BinaryTargets/TestBinary/Sources/CLibrary/include/CLibrary.h
-
add: IntegrationTests/Fixtures/BinaryTargets/TestBinary/Sources/Library/Library.swift
-
edit: IntegrationTests/Tests/IntegrationTests/XCBuildTests.swift
-
Commit 0d0ec605b0d2d6872e8eddf1fe815af15a44e69a by david:
Integrate XCBuild as a backend to swift-build
-
edit: Sources/Commands/BuildSystem.swift
-
edit: Sources/Commands/SwiftTool.swift
-
Commit ff1b2f2d29e6ddb4adb233ade41cf93cc342b460 by david:
Parse XCBuild output to prettify it
-
edit: Sources/Build/SwiftCompilerOutputParser.swift
-
edit: Sources/XCBuildSupport/CMakeLists.txt
-
add: Sources/XCBuildSupport/XCBuildOutputParser.swift
-
add: TSC/Sources/TSCUtility/JSONMessageStreamingParser.swift
-
add: Sources/XCBuildSupport/XCBuildDelegate.swift
-
edit: TSC/Sources/TSCUtility/CMakeLists.txt
-
add: TSC/Tests/TSCUtilityTests/JSONMessageStreamingParserTests.swift
-
edit: Tests/BuildTests/SwiftCompilerOutputParserTests.swift