Skip to content

Commit 2630be1

Browse files
authored
Merge pull request #28871 from atrick/escape-cycle
Unrevert EscapeAnalysis commits
2 parents 393c6d3 + 6dfbafb commit 2630be1

File tree

8 files changed

+1368
-842
lines changed

8 files changed

+1368
-842
lines changed

include/swift/SILOptimizer/Analysis/EscapeAnalysis.h

Lines changed: 216 additions & 142 deletions
Large diffs are not rendered by default.

lib/SILOptimizer/Analysis/AliasAnalysis.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -737,8 +737,8 @@ bool AliasAnalysis::mayValueReleaseInterfereWithInstruction(SILInstruction *User
737737
// The most important check: does the object escape the current function?
738738
auto LO = getUnderlyingObject(V);
739739
auto *ConGraph = EA->getConnectionGraph(User->getFunction());
740-
auto *Node = ConGraph->getNodeOrNull(LO);
741-
if (Node && !Node->escapes())
740+
auto *Content = ConGraph->getValueContent(LO);
741+
if (Content && !Content->escapes())
742742
return false;
743743

744744
// This is either a non-local allocation or a scoped allocation that escapes.

0 commit comments

Comments
 (0)