diff options
author | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-03-30 21:12:52 +0000 |
---|---|---|
committer | Jakob Stoklund Olesen <stoklund@2pi.dk> | 2012-03-30 21:12:52 +0000 |
commit | c19f72bd83e8cb2cc31257008ee9d7797dbf3dbb (patch) | |
tree | c7bd20bf0c99fc1aadc1932225299b1ccaebae9f /utils/TableGen/SequenceToOffsetTable.h | |
parent | 0d4e2ea00eac5d51a74a54dd504a8f34580041d7 (diff) | |
download | llvm-c19f72bd83e8cb2cc31257008ee9d7797dbf3dbb.tar.gz llvm-c19f72bd83e8cb2cc31257008ee9d7797dbf3dbb.tar.bz2 llvm-c19f72bd83e8cb2cc31257008ee9d7797dbf3dbb.tar.xz |
Use SequenceToOffsetTable in emitRegisterNameString.
This allows suffix sharing in register names. (AX is a suffix of EAX).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153777 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/SequenceToOffsetTable.h')
-rw-r--r-- | utils/TableGen/SequenceToOffsetTable.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/utils/TableGen/SequenceToOffsetTable.h b/utils/TableGen/SequenceToOffsetTable.h index 09dccbb108..97c764e61d 100644 --- a/utils/TableGen/SequenceToOffsetTable.h +++ b/utils/TableGen/SequenceToOffsetTable.h @@ -21,6 +21,7 @@ #include <algorithm> #include <vector> #include <cassert> +#include <cctype> namespace llvm { @@ -120,6 +121,19 @@ public: } }; +// Helper function for SequenceToOffsetTable<string>. +static inline void printChar(raw_ostream &OS, char C) { + unsigned char UC(C); + if (isalnum(UC) || ispunct(UC)) { + OS << '\''; + if (C == '\\' || C == '\'') + OS << '\\'; + OS << C << '\''; + } else { + OS << unsigned(UC); + } +} + } // end namespace llvm #endif |