summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target
diff options
context:
space:
mode:
authorChangpeng Fang <changpeng.fang@gmail.com>2016-07-28 23:01:45 +0000
committerChangpeng Fang <changpeng.fang@gmail.com>2016-07-28 23:01:45 +0000
commit26fb9d268b524080afd2b360c0ad68e225ab7800 (patch)
treed1ec4010936ef4cc97a5decaaf65041c596a12e1 /llvm/lib/Target
parent0ab23cf1c8c92e5fca497b1324132e5be136162e (diff)
downloadbcm5719-llvm-26fb9d268b524080afd2b360c0ad68e225ab7800.tar.gz
bcm5719-llvm-26fb9d268b524080afd2b360c0ad68e225ab7800.zip
AMDGPU/SI: Don't handle a loop if there is no loop at all for a terminator BB.
Differential Revision: http://reviews.llvm.org/D22021 Reviewed by: arsenm llvm-svn: 277073
Diffstat (limited to 'llvm/lib/Target')
-rw-r--r--llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp b/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
index 5f182c5304c..b5729fef6ff 100644
--- a/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
+++ b/llvm/lib/Target/AMDGPU/SIAnnotateControlFlow.cpp
@@ -331,6 +331,8 @@ void SIAnnotateControlFlow::handleLoop(BranchInst *Term) {
BasicBlock *BB = Term->getParent();
llvm::Loop *L = LI->getLoopFor(BB);
+ if (!L)
+ return;
BasicBlock *Target = Term->getSuccessor(1);
PHINode *Broken = PHINode::Create(Int64, 0, "", &Target->front());
OpenPOWER on IntegriCloud