aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm/CodeGen/MachineRegisterInfo.h
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2013-01-05 04:38:12 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2013-01-05 04:38:12 +0000
commitbced5cd924e47818d67e33b3ae1550ab96fc239a (patch)
tree74302139124019b7e1c086319d018e16e7268ca6 /include/llvm/CodeGen/MachineRegisterInfo.h
parent64e407be0d91916d71c9259f62ba5c1f4b2993ca (diff)
downloadexternal_llvm-bced5cd924e47818d67e33b3ae1550ab96fc239a.zip
external_llvm-bced5cd924e47818d67e33b3ae1550ab96fc239a.tar.gz
external_llvm-bced5cd924e47818d67e33b3ae1550ab96fc239a.tar.bz2
Add MachineRegisterInfo::moveOperands().
This function works like memmove() for MachineOperands, except it also updates any use-def chains containing the moved operands. The use-def chains are updated without affecting the order of operands in the list. That isn't possible when using the removeRegOperandFromUseList() and addRegOperandToUseList() functions. Callers to follow soon. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@171597 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/CodeGen/MachineRegisterInfo.h')
-rw-r--r--include/llvm/CodeGen/MachineRegisterInfo.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/MachineRegisterInfo.h b/include/llvm/CodeGen/MachineRegisterInfo.h
index 0cf584f..36427e9 100644
--- a/include/llvm/CodeGen/MachineRegisterInfo.h
+++ b/include/llvm/CodeGen/MachineRegisterInfo.h
@@ -156,6 +156,9 @@ public:
// Strictly for use by MachineInstr.cpp.
void removeRegOperandFromUseList(MachineOperand *MO);
+ // Strictly for use by MachineInstr.cpp.
+ void moveOperands(MachineOperand *Dst, MachineOperand *Src, unsigned NumOps);
+
/// reg_begin/reg_end - Provide iteration support to walk over all definitions
/// and uses of a register within the MachineFunction that corresponds to this
/// MachineRegisterInfo object.