Eliminate target name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30071 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2006-09-03 18:44:26 +00:00
parent c4fa386471
commit 07ac914973

View File

@@ -62,18 +62,10 @@ namespace CodeModel {
/// through this interface. /// through this interface.
/// ///
class TargetMachine { class TargetMachine {
const std::string Name;
TargetMachine(const TargetMachine&); // DO NOT IMPLEMENT TargetMachine(const TargetMachine&); // DO NOT IMPLEMENT
void operator=(const TargetMachine&); // DO NOT IMPLEMENT void operator=(const TargetMachine&); // DO NOT IMPLEMENT
protected: // Can only create subclasses... protected: // Can only create subclasses.
TargetMachine(const std::string &name) : Name(name) { }; TargetMachine() { }
/// This constructor is used for targets that support arbitrary TargetData
/// layouts, like the C backend. It initializes the TargetData to match that
/// of the specified module.
///
TargetMachine(const std::string &name, const Module &M);
/// getSubtargetImpl - virtual method implemented by subclasses that returns /// getSubtargetImpl - virtual method implemented by subclasses that returns
/// a reference to that target's TargetSubtarget-derived member variable. /// a reference to that target's TargetSubtarget-derived member variable.
@@ -94,9 +86,6 @@ public:
/// will not be used unless an explicit -march option is used. /// will not be used unless an explicit -march option is used.
static unsigned getJITMatchQuality() { return 0; } static unsigned getJITMatchQuality() { return 0; }
const std::string &getName() const { return Name; }
// Interfaces to the major aspects of target machine information: // Interfaces to the major aspects of target machine information:
// -- Instruction opcode and operand information // -- Instruction opcode and operand information
// -- Pipelines and scheduling information // -- Pipelines and scheduling information
@@ -122,7 +111,7 @@ public:
/// not, return null. This is kept separate from RegInfo until RegInfo has /// not, return null. This is kept separate from RegInfo until RegInfo has
/// details of graph coloring register allocation removed from it. /// details of graph coloring register allocation removed from it.
/// ///
virtual const MRegisterInfo* getRegisterInfo() const { return 0; } virtual const MRegisterInfo *getRegisterInfo() const { return 0; }
/// getJITInfo - If this target supports a JIT, return information for it, /// getJITInfo - If this target supports a JIT, return information for it,
/// otherwise return null. /// otherwise return null.