summaryrefslogtreecommitdiff
path: root/utils/TableGen
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2006-05-18 00:08:46 +0000
committerEvan Cheng <evan.cheng@apple.com>2006-05-18 00:08:46 +0000
commit764811f1452808ff8a6d84f4ec2637355356e22e (patch)
treeb073e82edf881b69641541a515ac90e7a83411bd /utils/TableGen
parentf0dee9b36a4a9a9bd14566f8ddae27be40facbe7 (diff)
downloadllvm-764811f1452808ff8a6d84f4ec2637355356e22e.tar.gz
llvm-764811f1452808ff8a6d84f4ec2637355356e22e.tar.bz2
llvm-764811f1452808ff8a6d84f4ec2637355356e22e.tar.xz
Don't generate getCalleeSaveReg and getCalleeSaveRegClasses anymore.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28376 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen')
-rw-r--r--utils/TableGen/CodeGenTarget.cpp3
-rw-r--r--utils/TableGen/CodeGenTarget.h5
-rw-r--r--utils/TableGen/RegisterInfoEmitter.cpp32
3 files changed, 0 insertions, 40 deletions
diff --git a/utils/TableGen/CodeGenTarget.cpp b/utils/TableGen/CodeGenTarget.cpp
index 10ec6fec13..30198fce36 100644
--- a/utils/TableGen/CodeGenTarget.cpp
+++ b/utils/TableGen/CodeGenTarget.cpp
@@ -108,9 +108,6 @@ CodeGenTarget::CodeGenTarget() {
if (Targets.size() != 1)
throw std::string("ERROR: Multiple subclasses of Target defined!");
TargetRec = Targets[0];
-
- // Read in all of the CalleeSavedRegisters.
- CalleeSavedRegisters =TargetRec->getValueAsListOfDefs("CalleeSavedRegisters");
}
diff --git a/utils/TableGen/CodeGenTarget.h b/utils/TableGen/CodeGenTarget.h
index f1f13fabd9..dd58d929f8 100644
--- a/utils/TableGen/CodeGenTarget.h
+++ b/utils/TableGen/CodeGenTarget.h
@@ -42,7 +42,6 @@ std::string getEnumName(MVT::ValueType T);
///
class CodeGenTarget {
Record *TargetRec;
- std::vector<Record*> CalleeSavedRegisters;
mutable std::map<std::string, CodeGenInstruction> Instructions;
mutable std::vector<CodeGenRegister> Registers;
@@ -58,10 +57,6 @@ public:
Record *getTargetRecord() const { return TargetRec; }
const std::string &getName() const;
- const std::vector<Record*> &getCalleeSavedRegisters() const {
- return CalleeSavedRegisters;
- }
-
/// getInstructionSet - Return the InstructionSet object.
///
Record *getInstructionSet() const;
diff --git a/utils/TableGen/RegisterInfoEmitter.cpp b/utils/TableGen/RegisterInfoEmitter.cpp
index 51b8842136..0c97fafc20 100644
--- a/utils/TableGen/RegisterInfoEmitter.cpp
+++ b/utils/TableGen/RegisterInfoEmitter.cpp
@@ -59,8 +59,6 @@ void RegisterInfoEmitter::runHeader(std::ostream &OS) {
OS << "struct " << ClassName << " : public MRegisterInfo {\n"
<< " " << ClassName
<< "(int CallFrameSetupOpcode = -1, int CallFrameDestroyOpcode = -1);\n"
- << " const unsigned* getCalleeSaveRegs() const;\n"
- << " const TargetRegisterClass* const *getCalleeSaveRegClasses() const;\n"
<< " int getDwarfRegNum(unsigned RegNum) const;\n"
<< "};\n\n";
@@ -333,36 +331,6 @@ void RegisterInfoEmitter::run(std::ostream &OS) {
<< ", RegisterClasses, RegisterClasses+" << RegisterClasses.size() <<",\n "
<< " CallFrameSetupOpcode, CallFrameDestroyOpcode) {}\n\n";
- // Emit the getCalleeSaveRegs method.
- OS << "const unsigned* " << ClassName << "::getCalleeSaveRegs() const {\n"
- << " static const unsigned CalleeSaveRegs[] = {\n ";
-
- const std::vector<Record*> &CSR = Target.getCalleeSavedRegisters();
- for (unsigned i = 0, e = CSR.size(); i != e; ++i)
- OS << getQualifiedName(CSR[i]) << ", ";
- OS << " 0\n };\n return CalleeSaveRegs;\n}\n\n";
-
- // Emit information about the callee saved register classes.
- OS << "const TargetRegisterClass* const*\n" << ClassName
- << "::getCalleeSaveRegClasses() const {\n"
- << " static const TargetRegisterClass * const "
- << "CalleeSaveRegClasses[] = {\n ";
-
- for (unsigned i = 0, e = CSR.size(); i != e; ++i) {
- Record *R = CSR[i];
- std::multimap<Record*, const CodeGenRegisterClass*>::iterator I, E;
- tie(I, E) = RegClassesBelongedTo.equal_range(R);
- if (I == E)
- throw "Callee saved register '" + R->getName() +
- "' must belong to a register class for spilling.\n";
- const CodeGenRegisterClass *RC = (I++)->second;
- for (; I != E; ++I)
- if (RC->SpillSize < I->second->SpillSize)
- RC = I->second;
- OS << "&" << getQualifiedName(RC->TheDef) << "RegClass, ";
- }
- OS << " 0\n };\n return CalleeSaveRegClasses;\n}\n\n";
-
// Emit information about the dwarf register numbers.
OS << "int " << ClassName << "::getDwarfRegNum(unsigned RegNum) const {\n";
OS << " static const int DwarfRegNums[] = { -1, // NoRegister";