summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--llvm/include/llvm/Analysis/Dominators.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/include/llvm/Analysis/Dominators.h b/llvm/include/llvm/Analysis/Dominators.h
index c550fe0d308..c8e753c1495 100644
--- a/llvm/include/llvm/Analysis/Dominators.h
+++ b/llvm/include/llvm/Analysis/Dominators.h
@@ -320,6 +320,13 @@ public:
return NULL;
return Common->getData<BasicBlock>();
}
+
+ /// Return the immediate dominator of A.
+ BasicBlock *getIDom(BasicBlock *A) {
+ ETNode *NodeA = getNode(A);
+ const ETNode *idom = NodeA->getFather();
+ return idom ? idom->getData<BasicBlock>() : 0;
+ }
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
AU.setPreservesAll();
OpenPOWER on IntegriCloud