Can tied use operands be 'isKill'?

I noticed some inconsistency regarding tied use operands and isKill flag.
InstrEmitter::AddRegisterOperand() says tied use operands are never killed.
MachineInstr::addRegisterKilled() says that “Two-address uses of physregs must not be marked kill”, but allows tied VReg uses be marked as killed.
LiveVariables pass also adds this flag on tied uses while LiveInterval pass apparently clears it.

What is correct behavior here? Is it documented somewhere?

I think it makes sense to allow kill flags while in MachineSSA. In SSA form we need to use a different vreg for every definition anyway and cannot enforce the tied constraints yet. I think after the twoaddressinstruction pass when tied constraints are enforced we should stop using kill flags on tied use operands…