forked from OSchip/llvm-project
When doing remat, don't consider uses of non-allocatable physregs. Patch
by Evan. llvm-svn: 74370
This commit is contained in:
parent
f0a7f3b089
commit
c91e8c7464
|
@ -947,6 +947,10 @@ unsigned LiveIntervals::getReMatImplicitUse(const LiveInterval &li,
|
|||
unsigned Reg = MO.getReg();
|
||||
if (Reg == 0 || Reg == li.reg)
|
||||
continue;
|
||||
|
||||
if (TargetRegisterInfo::isPhysicalRegister(Reg) &&
|
||||
!allocatableRegs_[Reg])
|
||||
continue;
|
||||
// FIXME: For now, only remat MI with at most one register operand.
|
||||
assert(!RegOp &&
|
||||
"Can't rematerialize instruction with multiple register operand!");
|
||||
|
|
Loading…
Reference in New Issue