diff options
Diffstat (limited to 'llvm/lib/CodeGen')
-rw-r--r-- | llvm/lib/CodeGen/ImplicitNullChecks.cpp | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/llvm/lib/CodeGen/ImplicitNullChecks.cpp b/llvm/lib/CodeGen/ImplicitNullChecks.cpp index 31d65e69844..3caa01e8c6d 100644 --- a/llvm/lib/CodeGen/ImplicitNullChecks.cpp +++ b/llvm/lib/CodeGen/ImplicitNullChecks.cpp @@ -266,15 +266,11 @@ bool HazardDetector::isSafeToHoist(MachineInstr *MI, return true; if (MO.isUse()) return false; - assert((!MO.isDef() || RegDefs.count(MO.getReg())) && + assert(MO.isDef() && + "Register MachineOperands must either be uses or be defs."); + assert(RegDefs.count(MO.getReg()) && "All defs must be tracked in RegDefs by now!"); - if (!MO.isDef()) { - // FIXME: This is unnecessary, we should be able to - // assert(MO.isDef()) here. - return true; - } - for (unsigned Reg : RegUses) if (TRI.regsOverlap(Reg, MO.getReg())) return false; // We found a write-after-read |