[llvm-commits] CVS: llvm/include/llvm/CodeGen/MachineFunction.h

Chris Lattner lattner at cs.uiuc.edu
Sun Jan 12 18:17:01 PST 2003


Changes in directory llvm/include/llvm/CodeGen:

MachineFunction.h updated: 1.24 -> 1.25

---
Log message:

* Add a constant pool to hold per-function constants which must be spilled to memory


---
Diffs of the changes:

Index: llvm/include/llvm/CodeGen/MachineFunction.h
diff -u llvm/include/llvm/CodeGen/MachineFunction.h:1.24 llvm/include/llvm/CodeGen/MachineFunction.h:1.25
--- llvm/include/llvm/CodeGen/MachineFunction.h:1.24	Sat Dec 28 15:08:25 2002
+++ llvm/include/llvm/CodeGen/MachineFunction.h	Sun Jan 12 18:16:10 2003
@@ -21,8 +21,9 @@
 class SSARegMap;
 class MachineFunctionInfo;
 class MachineFrameInfo;
+class MachineConstantPool;
 
-Pass *createMachineCodeConstructionPass(TargetMachine &Target);
+Pass *createMachineCodeConstructionPass(TargetMachine &TM);
 Pass *createMachineCodeDestructionPass();
 Pass *createMachineFunctionPrinterPass();
 
@@ -42,8 +43,11 @@
   // Keep track of objects allocated on the stack.
   MachineFrameInfo *FrameInfo;
 
+  // Keep track of constants which are spilled to memory
+  MachineConstantPool *ConstantPool;
+
 public:
-  MachineFunction(const Function *Fn, const TargetMachine& target);
+  MachineFunction(const Function *Fn, const TargetMachine &TM);
   ~MachineFunction();
 
   /// getFunction - Return the LLVM function that this machine code represents
@@ -66,6 +70,10 @@
   ///
   MachineFrameInfo *getFrameInfo() const { return FrameInfo; }
 
+  /// getConstantPool - Return the constant pool object for the current
+  /// function.
+  MachineConstantPool *getConstantPool() const { return ConstantPool; }
+
   /// MachineFunctionInfo - Keep track of various per-function pieces of
   /// information for the sparc backend.
   ///
@@ -90,8 +98,7 @@
   //                for a given Method.
   // destruct()  -- Destroy the MachineFunction object
   // 
-  static MachineFunction& construct(const Function *Fn,
-                                    const TargetMachine &target);
+  static MachineFunction& construct(const Function *F, const TargetMachine &TM);
   static void destruct(const Function *F);
   static MachineFunction& get(const Function *F);
 





More information about the llvm-commits mailing list