Add a comment to TargetInstrInfo about FoldImmediate
authorHal Finkel <hfinkel@anl.gov>
Sat, 6 Apr 2013 19:30:20 +0000 (19:30 +0000)
committerHal Finkel <hfinkel@anl.gov>
Sat, 6 Apr 2013 19:30:20 +0000 (19:30 +0000)
This comment documents the current behavior of the ARM implementation of this
callback, and also the soon-to-be-committed PPC version.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178959 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/TargetInstrInfo.h

index 0ba75e5d7ca03718220c2c7b86574bc76aafb2b4..d49ce1ce7f46ee01a0e9dfb510c2bcca4ce8f176 100644 (file)
@@ -774,6 +774,10 @@ public:
 
   /// FoldImmediate - 'Reg' is known to be defined by a move immediate
   /// instruction, try to fold the immediate into the use instruction.
+  /// If MRI->hasOneNonDBGUse(Reg) is true, and this function returns true,
+  /// then the caller may assume that DefMI has been erased from its parent
+  /// block. The caller may assume that it will not be erased by this
+  /// function otherwise.
   virtual bool FoldImmediate(MachineInstr *UseMI, MachineInstr *DefMI,
                              unsigned Reg, MachineRegisterInfo *MRI) const {
     return false;