It is not possible to determine dominance between two PHI nodes

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

llvm-svn: 35423
This commit is contained in:
Devang Patel 2007-03-28 14:57:43 +00:00
parent cf7d99a731
commit 7cde72cbc1

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;