diff --git a/include/llvm/Target/MRegisterInfo.h b/include/llvm/Target/MRegisterInfo.h
index afcadc4..cfe304f 100644
--- a/include/llvm/Target/MRegisterInfo.h
+++ b/include/llvm/Target/MRegisterInfo.h
@@ -375,17 +375,6 @@
     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 ba2a193..1b7f70e 100644
--- a/lib/CodeGen/LowerSubregs.cpp
+++ b/lib/CodeGen/LowerSubregs.cpp
@@ -146,7 +146,7 @@
   // 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);
