diff options
author | Owen Anderson <resistor@mac.com> | 2012-09-11 23:32:17 +0000 |
---|---|---|
committer | Owen Anderson <resistor@mac.com> | 2012-09-11 23:32:17 +0000 |
commit | d2c699706ceae4a118a8dcafbef73b85093e5390 (patch) | |
tree | e000ca9e32f391fae8690032e0b634b074ca9080 /utils/TableGen/CodeGenRegisters.h | |
parent | 2a3fcb382ef43374327b7b7672fe1e1e178041da (diff) | |
download | llvm-d2c699706ceae4a118a8dcafbef73b85093e5390.tar.gz llvm-d2c699706ceae4a118a8dcafbef73b85093e5390.tar.bz2 llvm-d2c699706ceae4a118a8dcafbef73b85093e5390.tar.xz |
Compute a map from register names to registers, rather than scanning the list of registers every time we want to look up a register by name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163659 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/CodeGenRegisters.h')
-rw-r--r-- | utils/TableGen/CodeGenRegisters.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/utils/TableGen/CodeGenRegisters.h b/utils/TableGen/CodeGenRegisters.h index bd748ca62e..e411074156 100644 --- a/utils/TableGen/CodeGenRegisters.h +++ b/utils/TableGen/CodeGenRegisters.h @@ -440,6 +440,7 @@ namespace llvm { // Registers. std::vector<CodeGenRegister*> Registers; + StringMap<CodeGenRegister*> RegistersByName; DenseMap<Record*, CodeGenRegister*> Def2Reg; unsigned NumNativeRegUnits; @@ -522,6 +523,9 @@ namespace llvm { } const std::vector<CodeGenRegister*> &getRegisters() { return Registers; } + const StringMap<CodeGenRegister*> &getRegistersByName() { + return RegistersByName; + } // Find a register from its Record def. CodeGenRegister *getReg(Record*); |