[llvm-commits] CVS: llvm/lib/VMCore/Dominators.cpp

Devang Patel dpatel at apple.com
Mon Mar 26 16:18:45 PDT 2007



Changes in directory llvm/lib/VMCore:

Dominators.cpp updated: 1.81 -> 1.82
---
Log message:

It is not possible to determie dominance between two PHI nodes 
based on their ordering.



---
Diffs of the changes:  (+6 -0)

 Dominators.cpp |    6 ++++++
 1 files changed, 6 insertions(+)


Index: llvm/lib/VMCore/Dominators.cpp
diff -u llvm/lib/VMCore/Dominators.cpp:1.81 llvm/lib/VMCore/Dominators.cpp:1.82
--- llvm/lib/VMCore/Dominators.cpp:1.81	Mon Mar 26 18:17:19 2007
+++ llvm/lib/VMCore/Dominators.cpp	Mon Mar 26 18:18:28 2007
@@ -19,6 +19,7 @@
 #include "llvm/Assembly/Writer.h"
 #include "llvm/ADT/DepthFirstIterator.h"
 #include "llvm/ADT/SetOperations.h"
+#include "llvm/Instructions.h"
 #include <algorithm>
 using namespace llvm;
 
@@ -265,6 +266,11 @@
   BasicBlock *BBA = A->getParent(), *BBB = B->getParent();
   if (BBA != BBB) return dominates(BBA, BBB);
 
+  // It is not possible to determie dominance between two PHI nodes 
+  // based on their ordering.
+  if (isa<PHINode>(A) && isa<PHINode>(B)) 
+    return false;
+
   // Loop through the basic block until we find A or B.
   BasicBlock::iterator I = BBA->begin();
   for (; &*I != A && &*I != B; ++I) /*empty*/;






More information about the llvm-commits mailing list