Skip to content

Commit e384137

Browse files
committed
Modified MRI liviIn check to have unconditional subreg check
1 parent 447eb33 commit e384137

File tree

2 files changed

+8
-10
lines changed

2 files changed

+8
-10
lines changed

llvm/include/llvm/CodeGen/MachineRegisterInfo.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1020,7 +1020,7 @@ class MachineRegisterInfo {
10201020
return LiveIns;
10211021
}
10221022

1023-
bool isLiveIn(Register Reg, bool CheckForSubreg = false) const;
1023+
bool isLiveIn(Register Reg) const;
10241024

10251025
/// getLiveInPhysReg - If VReg is a live-in virtual register, return the
10261026
/// corresponding live-in physical register.

llvm/lib/CodeGen/MachineRegisterInfo.cpp

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -447,21 +447,19 @@ void MachineRegisterInfo::clearKillFlags(Register Reg) const {
447447
MO.setIsKill(false);
448448
}
449449

450-
bool MachineRegisterInfo::isLiveIn(Register Reg, bool CheckForSubreg) const {
450+
bool MachineRegisterInfo::isLiveIn(Register Reg) const {
451451
for (const std::pair<MCRegister, Register> &LI : liveins()) {
452452
if ((Register)LI.first == Reg || LI.second == Reg)
453453
return true;
454454

455455
// Check if Reg is a subreg of live-in register
456-
if (CheckForSubreg) {
457-
MCRegister PhysReg = LI.first;
458-
if (!PhysReg.isValid())
459-
continue;
456+
MCRegister PhysReg = LI.first;
457+
if (!PhysReg.isValid())
458+
continue;
460459

461-
for (MCPhysReg SubReg : getTargetRegisterInfo()->subregs(PhysReg))
462-
if (SubReg == Reg)
463-
return true;
464-
}
460+
for (MCPhysReg SubReg : getTargetRegisterInfo()->subregs(PhysReg))
461+
if (SubReg == Reg)
462+
return true;
465463
}
466464
return false;
467465
}

0 commit comments

Comments
 (0)