add a new callback
authorChris Lattner <sabre@nondot.org>
Sat, 17 Sep 2005 01:02:45 +0000 (01:02 +0000)
committerChris Lattner <sabre@nondot.org>
Sat, 17 Sep 2005 01:02:45 +0000 (01:02 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23373 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Target/MRegisterInfo.h

index 12e28c0dad5ff6e30dcf253c26fb03cdfccf63f4..9ddb4953f78bfe3b4b58d6039921a3705d91748c 100644 (file)
@@ -250,6 +250,14 @@ public:
                             unsigned DestReg, unsigned SrcReg,
                             const TargetRegisterClass *RC) const = 0;
 
+  /// isLoadFromStackSlot - If the specified machine instruction is a direct
+  /// load from a stack slot, return the virtual or physical register number of
+  /// the destination along with the FrameIndex of the loaded stack slot.  If
+  /// not, return 0.  This predicate must return false if the instruction has
+  /// any side effects other than loading from the stack slot.
+  virtual unsigned isLoadFromStackSlot(MachineInstr *MI, int &FrameIndex) const{
+    return 0;
+  }
 
   /// foldMemoryOperand - Attempt to fold a load or store of the
   /// specified stack slot into the specified machine instruction for