It is not possible to determine dominance between two PHI nodes

based on their ordering. This is applicable to ETForest::dominates() also.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35423 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Devang Patel 2007-03-28 14:57:43 +00:00
parent e82fca09bf
commit 9dea3a340a

View File

@ -952,6 +952,11 @@ bool ETForestBase::dominates(Instruction *A, Instruction *B) {
BasicBlock::iterator I = BBA->begin();
for (; &*I != A && &*I != B; ++I) /*empty*/;
// It is not possible to determine dominance between two PHI nodes
// based on their ordering.
if (isa<PHINode>(A) && isa<PHINode>(B))
return false;
if(!IsPostDominators) {
// A dominates B if it is found first in the basic block.
return &*I == A;