#include "llvm/MC/MCParser/AsmLexer.h"
#include "llvm/ADT/APInt.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringRef.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/MC/MCAsmInfo.h"
#include "llvm/MC/MCParser/MCAsmLexer.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/SMLoc.h"
#include "llvm/Support/SaveAndRestore.h"
#include <cassert>
#include <cctype>
#include <cstdio>
#include <cstring>
#include <string>
#include <tuple>
#include <utility>
usingnamespacellvm;
AsmLexer::AsmLexer(const MCAsmInfo &MAI) : … { … }
AsmLexer::~AsmLexer() = default;
void AsmLexer::setBuffer(StringRef Buf, const char *ptr,
bool EndStatementAtEOF) { … }
AsmToken AsmLexer::ReturnError(const char *Loc, const std::string &Msg) { … }
int AsmLexer::getNextChar() { … }
int AsmLexer::peekNextChar() { … }
AsmToken AsmLexer::LexFloatLiteral() { … }
AsmToken AsmLexer::LexHexFloatLiteral(bool NoIntDigits) { … }
static bool isIdentifierChar(char C, bool AllowAt, bool AllowHash) { … }
AsmToken AsmLexer::LexIdentifier() { … }
AsmToken AsmLexer::LexSlash() { … }
AsmToken AsmLexer::LexLineComment() { … }
static void SkipIgnoredIntegerSuffix(const char *&CurPtr) { … }
static unsigned doHexLookAhead(const char *&CurPtr, unsigned DefaultRadix,
bool LexHex) { … }
static const char *findLastDigit(const char *CurPtr, unsigned DefaultRadix) { … }
static AsmToken intToken(StringRef Ref, APInt &Value) { … }
static std::string radixName(unsigned Radix) { … }
AsmToken AsmLexer::LexDigit() { … }
AsmToken AsmLexer::LexSingleQuote() { … }
AsmToken AsmLexer::LexQuote() { … }
StringRef AsmLexer::LexUntilEndOfStatement() { … }
StringRef AsmLexer::LexUntilEndOfLine() { … }
size_t AsmLexer::peekTokens(MutableArrayRef<AsmToken> Buf,
bool ShouldSkipSpace) { … }
bool AsmLexer::isAtStartOfComment(const char *Ptr) { … }
bool AsmLexer::isAtStatementSeparator(const char *Ptr) { … }
AsmToken AsmLexer::LexToken() { … }