diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp
index 7d44d4e..4db02f4 100644
--- a/llvm/lib/CodeGen/MachineInstr.cpp
+++ b/llvm/lib/CodeGen/MachineInstr.cpp
@@ -109,7 +109,6 @@
   // register's use/def lists.
   if (isRegister()) {
     assert(!isEarlyClobber());
-    assert(!isEarlyClobber() && !overlapsEarlyClobber());
     setReg(Reg);
   } else {
     // Otherwise, change this to a register and set the reg#.
@@ -129,7 +128,6 @@
   IsKill = isKill;
   IsDead = isDead;
   IsEarlyClobber = false;
-  OverlapsEarlyClobber = false;
   SubReg = 0;
 }
 
@@ -185,14 +183,9 @@
         OS << "%mreg" << getReg();
     }
       
-    if (isDef() || isKill() || isDead() || isImplicit() || isEarlyClobber() ||
-        overlapsEarlyClobber()) {
+    if (isDef() || isKill() || isDead() || isImplicit() || isEarlyClobber()) {
       OS << "<";
       bool NeedComma = false;
-      if (overlapsEarlyClobber()) {
-        NeedComma = true;
-        OS << "overlapsearly";
-      }
       if (isImplicit()) {
         if (NeedComma) OS << ",";
         OS << (isDef() ? "imp-def" : "imp-use");
