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 b239596..add25fd 100644
--- a/lib/Analysis/PostDominators.cpp
+++ b/lib/Analysis/PostDominators.cpp
@@ -282,10 +282,12 @@
 
   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