class MCAsmParserExtension

Declaration

class MCAsmParserExtension { /* full declaration omitted */ };

Description

Generic interface for extending the MCAsmParser, which is implemented by target and object file assembly parser implementations.

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:24

Member Variables

private llvm::MCAsmParser* Parser
protected bool BracketExpressionsSupported = false

Method Overview

  • public bool Error(llvm::SMLoc L, const llvm::Twine & Msg, llvm::SMRange Range = llvm::SMRange())
  • protected template <typename T, bool (T::*)(llvm::StringRef, llvm::SMLoc) Handler>static bool HandleDirective(llvm::MCAsmParserExtension * Target, llvm::StringRef Directive, llvm::SMLoc DirectiveLoc)
  • public bool HasBracketExpressions() const
  • public virtual void Initialize(llvm::MCAsmParser & Parser)
  • public const llvm::AsmToken & Lex()
  • public MCAsmParserExtension(const llvm::MCAsmParserExtension &)
  • protected MCAsmParserExtension()
  • public void Note(llvm::SMLoc L, const llvm::Twine & Msg)
  • public bool ParseDirectiveCGProfile(llvm::StringRef, llvm::SMLoc)
  • public bool TokError(const llvm::Twine & Msg)
  • public bool Warning(llvm::SMLoc L, const llvm::Twine & Msg)
  • public bool addErrorSuffix(const llvm::Twine & Suffix)
  • public bool check(bool P, llvm::SMLoc Loc, const llvm::Twine & Msg)
  • public bool check(bool P, const llvm::Twine & Msg)
  • public llvm::MCContext & getContext()
  • public const llvm::MCAsmLexer & getLexer() const
  • public llvm::MCAsmLexer & getLexer()
  • public llvm::MCAsmParser & getParser()
  • public const llvm::MCAsmParser & getParser() const
  • public llvm::SourceMgr & getSourceManager()
  • public llvm::MCStreamer & getStreamer()
  • public const llvm::AsmToken & getTok()
  • public bool parseEOL()
  • public bool parseMany(function_ref<bool ()> parseOne, bool hasComma = true)
  • public bool parseOptionalToken(AsmToken::TokenKind T)
  • public bool parseToken(AsmToken::TokenKind T, const llvm::Twine & Msg = "unexpected token")
  • public virtual ~MCAsmParserExtension()

Methods

bool Error(llvm::SMLoc L,
           const llvm::Twine& Msg,
           llvm::SMRange Range = llvm::SMRange())

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:73

Parameters

llvm::SMLoc L
const llvm::Twine& Msg
llvm::SMRange Range = llvm::SMRange()

template <typename T,
          bool (T::*)(llvm::StringRef,
                      llvm::SMLoc) Handler>
static bool HandleDirective(
    llvm::MCAsmParserExtension* Target,
    llvm::StringRef Directive,
    llvm::SMLoc DirectiveLoc)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:32

Templates

T
bool (T::*)(llvm::StringRef, llvm::SMLoc) Handler

Parameters

llvm::MCAsmParserExtension* Target
llvm::StringRef Directive
llvm::SMLoc DirectiveLoc

bool HasBracketExpressions() const

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:115

virtual void Initialize(llvm::MCAsmParser& Parser)

Description

Initialize the extension for parsing using the given \p Parser. The extension should use the AsmParser interfaces to register its parsing routines.

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:49

Parameters

llvm::MCAsmParser& Parser

const llvm::AsmToken& Lex()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:85

MCAsmParserExtension(
    const llvm::MCAsmParserExtension&)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:42

Parameters

const llvm::MCAsmParserExtension&

MCAsmParserExtension()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:28

void Note(llvm::SMLoc L, const llvm::Twine& Msg)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:77

Parameters

llvm::SMLoc L
const llvm::Twine& Msg

bool ParseDirectiveCGProfile(llvm::StringRef,
                             llvm::SMLoc)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:101

Parameters

llvm::StringRef
llvm::SMLoc

bool TokError(const llvm::Twine& Msg)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:81

Parameters

const llvm::Twine& Msg

bool Warning(llvm::SMLoc L,
             const llvm::Twine& Msg)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:69

Parameters

llvm::SMLoc L
const llvm::Twine& Msg

bool addErrorSuffix(const llvm::Twine& Suffix)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:111

Parameters

const llvm::Twine& Suffix

bool check(bool P,
           llvm::SMLoc Loc,
           const llvm::Twine& Msg)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:107

Parameters

bool P
llvm::SMLoc Loc
const llvm::Twine& Msg

bool check(bool P, const llvm::Twine& Msg)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:103

Parameters

bool P
const llvm::Twine& Msg

llvm::MCContext& getContext()

Description

@ {

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:54

const llvm::MCAsmLexer& getLexer() const

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:57

llvm::MCAsmLexer& getLexer()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:56

llvm::MCAsmParser& getParser()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:61

const llvm::MCAsmParser& getParser() const

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:62

llvm::SourceMgr& getSourceManager()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:66

llvm::MCStreamer& getStreamer()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:67

const llvm::AsmToken& getTok()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:86

bool parseEOL()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:91

bool parseMany(function_ref<bool()> parseOne,
               bool hasComma = true)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:93

Parameters

function_ref<bool()> parseOne
bool hasComma = true

bool parseOptionalToken(AsmToken::TokenKind T)

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:97

Parameters

AsmToken::TokenKind T

bool parseToken(
    AsmToken::TokenKind T,
    const llvm::Twine& Msg = "unexpected token")

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:87

Parameters

AsmToken::TokenKind T
const llvm::Twine& Msg = "unexpected token"

virtual ~MCAsmParserExtension()

Declared at: llvm/include/llvm/MC/MCParser/MCAsmParserExtension.h:44