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

Chris Lattner lattner at cs.uiuc.edu
Wed Jun 2 00:58:01 PDT 2004


Changes in directory llvm/include/llvm/Target:

TargetMachine.h updated: 1.44 -> 1.45

---
Log message:

Delete the V9 specific findOptimalStorageSize method, inlining it into all callers.
Substantially clean up all target implementations by having the OPTIONAL get*Info
methods return a pointer instead of a reference.  This allows us to have default
implementations!


---
Diffs of the changes:  (+6 -12)

Index: llvm/include/llvm/Target/TargetMachine.h
diff -u llvm/include/llvm/Target/TargetMachine.h:1.44 llvm/include/llvm/Target/TargetMachine.h:1.45
--- llvm/include/llvm/Target/TargetMachine.h:1.44	Tue Mar  2 20:12:27 2004
+++ llvm/include/llvm/Target/TargetMachine.h	Wed Jun  2 00:53:25 2004
@@ -71,15 +71,10 @@
   // Interfaces to the major aspects of target machine information:
   // -- Instruction opcode and operand information
   // -- Pipelines and scheduling information
-  // -- Register information
   // -- Stack frame information
-  // -- Cache hierarchy information
-  // -- Machine-level optimization information (peephole only)
   // 
-  virtual const TargetInstrInfo&        getInstrInfo() const = 0;
-  virtual const TargetSchedInfo&        getSchedInfo() const = 0;
-  virtual const TargetRegInfo&          getRegInfo()   const = 0;
-  virtual const TargetFrameInfo&        getFrameInfo() const = 0;
+  virtual const TargetInstrInfo        *getInstrInfo() const { return 0; }
+  virtual const TargetFrameInfo        *getFrameInfo() const { return 0; }
   const TargetData &getTargetData() const { return DataLayout; }
 
   /// getRegisterInfo - If register information is available, return it.  If
@@ -93,11 +88,10 @@
   ///
   virtual TargetJITInfo *getJITInfo() { return 0; }
 
-  // Data storage information.  FIXME, this should be moved out to sparc
-  // specific code.
-  // 
-  virtual unsigned findOptimalStorageSize(const Type* ty) const;
-  
+  // These are deprecated interfaces.
+  virtual const TargetSchedInfo        *getSchedInfo() const { return 0; }
+  virtual const TargetRegInfo          *getRegInfo()   const { return 0; }
+
   /// addPassesToEmitAssembly - Add passes to the specified pass manager to get
   /// assembly langage code emitted.  Typically this will involve several steps
   /// of code generation.  This method should return true if assembly emission





More information about the llvm-commits mailing list