mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-25 04:02:41 +01:00
If remating a machine instr with virtual register operand, make sure the vr is avaliable at all uses regardless of whether it would be folded.
llvm-svn: 47526
This commit is contained in:
parent
4e9d5f1ead
commit
2de70b3ff8
@ -680,8 +680,7 @@ bool LiveIntervals::isReMaterializable(const LiveInterval &li,
|
|||||||
unsigned UseIdx = getInstructionIndex(UseMI);
|
unsigned UseIdx = getInstructionIndex(UseMI);
|
||||||
if (li.FindLiveRangeContaining(UseIdx)->valno != ValNo)
|
if (li.FindLiveRangeContaining(UseIdx)->valno != ValNo)
|
||||||
continue;
|
continue;
|
||||||
if (!canFoldMemoryOperand(UseMI, li.reg) &&
|
if (!isValNoAvailableAt(ImpLi, MI, UseIdx))
|
||||||
!isValNoAvailableAt(ImpLi, MI, UseIdx))
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user