Move variables and methods which need PPC{32,64}* distinction to subclasses

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15858 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Misha Brukman
2004-08-17 05:08:44 +00:00
parent 66aa3e0e8b
commit f2f8cfb945

View File

@@ -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