mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-01 08:28:19 +00:00
Fix bug: ADCE/2003-04-25-PHIPostDominateProblem.ll
llvm-svn: 5952
This commit is contained in:
parent
e8b8fb7adc
commit
d2960ee802
@ -310,15 +310,16 @@ bool ADCE::doADCE() {
|
||||
// should be identical to the incoming values for LastDead.
|
||||
//
|
||||
for (BasicBlock::iterator II = NextAlive->begin();
|
||||
PHINode *PN = dyn_cast<PHINode>(II); ++II) {
|
||||
// Get the incoming value for LastDead...
|
||||
int OldIdx = PN->getBasicBlockIndex(LastDead);
|
||||
assert(OldIdx != -1 && "LastDead is not a pred of NextAlive!");
|
||||
Value *InVal = PN->getIncomingValue(OldIdx);
|
||||
|
||||
// Add an incoming value for BB now...
|
||||
PN->addIncoming(InVal, BB);
|
||||
}
|
||||
PHINode *PN = dyn_cast<PHINode>(II); ++II)
|
||||
if (LiveSet.count(PN)) { // Only modify live phi nodes
|
||||
// Get the incoming value for LastDead...
|
||||
int OldIdx = PN->getBasicBlockIndex(LastDead);
|
||||
assert(OldIdx != -1 &&"LastDead is not a pred of NextAlive!");
|
||||
Value *InVal = PN->getIncomingValue(OldIdx);
|
||||
|
||||
// Add an incoming value for BB now...
|
||||
PN->addIncoming(InVal, BB);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user