summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorMatt Arsenault <Matthew.Arsenault@amd.com>2017-12-29 19:25:53 +0000
committerMatt Arsenault <Matthew.Arsenault@amd.com>2017-12-29 19:25:53 +0000
commit344c09202b0450c696da6950a59775d2ee96f28d (patch)
tree635387f60ab3bde31e7c9ca00120bc734e99f40b /llvm/lib
parentd41feef40f5fa4e7bdb77adea7c856157758db15 (diff)
downloadbcm5719-llvm-344c09202b0450c696da6950a59775d2ee96f28d.tar.gz
bcm5719-llvm-344c09202b0450c696da6950a59775d2ee96f28d.zip
IR: Fix BasicBlock::phis for empty blocks
llvm-svn: 321567
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/IR/BasicBlock.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/IR/BasicBlock.cpp b/llvm/lib/IR/BasicBlock.cpp
index 22513924a96..938c40182b9 100644
--- a/llvm/lib/IR/BasicBlock.cpp
+++ b/llvm/lib/IR/BasicBlock.cpp
@@ -264,7 +264,8 @@ const BasicBlock *BasicBlock::getUniqueSuccessor() const {
}
iterator_range<BasicBlock::phi_iterator> BasicBlock::phis() {
- return make_range<phi_iterator>(dyn_cast<PHINode>(&front()), nullptr);
+ PHINode *P = empty() ? nullptr : dyn_cast<PHINode>(&*begin());
+ return make_range<phi_iterator>(P, nullptr);
}
/// This method is used to notify a BasicBlock that the
OpenPOWER on IntegriCloud