Changes in directory llvm/lib/VMCore:
Dominators.cpp updated: 1.114 -> 1.115
---
Log message:

Check A dominates B and vise versa first while searching for nearest
common dominator.


---
Diffs of the changes:  (+4 -8)

 Dominators.cpp |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)


Index: llvm/lib/VMCore/Dominators.cpp
diff -u llvm/lib/VMCore/Dominators.cpp:1.114 
llvm/lib/VMCore/Dominators.cpp:1.115
--- llvm/lib/VMCore/Dominators.cpp:1.114        Mon Jun 11 19:54:38 2007
+++ llvm/lib/VMCore/Dominators.cpp      Tue Jun 12 12:17:57 2007
@@ -387,12 +387,12 @@
 
   DomTreeNode *NodeB = getNode(B);
 
-  // If B immediately dominates A then B is nearest common dominator.
-  if (NodeA->getIDom() == NodeB)
+  // If B dominates A then B is nearest common dominator.
+  if (dominates(B,A))
     return B;
 
-  // If A immediately dominates B then A is nearest common dominator.
-  if (NodeB->getIDom() == NodeA) 
+  // If A dominates B then A is nearest common dominator.
+  if (dominates(A,B))
     return A;
 
   // Collect NodeA dominators set.
@@ -404,10 +404,6 @@
     IDomA = IDomA->getIDom();
   }
 
-  // If B dominates A then B is nearest common dominator.
-  if (NodeADoms.count(NodeB) != 0)
-    return B;
-
   // Walk NodeB immediate dominators chain and find common dominator node.
   DomTreeNode *IDomB = NodeB->getIDom();
   while(IDomB) {



_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to