summaryrefslogtreecommitdiffstats
path: root/tools/llvm-mc/AsmLexer.h
diff options
context:
space:
mode:
authored <ed@FreeBSD.org>2009-06-27 10:44:33 +0000
committered <ed@FreeBSD.org>2009-06-27 10:44:33 +0000
commitcf5cd875b51255602afaed29deb636b66b295671 (patch)
tree9794dc36f22f2a2b3f8063829d8a9b3a7794acc8 /tools/llvm-mc/AsmLexer.h
parent5c1b5c146f3df07c75174aff06c3bb0968f6857e (diff)
downloadFreeBSD-src-cf5cd875b51255602afaed29deb636b66b295671.zip
FreeBSD-src-cf5cd875b51255602afaed29deb636b66b295671.tar.gz
Import LLVM r74383.
Diffstat (limited to 'tools/llvm-mc/AsmLexer.h')
-rw-r--r--tools/llvm-mc/AsmLexer.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/tools/llvm-mc/AsmLexer.h b/tools/llvm-mc/AsmLexer.h
index 23c5f85..19a1b38 100644
--- a/tools/llvm-mc/AsmLexer.h
+++ b/tools/llvm-mc/AsmLexer.h
@@ -42,7 +42,7 @@ namespace asmtok {
Plus, Minus, Tilde,
Slash, // '/'
LParen, RParen,
- Star, Comma, Dollar,
+ Star, Comma, Dollar, Equal,
Pipe, Caret, Amp, Exclaim,
Percent, LessLess, GreaterGreater
@@ -55,20 +55,24 @@ class AsmLexer {
const char *CurPtr;
const MemoryBuffer *CurBuf;
+ // A llvm::StringSet<>, which provides uniqued and null-terminated strings.
+ void *TheStringSet;
// Information about the current token.
const char *TokStart;
asmtok::TokKind CurKind;
- std::string CurStrVal; // This is valid for Identifier.
+ const char *CurStrVal; // This is valid for Identifier.
int64_t CurIntVal;
/// CurBuffer - This is the current buffer index we're lexing from as managed
/// by the SourceMgr object.
int CurBuffer;
+ void operator=(const AsmLexer&); // DO NOT IMPLEMENT
+ AsmLexer(const AsmLexer&); // DO NOT IMPLEMENT
public:
AsmLexer(SourceMgr &SrcMgr);
- ~AsmLexer() {}
+ ~AsmLexer();
asmtok::TokKind Lex() {
return CurKind = LexToken();
@@ -78,7 +82,7 @@ public:
bool is(asmtok::TokKind K) const { return CurKind == K; }
bool isNot(asmtok::TokKind K) const { return CurKind != K; }
- const std::string &getCurStrVal() const {
+ const char *getCurStrVal() const {
assert((CurKind == asmtok::Identifier || CurKind == asmtok::Register ||
CurKind == asmtok::String) &&
"This token doesn't have a string value");
OpenPOWER on IntegriCloud