Move variables and methods which need PPC{32,64}* distinction to subclasses
llvm-svn: 15858
This commit is contained in:
		
							parent
							
								
									ba7fe16dbf
								
							
						
					
					
						commit
						38c61506a8
					
				| 
						 | 
					@ -7,7 +7,7 @@
 | 
				
			||||||
// 
 | 
					// 
 | 
				
			||||||
//===----------------------------------------------------------------------===//
 | 
					//===----------------------------------------------------------------------===//
 | 
				
			||||||
// 
 | 
					// 
 | 
				
			||||||
// This file declares the PowerPC specific subclass of TargetMachine.
 | 
					// This file declares the PowerPC-specific subclass of TargetMachine.
 | 
				
			||||||
//
 | 
					//
 | 
				
			||||||
//===----------------------------------------------------------------------===//
 | 
					//===----------------------------------------------------------------------===//
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -15,12 +15,9 @@
 | 
				
			||||||
#define POWERPC_TARGETMACHINE_H
 | 
					#define POWERPC_TARGETMACHINE_H
 | 
				
			||||||
 | 
					
 | 
				
			||||||
#include "PowerPCFrameInfo.h"
 | 
					#include "PowerPCFrameInfo.h"
 | 
				
			||||||
#include "PowerPCInstrInfo.h"
 | 
					 | 
				
			||||||
#include "PowerPCJITInfo.h"
 | 
					#include "PowerPCJITInfo.h"
 | 
				
			||||||
#include "llvm/Target/TargetMachine.h"
 | 
					#include "llvm/Target/TargetMachine.h"
 | 
				
			||||||
#include "llvm/Target/TargetFrameInfo.h"
 | 
					 | 
				
			||||||
#include "llvm/PassManager.h"
 | 
					#include "llvm/PassManager.h"
 | 
				
			||||||
#include <set>
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace llvm {
 | 
					namespace llvm {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -28,20 +25,15 @@ class GlobalValue;
 | 
				
			||||||
class IntrinsicLowering;
 | 
					class IntrinsicLowering;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class PowerPCTargetMachine : public TargetMachine {
 | 
					class PowerPCTargetMachine : public TargetMachine {
 | 
				
			||||||
  PowerPCInstrInfo InstrInfo;
 | 
					 | 
				
			||||||
  PowerPCFrameInfo FrameInfo;
 | 
					  PowerPCFrameInfo FrameInfo;
 | 
				
			||||||
  PowerPCJITInfo JITInfo;
 | 
					  PowerPCJITInfo JITInfo;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
protected:
 | 
					protected:
 | 
				
			||||||
  PowerPCTargetMachine(const std::string &name, IntrinsicLowering *IL,
 | 
					  PowerPCTargetMachine(const std::string &name, IntrinsicLowering *IL,
 | 
				
			||||||
                       const TargetData &TD, const PowerPCFrameInfo &TFI,
 | 
					                       const TargetData &TD, const PowerPCFrameInfo &TFI,
 | 
				
			||||||
                       const PowerPCJITInfo &TJI, bool is64b);
 | 
					                       const PowerPCJITInfo &TJI);
 | 
				
			||||||
public:
 | 
					public:
 | 
				
			||||||
  virtual const PowerPCInstrInfo *getInstrInfo() const { return &InstrInfo; }
 | 
					 | 
				
			||||||
  virtual const TargetFrameInfo  *getFrameInfo() const { return &FrameInfo; }
 | 
					  virtual const TargetFrameInfo  *getFrameInfo() const { return &FrameInfo; }
 | 
				
			||||||
  virtual const MRegisterInfo *getRegisterInfo() const {
 | 
					 | 
				
			||||||
    return &InstrInfo.getRegisterInfo();
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  virtual TargetJITInfo *getJITInfo() {
 | 
					  virtual TargetJITInfo *getJITInfo() {
 | 
				
			||||||
    return &JITInfo;
 | 
					    return &JITInfo;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
| 
						 | 
					@ -49,11 +41,6 @@ public:
 | 
				
			||||||
  static unsigned getJITMatchQuality();
 | 
					  static unsigned getJITMatchQuality();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  virtual bool addPassesToEmitAssembly(PassManager &PM, std::ostream &Out);
 | 
					  virtual bool addPassesToEmitAssembly(PassManager &PM, std::ostream &Out);
 | 
				
			||||||
 | 
					 | 
				
			||||||
  // Two shared sets between the instruction selector and the printer allow for
 | 
					 | 
				
			||||||
  // correct linkage on Darwin
 | 
					 | 
				
			||||||
  std::set<GlobalValue*> CalledFunctions;
 | 
					 | 
				
			||||||
  std::set<GlobalValue*> AddressTaken;
 | 
					 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
} // end namespace llvm
 | 
					} // end namespace llvm
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue