Re-enable kill flags from SelectionDAGISel, with a fix: don't

try to put a kill flag on a DBG_INFO instruction.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102820 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Dan Gohman 2010-05-01 00:50:53 +00:00
parent e576f51e66
commit 3a401bcd04

View File

@ -296,7 +296,6 @@ InstrEmitter::AddRegisterOperand(MachineInstr *MI, SDValue Op,
}
}
#if 0
// If this value has only one use, that use is a kill. This is a
// conservative approximation. Tied operands are never killed, so we need
// to check that. And that means we need to determine the index of the
@ -306,10 +305,7 @@ InstrEmitter::AddRegisterOperand(MachineInstr *MI, SDValue Op,
MI->getOperand(Idx-1).isReg() && MI->getOperand(Idx-1).isImplicit())
--Idx;
bool isTied = MI->getDesc().getOperandConstraint(Idx, TOI::TIED_TO) != -1;
bool isKill = Op.hasOneUse() && !isTied;
#else
bool isKill = false;
#endif
bool isKill = Op.hasOneUse() && !isTied && !IsDebug;
MI->addOperand(MachineOperand::CreateReg(VReg, isOptDef,
false/*isImp*/, isKill,