mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 19:31:58 +00:00
Make some fixes for LiveInterval repair with debug info. Debug value
MachineInstrs don't have a slot index. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175961 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b4bd022731
commit
79f5ab1931
@ -1056,6 +1056,8 @@ LiveIntervals::repairIntervalsInRange(MachineBasicBlock *MBB,
|
||||
for (MachineBasicBlock::iterator I = End; I != Begin;) {
|
||||
--I;
|
||||
MachineInstr *MI = I;
|
||||
if (MI->isDebugValue())
|
||||
continue;
|
||||
for (MachineInstr::const_mop_iterator MOI = MI->operands_begin(),
|
||||
MOE = MI->operands_end(); MOI != MOE; ++MOI) {
|
||||
if (MOI->isReg() &&
|
||||
@ -1087,8 +1089,10 @@ LiveIntervals::repairIntervalsInRange(MachineBasicBlock *MBB,
|
||||
for (MachineBasicBlock::iterator I = End; I != Begin;) {
|
||||
--I;
|
||||
MachineInstr *MI = I;
|
||||
SlotIndex instrIdx = getInstructionIndex(MI);
|
||||
if (MI->isDebugValue())
|
||||
continue;
|
||||
|
||||
SlotIndex instrIdx = getInstructionIndex(MI);
|
||||
bool isStartValid = getInstructionFromIndex(LII->start);
|
||||
bool isEndValid = getInstructionFromIndex(LII->end);
|
||||
|
||||
|
@ -208,7 +208,7 @@ void SlotIndexes::repairIndexesInRange(MachineBasicBlock *MBB,
|
||||
for (MachineBasicBlock::iterator I = End; I != Begin;) {
|
||||
--I;
|
||||
MachineInstr *MI = I;
|
||||
if (mi2iMap.find(MI) == mi2iMap.end())
|
||||
if (!MI->isDebugValue() && mi2iMap.find(MI) == mi2iMap.end())
|
||||
insertMachineInstrInMaps(MI);
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user