summaryrefslogtreecommitdiffstats
path: root/gnu/llvm/lib/MC/MCParser/MCAsmLexer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/llvm/lib/MC/MCParser/MCAsmLexer.cpp')
-rw-r--r--gnu/llvm/lib/MC/MCParser/MCAsmLexer.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/llvm/lib/MC/MCParser/MCAsmLexer.cpp b/gnu/llvm/lib/MC/MCParser/MCAsmLexer.cpp
new file mode 100644
index 00000000000..e891bd2c624
--- /dev/null
+++ b/gnu/llvm/lib/MC/MCParser/MCAsmLexer.cpp
@@ -0,0 +1,36 @@
+//===-- MCAsmLexer.cpp - Abstract Asm Lexer Interface ---------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#include "llvm/MC/MCParser/MCAsmLexer.h"
+#include "llvm/Support/SourceMgr.h"
+
+using namespace llvm;
+
+MCAsmLexer::MCAsmLexer() : TokStart(nullptr), SkipSpace(true) {
+ CurTok.emplace_back(AsmToken::Error, StringRef());
+}
+
+MCAsmLexer::~MCAsmLexer() {
+}
+
+SMLoc MCAsmLexer::getLoc() const {
+ return SMLoc::getFromPointer(TokStart);
+}
+
+SMLoc AsmToken::getLoc() const {
+ return SMLoc::getFromPointer(Str.data());
+}
+
+SMLoc AsmToken::getEndLoc() const {
+ return SMLoc::getFromPointer(Str.data() + Str.size());
+}
+
+SMRange AsmToken::getLocRange() const {
+ return SMRange(getLoc(), getEndLoc());
+}