diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-31 17:52:41 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-03-31 17:52:41 +0000 |
commit | 561cea0480306ad08a74eebb9e7dd1982df04694 (patch) | |
tree | 6536428d85034c8d95b0991de56249863fdb0805 /llvm/lib/CodeGen/MachineVerifier.cpp | |
parent | 9a78835414999197f408a03841d65332f90c3112 (diff) | |
download | bcm5719-llvm-561cea0480306ad08a74eebb9e7dd1982df04694.tar.gz bcm5719-llvm-561cea0480306ad08a74eebb9e7dd1982df04694.zip |
Allow kill flags on two-address instructions. They are harmless.
llvm-svn: 128643
Diffstat (limited to 'llvm/lib/CodeGen/MachineVerifier.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineVerifier.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/llvm/lib/CodeGen/MachineVerifier.cpp b/llvm/lib/CodeGen/MachineVerifier.cpp index e78ca9bbb08..a47709edb10 100644 --- a/llvm/lib/CodeGen/MachineVerifier.cpp +++ b/llvm/lib/CodeGen/MachineVerifier.cpp @@ -610,13 +610,9 @@ MachineVerifier::visitMachineOperand(const MachineOperand *MO, unsigned MONum) { if (MI->isRegTiedToDefOperand(MONum, &defIdx)) { // A two-addr use counts as a kill if use and def are the same. unsigned DefReg = MI->getOperand(defIdx).getReg(); - if (Reg == DefReg) { + if (Reg == DefReg) isKill = true; - // And in that case an explicit kill flag is not allowed. - if (MO->isKill()) - report("Illegal kill flag on two-address instruction operand", - MO, MONum); - } else if (TargetRegisterInfo::isPhysicalRegister(Reg)) { + else if (TargetRegisterInfo::isPhysicalRegister(Reg)) { report("Two-address instruction operands must be identical", MO, MONum); } |