forked from OSchip/llvm-project
[LiveIntervals] Fix asan debug build failures
Call RemoveMachineInstrFromMaps before erasing instrs. repairIntervalsInRange will do this for you after erasing the instruction, but it's not safe to rely on it because assertions in SlotIndexes::removeMachineInstrFromMaps refer to fields in the erased instruction. This fixes asan buildbot failures caused by D110328.
This commit is contained in:
parent
ff0b62dd88
commit
ac51ad24a7
|
@ -1283,6 +1283,8 @@ tryInstructionTransform(MachineBasicBlock::iterator &mi,
|
|||
if (MO.isReg())
|
||||
OrigRegs.push_back(MO.getReg());
|
||||
}
|
||||
|
||||
LIS->RemoveMachineInstrFromMaps(MI);
|
||||
}
|
||||
|
||||
MI.eraseFromParent();
|
||||
|
@ -1717,6 +1719,9 @@ eliminateRegSequence(MachineBasicBlock::iterator &MBBI) {
|
|||
for (int j = MI.getNumOperands() - 1, ee = 0; j > ee; --j)
|
||||
MI.RemoveOperand(j);
|
||||
} else {
|
||||
if (LIS)
|
||||
LIS->RemoveMachineInstrFromMaps(MI);
|
||||
|
||||
LLVM_DEBUG(dbgs() << "Eliminated: " << MI);
|
||||
MI.eraseFromParent();
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue