diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-06-11 00:28:06 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2011-06-11 00:28:06 +0000 |
commit | b5923db192d2aa938ff3c12aaac87d80ab649625 (patch) | |
tree | 42496fc40a3cdc64a2c2b7406d28bc27f2f856b4 /utils/TableGen/CodeGenTarget.cpp | |
parent | 25255cbe0000abd64194e9e34098243cd689fd47 (diff) | |
download | external_llvm-b5923db192d2aa938ff3c12aaac87d80ab649625.zip external_llvm-b5923db192d2aa938ff3c12aaac87d80ab649625.tar.gz external_llvm-b5923db192d2aa938ff3c12aaac87d80ab649625.tar.bz2 |
Move the list of registers into CodeGenRegBank.
Also move the sub-register index computations from RegisterInfoEmitter
into CodeGenRegBank.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132865 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/CodeGenTarget.cpp')
-rw-r--r-- | utils/TableGen/CodeGenTarget.cpp | 15 |
1 files changed, 1 insertions, 14 deletions
diff --git a/utils/TableGen/CodeGenTarget.cpp b/utils/TableGen/CodeGenTarget.cpp index e337b56..a0c64ff 100644 --- a/utils/TableGen/CodeGenTarget.cpp +++ b/utils/TableGen/CodeGenTarget.cpp @@ -163,19 +163,6 @@ CodeGenRegBank &CodeGenTarget::getRegBank() const { return *RegBank; } -void CodeGenTarget::ReadRegisters() const { - std::vector<Record*> Regs = Records.getAllDerivedDefinitions("Register"); - if (Regs.empty()) - throw std::string("No 'Register' subclasses defined!"); - std::sort(Regs.begin(), Regs.end(), LessRecord()); - - Registers.reserve(Regs.size()); - Registers.assign(Regs.begin(), Regs.end()); - // Assign the enumeration values. - for (unsigned i = 0, e = Registers.size(); i != e; ++i) - Registers[i].EnumValue = i + 1; -} - void CodeGenTarget::ReadRegisterClasses() const { std::vector<Record*> RegClasses = Records.getAllDerivedDefinitions("RegisterClass"); @@ -189,7 +176,7 @@ void CodeGenTarget::ReadRegisterClasses() const { /// getRegisterByName - If there is a register with the specific AsmName, /// return it. const CodeGenRegister *CodeGenTarget::getRegisterByName(StringRef Name) const { - const std::vector<CodeGenRegister> &Regs = getRegisters(); + const std::vector<CodeGenRegister> &Regs = getRegBank().getRegisters(); for (unsigned i = 0, e = Regs.size(); i != e; ++i) { const CodeGenRegister &Reg = Regs[i]; if (Reg.TheDef->getValueAsString("AsmName") == Name) |