summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2008-06-02 22:52:56 +0000
committerDevang Patel <dpatel@apple.com>2008-06-02 22:52:56 +0000
commit7314d0ee3c3ca8b976203afe9f1b4c8a380f4a1a (patch)
tree2ce63422c696e5d6159a2158bba5c9ea84cc4e58 /llvm/lib
parent057240f4f0b3708612458e58f6cfc7421b3b450c (diff)
downloadbcm5719-llvm-7314d0ee3c3ca8b976203afe9f1b4c8a380f4a1a.tar.gz
bcm5719-llvm-7314d0ee3c3ca8b976203afe9f1b4c8a380f4a1a.zip
Update dom tree. Fix PR 2372.
llvm-svn: 51887
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Transforms/Scalar/LoopUnswitch.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp b/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
index 767ea1d30ee..e0fb4c614d9 100644
--- a/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
+++ b/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp
@@ -569,7 +569,6 @@ void LoopUnswitch::EmitPreheaderBranchOnCondition(Value *LIC, Constant *Val,
// Insert the new branch.
BranchInst::Create(TrueDest, FalseDest, BranchVal, InsertPt);
-
}
@@ -607,6 +606,10 @@ void LoopUnswitch::UnswitchTrivialCondition(Loop *L, Value *Cond,
// insert the new conditional branch.
EmitPreheaderBranchOnCondition(Cond, Val, NewExit, NewPH,
OrigPH->getTerminator());
+ if (DT) {
+ DT->changeImmediateDominator(NewExit, OrigPH);
+ DT->changeImmediateDominator(NewPH, OrigPH);
+ }
LPM->deleteSimpleAnalysisValue(OrigPH->getTerminator(), L);
OrigPH->getTerminator()->eraseFromParent();
OpenPOWER on IntegriCloud