Delete the V9 specific findOptimalStorageSize method, inlining it into all callers.
authorChris Lattner <sabre@nondot.org>
Wed, 2 Jun 2004 05:53:25 +0000 (05:53 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 2 Jun 2004 05:53:25 +0000 (05:53 +0000)
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!

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

include/llvm/Target/TargetMachine.h

index cfefe34c56203aa44071e92800299940ce7a510d..119783063677d38433d62914592415446cf5b499 100644 (file)
@@ -71,15 +71,10 @@ public:
   // 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 @@ public:
   ///
   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