aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/CodeGen/MachineInstr.h
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2012-02-03 21:23:14 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2012-02-03 21:23:14 +0000
commit77180e0b402fff318cffd89a2251e46b3dce4064 (patch)
tree82467ca749ba9a793b13622c11980b3300946c49 /include/llvm/CodeGen/MachineInstr.h
parentae46a3362d6c7fd2d4b1bf3b40982d289d7418fb (diff)
downloadexternal_llvm-77180e0b402fff318cffd89a2251e46b3dce4064.zip
external_llvm-77180e0b402fff318cffd89a2251e46b3dce4064.tar.gz
external_llvm-77180e0b402fff318cffd89a2251e46b3dce4064.tar.bz2
Handle register mask operands in setPhysRegsDeadExcept().
Calls that use register mask operands don't have implicit defs for returned values. The register mask operand handles the call clobber, but it always behaves like a set of dead defs. Add live implicit defs for any implicitly defined physregs that are actually used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149715 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/MachineInstr.h')
-rw-r--r--include/llvm/CodeGen/MachineInstr.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/MachineInstr.h b/include/llvm/CodeGen/MachineInstr.h
index 22a7ef2..4ccc372 100644
--- a/include/llvm/CodeGen/MachineInstr.h
+++ b/include/llvm/CodeGen/MachineInstr.h
@@ -792,6 +792,9 @@ public:
/// setPhysRegsDeadExcept - Mark every physreg used by this instruction as
/// dead except those in the UsedRegs list.
+ ///
+ /// On instructions with register mask operands, also add implicit-def
+ /// operands for all registers in UsedRegs.
void setPhysRegsDeadExcept(ArrayRef<unsigned> UsedRegs,
const TargetRegisterInfo &TRI);