mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
This is what you need to correctly analyze OSSA. - computeLinearLiveness - computeInteriorLiveness - InteriorUseVisitor - OwnershipUseVisitor - LivenessBoundary Along with BorrowUtils.swift, all of our OSSA transformations are built on top of these fundamentals. With these APIs, we can build anything OSSA-related in SwiftCompilerSources. These utilities are immediately needed for borrowed arguments and lifetime dependence. In the near future, we can also use them to complete OSSA lifetimes and *correctly* fixup OSSA after transformation without introducing lots of copies and creating lots of incorrect corner cases.