diff --git a/include/llvm/Target/MRegisterInfo.h b/include/llvm/Target/MRegisterInfo.h index afcadc4a173..cfe304fcd4f 100644 --- a/include/llvm/Target/MRegisterInfo.h +++ b/include/llvm/Target/MRegisterInfo.h @@ -375,17 +375,6 @@ public: return get(RegNo).SuperRegs; } - /// isSubRegOf - Predicate which returns true if RegA is a sub-register of - /// RegB. Returns false otherwise. - /// - bool isSubRegOf(unsigned RegA, unsigned RegB) const { - const TargetRegisterDesc &RD = (*this)[RegA]; - for (const unsigned *reg = RD.SuperRegs; *reg != 0; ++reg) - if (*reg == RegB) - return true; - return false; - } - /// getName - Return the symbolic target specific name for the specified /// physical register. const char *getName(unsigned RegNo) const { diff --git a/lib/CodeGen/LowerSubregs.cpp b/lib/CodeGen/LowerSubregs.cpp index ba2a193ca40..1b7f70e05ab 100644 --- a/lib/CodeGen/LowerSubregs.cpp +++ b/lib/CodeGen/LowerSubregs.cpp @@ -146,7 +146,7 @@ bool LowerSubregsInstructionPass::LowerInsert(MachineInstr *MI) { // of the destination, we copy the subreg into the source // However, this is only safe if the insert instruction is the kill // of the source register - bool revCopyOrder = MRI.isSubRegOf(InsReg, DstReg); + bool revCopyOrder = MRI.isSubRegister(DstReg, InsReg); if (revCopyOrder && InsReg != DstSubReg) { if (MI->getOperand(1).isKill()) { DstSubReg = MRI.getSubReg(SrcReg, SubIdx);