CIRCT 24.0.0git
Loading...
Searching...
No Matches
FIRLexer.cpp File Reference
#include "FIRLexer.h"
#include "mlir/IR/Diagnostics.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/StringSwitch.h"
#include "llvm/Support/SourceMgr.h"
#include "llvm/Support/raw_ostream.h"
#include "FIRTokenKinds.def"
Include dependency graph for FIRLexer.cpp:

Go to the source code of this file.

Macros

#define isdigit(x)
#define isalpha(x)
#define TOK_KEYWORD(SPELLING)
#define TOK_MARKER(X)
#define TOK_IDENTIFIER(NAME)
#define TOK_LITERAL(NAME)
#define TOK_PUNCTUATION(NAME, SPELLING)
#define TOK_LPKEYWORD(SPELLING)
#define TOK_LPKEYWORD_PRIM(SPELLING, CLASS, NUMOPERANDS, NUMATTRIBUTES, VERSION, FEATURE)
#define TOK_LESSKEYWORD(SPELLING)
#define TOK_LPKEYWORD(SPELLING)
#define TOK_MARKER(X)
#define TOK_IDENTIFIER(NAME)
#define TOK_LITERAL(NAME)
#define TOK_PUNCTUATION(NAME, SPELLING)
#define TOK_KEYWORD(SPELLING)
#define TOK_LPKEYWORD_PRIM(SPELLING, CLASS, NUMOPERANDS, NUMATTRIBUTES, VERSION, FEATURE)
#define TOK_LESSKEYWORD(SPELLING)
#define TOK_LESSKEYWORD(SPELLING)
#define TOK_MARKER(X)
#define TOK_IDENTIFIER(NAME)
#define TOK_LITERAL(NAME)
#define TOK_PUNCTUATION(NAME, SPELLING)
#define TOK_KEYWORD(SPELLING)
#define TOK_LPKEYWORD(SPELLING)
#define TOK_LPKEYWORD_PRIM(SPELLING, CLASS, NUMOPERANDS, NUMATTRIBUTES, VERSION, FEATURE)
#define TOK_KEYWORD(SPELLING)
#define TOK_MARKER(X)
#define TOK_IDENTIFIER(NAME)
#define TOK_LITERAL(NAME)
#define TOK_PUNCTUATION(NAME, SPELLING)
#define TOK_LPKEYWORD(SPELLING)
#define TOK_LPKEYWORD_PRIM(SPELLING, CLASS, NUMOPERANDS, NUMATTRIBUTES, VERSION, FEATURE)
#define TOK_LESSKEYWORD(SPELLING)

Functions

static StringAttr getMainBufferNameIdentifier (const llvm::SourceMgr &sourceMgr, MLIRContext *context)

Macro Definition Documentation

◆ isalpha

#define isalpha ( x)
Value:
DO_NOT_USE_SLOW_CTYPE_FUNCTIONS

Definition at line 27 of file FIRLexer.cpp.

Referenced by constructUniqueSymbol().

◆ isdigit

◆ TOK_IDENTIFIER [1/4]

#define TOK_IDENTIFIER ( NAME)

◆ TOK_IDENTIFIER [2/4]

#define TOK_IDENTIFIER ( NAME)

◆ TOK_IDENTIFIER [3/4]

#define TOK_IDENTIFIER ( NAME)

◆ TOK_IDENTIFIER [4/4]

#define TOK_IDENTIFIER ( NAME)

◆ TOK_KEYWORD [1/4]

#define TOK_KEYWORD ( SPELLING)
Value:
.Case(#SPELLING, FIRToken::kw_##SPELLING)

◆ TOK_KEYWORD [2/4]

#define TOK_KEYWORD ( SPELLING)
Value:
case kw_##SPELLING: \
return true;

◆ TOK_KEYWORD [3/4]

#define TOK_KEYWORD ( SPELLING)

◆ TOK_KEYWORD [4/4]

#define TOK_KEYWORD ( SPELLING)

◆ TOK_LESSKEYWORD [1/4]

#define TOK_LESSKEYWORD ( SPELLING)
Value:
.Case(#SPELLING, FIRToken::langle_##SPELLING)

◆ TOK_LESSKEYWORD [2/4]

#define TOK_LESSKEYWORD ( SPELLING)

◆ TOK_LESSKEYWORD [3/4]

#define TOK_LESSKEYWORD ( SPELLING)

◆ TOK_LESSKEYWORD [4/4]

#define TOK_LESSKEYWORD ( SPELLING)

◆ TOK_LITERAL [1/4]

#define TOK_LITERAL ( NAME)

◆ TOK_LITERAL [2/4]

#define TOK_LITERAL ( NAME)

◆ TOK_LITERAL [3/4]

#define TOK_LITERAL ( NAME)

◆ TOK_LITERAL [4/4]

#define TOK_LITERAL ( NAME)

◆ TOK_LPKEYWORD [1/4]

#define TOK_LPKEYWORD ( SPELLING)
Value:
.Case(#SPELLING, FIRToken::lp_##SPELLING)

◆ TOK_LPKEYWORD [2/4]

#define TOK_LPKEYWORD ( SPELLING)

◆ TOK_LPKEYWORD [3/4]

#define TOK_LPKEYWORD ( SPELLING)

◆ TOK_LPKEYWORD [4/4]

#define TOK_LPKEYWORD ( SPELLING)

◆ TOK_LPKEYWORD_PRIM [1/4]

#define TOK_LPKEYWORD_PRIM ( SPELLING,
CLASS,
NUMOPERANDS,
NUMATTRIBUTES,
VERSION,
FEATURE )
Value:
TOK_LPKEYWORD(SPELLING)

◆ TOK_LPKEYWORD_PRIM [2/4]

#define TOK_LPKEYWORD_PRIM ( SPELLING,
CLASS,
NUMOPERANDS,
NUMATTRIBUTES,
VERSION,
FEATURE )
Value:
TOK_LPKEYWORD(SPELLING)

◆ TOK_LPKEYWORD_PRIM [3/4]

#define TOK_LPKEYWORD_PRIM ( SPELLING,
CLASS,
NUMOPERANDS,
NUMATTRIBUTES,
VERSION,
FEATURE )
Value:
TOK_LPKEYWORD(SPELLING)

◆ TOK_LPKEYWORD_PRIM [4/4]

#define TOK_LPKEYWORD_PRIM ( SPELLING,
CLASS,
NUMOPERANDS,
NUMATTRIBUTES,
VERSION,
FEATURE )
Value:
TOK_LPKEYWORD(SPELLING)

◆ TOK_MARKER [1/4]

#define TOK_MARKER ( X)

◆ TOK_MARKER [2/4]

#define TOK_MARKER ( X)

◆ TOK_MARKER [3/4]

#define TOK_MARKER ( X)

◆ TOK_MARKER [4/4]

#define TOK_MARKER ( X)

◆ TOK_PUNCTUATION [1/4]

#define TOK_PUNCTUATION ( NAME,
SPELLING )

◆ TOK_PUNCTUATION [2/4]

#define TOK_PUNCTUATION ( NAME,
SPELLING )

◆ TOK_PUNCTUATION [3/4]

#define TOK_PUNCTUATION ( NAME,
SPELLING )

◆ TOK_PUNCTUATION [4/4]

#define TOK_PUNCTUATION ( NAME,
SPELLING )

Function Documentation

◆ getMainBufferNameIdentifier()

StringAttr getMainBufferNameIdentifier ( const llvm::SourceMgr & sourceMgr,
MLIRContext * context )
static

Definition at line 150 of file FIRLexer.cpp.

References context.