13#ifndef LLVM_ASMPARSER_LLLEXER_H
14#define LLVM_ASMPARSER_LLLEXER_H
32 enum class ErrorPriority {
39 ErrorPriority Priority = ErrorPriority::None;
53 Type *TyVal =
nullptr;
59 bool IgnoreColonInIdentifiers =
false;
66 return CurKind = LexToken();
72 const std::string &
getStrVal()
const {
return StrVal; }
79 IgnoreColonInIdentifiers = val;
85 Error(ErrorLoc, Msg, ErrorPriority::Parser);
97 void SkipLineComment();
116 uint64_t atoull(
const char *Buffer,
const char *
End);
117 uint64_t HexIntToVal(
const char *Buffer,
const char *
End);
118 void HexToIntPair(
const char *Buffer,
const char *
End,
uint64_t Pair[2]);
119 void FP80HexToIntPair(
const char *Buffer,
const char *
End,
124 void LexError(
LocTy ErrorLoc,
const Twine &Msg) {
125 Error(ErrorLoc, Msg, ErrorPriority::Lexer);
127 void LexError(
const Twine &Msg) { LexError(
getLoc(), Msg); }
This file declares a class to represent arbitrary precision floating point values and provide a varie...
This file implements the APSInt class, which is a simple class that represents an arbitrary sized int...
An arbitrary precision integer that knows its signedness.
Lightweight error class with error context and mandatory checking.
bool ParseError(LocTy ErrorLoc, const Twine &Msg)
unsigned getUIntVal() const
lltok::Kind getKind() const
const std::string & getStrVal() const
void Warning(const Twine &Msg) const
const APSInt & getAPSIntVal() const
void setIgnoreColonInIdentifiers(bool val)
const APFloat & getAPFloatVal() const
bool ParseError(const Twine &Msg)
This is an important class for using LLVM in a threaded context.
Instances of this class encapsulate one diagnostic report, allowing printing to a raw_ostream as a ca...
Represents a location in source code.
static SMLoc getFromPointer(const char *Ptr)
This owns the files read by a parser, handles include stacks, and handles diagnostic wrangling.
StringRef - Represent a constant reference to a string, i.e.
Twine - A lightweight data structure for efficiently representing the concatenation of temporary valu...
The instances of the Type class are immutable: once they are created, they are never changed.
@ C
The default llvm calling convention, compatible with C.
This is an optimization pass for GlobalISel generic memory operations.
std::tuple< const DIScope *, const DIScope *, const DILocalVariable * > VarID
A unique key that represents a debug variable.