Files
swift-mirror/lib/SILOptimizer/Mandatory/CMakeLists.txt
Erik Eckstein 8b2d27007f DiagnoseInfiniteRecursion: re-implement the pass in swift and fix a bug
Fixes a false alarm in case of recursive calls with different type parameters.
For example:

```
protocol P {
  associatedtype E: P
}

func noRecursionMismatchingTypeArgs1<T: P>(_ t: T.Type) {
  if T.self == Int.self {
    return
  }
  noRecursionMismatchingTypeArgs1(T.E.self)
}
```
2025-03-26 09:14:38 +01:00

56 lines
1.6 KiB
CMake

target_sources(swiftSILOptimizer PRIVATE
AccessEnforcementSelection.cpp
AccessMarkerElimination.cpp
AlwaysEmitConformanceMetadataPreservation.cpp
AddressLowering.cpp
CapturePromotion.cpp
ClosureLifetimeFixup.cpp
ConsumeOperatorCopyableAddressesChecker.cpp
ConsumeOperatorCopyableValuesChecker.cpp
PhiStorageOptimizer.cpp
ConstantPropagation.cpp
DiagnoseUnnecessaryPreconcurrencyImports.cpp
DebugInfoCanonicalizer.cpp
DefiniteInitialization.cpp
DIMemoryUseCollector.cpp
DataflowDiagnostics.cpp
DiagnoseInvalidEscapingCaptures.cpp
DiagnoseLifetimeIssues.cpp
DiagnoseStaticExclusivity.cpp
DiagnoseUnreachable.cpp
Differentiation.cpp
FlowIsolation.cpp
IRGenPrepare.cpp
LexicalLifetimeEliminator.cpp
LowerHopToActor.cpp
MandatoryInlining.cpp
MoveOnlyAddressCheckerTester.cpp
MoveOnlyAddressCheckerUtils.cpp
MoveOnlyBorrowToDestructureTester.cpp
MoveOnlyBorrowToDestructureUtils.cpp
MoveOnlyChecker.cpp
MoveOnlyDiagnostics.cpp
MoveOnlyObjectCheckerTester.cpp
MoveOnlyObjectCheckerUtils.cpp
MoveOnlyTempAllocationFromLetTester.cpp
MoveOnlyTypeUtils.cpp
MoveOnlyUtils.cpp
MovedAsyncVarDebugInfoPropagator.cpp
NestedSemanticFunctionCheck.cpp
OptimizeHopToExecutor.cpp
PerformanceDiagnostics.cpp
PredictableMemOpt.cpp
PMOMemoryUseCollector.cpp
RawSILInstLowering.cpp
ReferenceBindingTransform.cpp
ThunkLowering.cpp
SendNonSendable.cpp
LowerTupleAddrConstructor.cpp
SILGenCleanup.cpp
YieldOnceCheck.cpp
OSLogOptimization.cpp
MoveOnlyWrappedTypeEliminator.cpp
RegionAnalysisInvalidationTransform.cpp
DiagnosticDeadFunctionElimination.cpp
OwnershipModelEliminator.cpp)