[llvm-commits] CVS: llvm/include/llvm/Target/MRegisterInfo.h

Jim Laskey jlaskey at apple.com
Tue Mar 28 05:48:49 PST 2006



Changes in directory llvm/include/llvm/Target:

MRegisterInfo.h updated: 1.72 -> 1.73
---
Log message:

Expose base register for DwarfWriter.  Refactor code accordingly.


---
Diffs of the changes:  (+11 -1)

 MRegisterInfo.h |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletion(-)


Index: llvm/include/llvm/Target/MRegisterInfo.h
diff -u llvm/include/llvm/Target/MRegisterInfo.h:1.72 llvm/include/llvm/Target/MRegisterInfo.h:1.73
--- llvm/include/llvm/Target/MRegisterInfo.h:1.72	Fri Mar 24 10:18:42 2006
+++ llvm/include/llvm/Target/MRegisterInfo.h	Tue Mar 28 07:48:33 2006
@@ -343,10 +343,20 @@
   virtual void emitEpilogue(MachineFunction &MF,
                             MachineBasicBlock &MBB) const = 0;
                             
+  //===--------------------------------------------------------------------===//
+  /// Debug information queries.
+
+  /// getFrameRegister - This method should return the register used as a base
+  /// for values allocated in the current stack frame.  This value should be
+  /// returned as a dwarf register number (getDwarfRegNum.)
+  virtual unsigned getFrameRegister(MachineFunction &MF) const = 0;
+                            
   /// getLocation - This method should return the actual location of a frame
   /// variable given the frame index.  The location is returned in ML.
+  /// Subclasses should override this method for special handling of frame
+  /// variables and call MRegisterInfo::getLocation for the default action.
   virtual void getLocation(MachineFunction &MF, unsigned Index,
-                          MachineLocation &ML) const = 0;
+                           MachineLocation &ML) const;
 };
 
 // This is useful when building DenseMaps keyed on virtual registers






More information about the llvm-commits mailing list