Fix bug where we could iterate off the end of a basic block

llvm-svn: 6116
This commit is contained in:
Chris Lattner 2003-05-12 14:26:38 +00:00
parent a8497e3094
commit ce4b5cd9bf

View File

@ -76,8 +76,9 @@ bool PNE::EliminatePHINodes(MachineFunction &MF, MachineBasicBlock &MBB) {
// into the phi node destination. // into the phi node destination.
// //
MachineBasicBlock::iterator AfterPHIsIt = MBB.begin(); MachineBasicBlock::iterator AfterPHIsIt = MBB.begin();
if (AfterPHIsIt != MBB.end()) while (AfterPHIsIt != MBB.end() &&
while ((*AfterPHIsIt)->getOpcode() == TargetInstrInfo::PHI) ++AfterPHIsIt; (*AfterPHIsIt)->getOpcode() == TargetInstrInfo::PHI)
++AfterPHIsIt; // Skip over all of the PHI nodes...
RegInfo->copyRegToReg(MBB, AfterPHIsIt, DestReg, IncomingReg, RC); RegInfo->copyRegToReg(MBB, AfterPHIsIt, DestReg, IncomingReg, RC);
// Update live variable information if there is any... // Update live variable information if there is any...