Correctly handle removed instructions at the beginning of MBBs when renumbering.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51876 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Owen Anderson
2008-06-02 17:36:36 +00:00
parent 98e3a6829a
commit e3abb0a858

View File

@@ -128,13 +128,11 @@ void LiveIntervals::computeNumbering() {
i++; i++;
} while (!newInstr); } while (!newInstr);
MachineInstr* preceding = i2miMap_[(mi2iMap_[newInstr] - if (mi2iMap_[newInstr] ==
InstrSlots::NUM) / InstrSlots::NUM]; MBB2IdxMap[newInstr->getParent()->getNumber()].first)
if (preceding->getParent() == newInstr->getParent() &&
preceding->modifiesRegister(I->second.reg))
LI->start = mi2iMap_[newInstr] - InstrSlots::NUM + offset;
else
LI->start = mi2iMap_[newInstr]; LI->start = mi2iMap_[newInstr];
else
LI->start = mi2iMap_[newInstr] - InstrSlots::NUM + offset;
} }
// Remap the ending index in the same way that we remapped the start, // Remap the ending index in the same way that we remapped the start,
@@ -172,13 +170,11 @@ void LiveIntervals::computeNumbering() {
i++; i++;
} while (!newInstr); } while (!newInstr);
MachineInstr* preceding = i2miMap_[(mi2iMap_[newInstr] - if (mi2iMap_[newInstr] ==
InstrSlots::NUM) / InstrSlots::NUM]; MBB2IdxMap[newInstr->getParent()->getNumber()].first)
if (preceding->getParent() == newInstr->getParent() &&
preceding->modifiesRegister(I->second.reg))
vni->def = mi2iMap_[newInstr] - InstrSlots::NUM + offset;
else
vni->def = mi2iMap_[newInstr]; vni->def = mi2iMap_[newInstr];
else
vni->def = mi2iMap_[newInstr] - InstrSlots::NUM + offset;
} }
// Remap the VNInfo kill indices, which works the same as // Remap the VNInfo kill indices, which works the same as