lebedev.ri updated this revision to Diff 319624.
lebedev.ri retitled this revision from "[SimplifyCFG] Require and preserve
dominator tree" to "[SimplifyCFG] If provided, preserve Dominator Tree".
lebedev.ri edited the summary of this revision.
lebedev.ri added a comment.
Let me resell this. This patch is fully NFC,
it just signifies that SimplifyCFG is now DomTree-aware,
and preserves it **if** it is provided.
Here, i'm only looking for a congratulatory LGTM.
I'm sure some edgecases will pop up
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D94827/new/
https://reviews.llvm.org/D94827
Files:
llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Index: llvm/lib/Transforms/Utils/SimplifyCFG.cpp
===================================================================
--- llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+++ llvm/lib/Transforms/Utils/SimplifyCFG.cpp
@@ -6561,20 +6561,10 @@
bool SimplifyCFGOpt::simplifyOnce(BasicBlock *BB) {
bool Changed = simplifyOnceImpl(BB);
- assert((!RequireAndPreserveDomTree ||
- (DTU &&
- DTU->getDomTree().verify(DominatorTree::VerificationLevel::Full)))
&&
- "Failed to maintain validity of domtree!");
-
return Changed;
}
bool SimplifyCFGOpt::run(BasicBlock *BB) {
- assert((!RequireAndPreserveDomTree ||
- (DTU &&
- DTU->getDomTree().verify(DominatorTree::VerificationLevel::Full)))
&&
- "Original domtree is invalid?");
-
bool Changed = false;
// Repeated simplify BB as long as resimplification is requested.
@@ -6592,7 +6582,7 @@
bool llvm::simplifyCFG(BasicBlock *BB, const TargetTransformInfo &TTI,
DomTreeUpdater *DTU, const SimplifyCFGOptions &Options,
ArrayRef<WeakVH> LoopHeaders) {
- return SimplifyCFGOpt(TTI, RequireAndPreserveDomTree ? DTU : nullptr,
- BB->getModule()->getDataLayout(), LoopHeaders, Options)
+ return SimplifyCFGOpt(TTI, DTU, BB->getModule()->getDataLayout(),
LoopHeaders,
+ Options)
.run(BB);
}
Index: llvm/lib/Transforms/Utils/SimplifyCFG.cpp
===================================================================
--- llvm/lib/Transforms/Utils/SimplifyCFG.cpp
+++ llvm/lib/Transforms/Utils/SimplifyCFG.cpp
@@ -6561,20 +6561,10 @@
bool SimplifyCFGOpt::simplifyOnce(BasicBlock *BB) {
bool Changed = simplifyOnceImpl(BB);
- assert((!RequireAndPreserveDomTree ||
- (DTU &&
- DTU->getDomTree().verify(DominatorTree::VerificationLevel::Full))) &&
- "Failed to maintain validity of domtree!");
-
return Changed;
}
bool SimplifyCFGOpt::run(BasicBlock *BB) {
- assert((!RequireAndPreserveDomTree ||
- (DTU &&
- DTU->getDomTree().verify(DominatorTree::VerificationLevel::Full))) &&
- "Original domtree is invalid?");
-
bool Changed = false;
// Repeated simplify BB as long as resimplification is requested.
@@ -6592,7 +6582,7 @@
bool llvm::simplifyCFG(BasicBlock *BB, const TargetTransformInfo &TTI,
DomTreeUpdater *DTU, const SimplifyCFGOptions &Options,
ArrayRef<WeakVH> LoopHeaders) {
- return SimplifyCFGOpt(TTI, RequireAndPreserveDomTree ? DTU : nullptr,
- BB->getModule()->getDataLayout(), LoopHeaders, Options)
+ return SimplifyCFGOpt(TTI, DTU, BB->getModule()->getDataLayout(), LoopHeaders,
+ Options)
.run(BB);
}
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits