Skip to content

Commit 13b1038

Browse files
committed
[SIL] computeDominatedBoundaryBlocks on non-OSSA.
The algorithm requires no critical edges, but that doesn't mean require ownership. Remove the assert to allow the utility to be called from code where the caller has manually split edges. In the fullness of time, there should no passes should introduce critical edges.
1 parent 4c4984f commit 13b1038

File tree

2 files changed

+1
-3
lines changed

2 files changed

+1
-3
lines changed

include/swift/SIL/Dominance.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ class DominanceInfo : public DominatorTreeBase {
9494

9595
/// Compute a single block's dominance frontier.
9696
///
97-
/// Precondition: no critical edges (OSSA)
97+
/// Precondition: no critical edges
9898
///
9999
/// Postcondition: each block in \p boundary is dominated by \p root and either
100100
/// exits the function or has a single successor which has a predecessor that is

lib/SIL/Utils/Dominance.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,8 +145,6 @@ void PostDominanceInfo::verify() const {
145145
void swift::computeDominatedBoundaryBlocks(
146146
SILBasicBlock *root, DominanceInfo *domTree,
147147
SmallVectorImpl<SILBasicBlock *> &boundary) {
148-
auto *function = root->getParent();
149-
assert(function->hasOwnership());
150148
assert(boundary.empty());
151149

152150
DominanceOrder domOrder(root, domTree);

0 commit comments

Comments
 (0)