aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2012-08-29 23:52:55 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2012-08-29 23:52:55 +0000
commitb4e090dffc4bed40cee22b94560aa8dd3b4af013 (patch)
tree8bedc10c7caf0cda1cacd85d3709e0a17e5e1037 /include
parent492d76b02ec5dd84fa59f79ce83cd3e5ae6603fe (diff)
downloadexternal_llvm-b4e090dffc4bed40cee22b94560aa8dd3b4af013.zip
external_llvm-b4e090dffc4bed40cee22b94560aa8dd3b4af013.tar.gz
external_llvm-b4e090dffc4bed40cee22b94560aa8dd3b4af013.tar.bz2
Add a bit of documentation to copyPhysReg.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162879 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Target/TargetInstrInfo.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/llvm/Target/TargetInstrInfo.h b/include/llvm/Target/TargetInstrInfo.h
index 44953a2..d7cc1cf 100644
--- a/include/llvm/Target/TargetInstrInfo.h
+++ b/include/llvm/Target/TargetInstrInfo.h
@@ -459,6 +459,13 @@ public:
}
/// copyPhysReg - Emit instructions to copy a pair of physical registers.
+ ///
+ /// This function should support copies within any legal register class as
+ /// well as any cross-class copies created during instruction selection.
+ ///
+ /// The source and destination registers may overlap, which may require a
+ /// careful implementation when multiple copy instructions are required for
+ /// large registers. See for example the ARM target.
virtual void copyPhysReg(MachineBasicBlock &MBB,
MachineBasicBlock::iterator MI, DebugLoc DL,
unsigned DestReg, unsigned SrcReg,