[SimplifyCFG] Don't actually take DomTreeUpdater unless we intend to maintain DomTree...
authorRoman Lebedev <lebedev.ri@gmail.com>
Sat, 2 Jan 2021 11:40:55 +0000 (14:40 +0300)
committerRoman Lebedev <lebedev.ri@gmail.com>
Sat, 2 Jan 2021 11:40:55 +0000 (14:40 +0300)
This guards against unintentional mistakes
like the one i just fixed in previous commit.

llvm/lib/Transforms/Utils/SimplifyCFG.cpp

index fa12d8b..e1f7ef6 100644 (file)
@@ -6700,7 +6700,7 @@ bool SimplifyCFGOpt::run(BasicBlock *BB) {
 bool llvm::simplifyCFG(BasicBlock *BB, const TargetTransformInfo &TTI,
                        DomTreeUpdater *DTU, const SimplifyCFGOptions &Options,
                        SmallPtrSetImpl<BasicBlock *> *LoopHeaders) {
-  return SimplifyCFGOpt(TTI, DTU, BB->getModule()->getDataLayout(), LoopHeaders,
-                        Options)
+  return SimplifyCFGOpt(TTI, RequireAndPreserveDomTree ? DTU : nullptr,
+                        BB->getModule()->getDataLayout(), LoopHeaders, Options)
       .run(BB);
 }