From: Devang Patel Date: Wed, 18 Apr 2007 01:19:55 +0000 (+0000) Subject: Cache DT[*SI] lookup. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=5a713cc72fd56c81e4cccc582f5eb0c731ad7c9f;p=oota-llvm.git Cache DT[*SI] lookup. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36239 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Analysis/PostDominators.cpp b/lib/Analysis/PostDominators.cpp index b239596163f..add25fdf42f 100644 --- a/lib/Analysis/PostDominators.cpp +++ b/lib/Analysis/PostDominators.cpp @@ -282,10 +282,12 @@ PostDominanceFrontier::calculate(const PostDominatorTree &DT, if (BB) for (pred_iterator SI = pred_begin(BB), SE = pred_end(BB); - SI != SE; ++SI) + SI != SE; ++SI) { // Does Node immediately dominate this predecessor? - if (DT[*SI] && DT[*SI]->getIDom() != Node) + DominatorTree::Node *SINode = DT[*SI]; + if (SINode && SINode->getIDom() != Node) S.insert(*SI); + } // At this point, S is DFlocal. Now we union in DFup's of our children... // Loop through and visit the nodes that Node immediately dominates (Node's