misched: Fix the DAG builder to handle an undef operand at ExitSU.
[oota-llvm.git] / lib / CodeGen / ScheduleDAGInstrs.cpp
index 2b00b596d3b9a448ce5f3468c34a86e15f8917cc..fd75576c7868889403ecc77b9078750019a51647 100644 (file)
@@ -210,7 +210,8 @@ void ScheduleDAGInstrs::addSchedBarrierDeps() {
         Uses[Reg].push_back(PhysRegSUOper(&ExitSU, -1));
       else {
         assert(!IsPostRA && "Virtual register encountered after regalloc.");
-        addVRegUseDeps(&ExitSU, i);
+        if (MO.readsReg()) // ignore undef operands
+          addVRegUseDeps(&ExitSU, i);
       }
     }
   } else {