LLVM: llvm::remarks::BitstreamRemarkParserHelper Class Reference (original) (raw)

Helper to parse a REMARK_BLOCK for a bitstream remark container. More...

#include "[Remarks/BitstreamRemarkParser.h](BitstreamRemarkParser%5F8h%5Fsource.html)"

Public Member Functions
BitstreamRemarkParserHelper (BitstreamCursor &Stream)
Error parseNext ()
Clear helper state and parse next remark block.
Public Member Functions inherited from llvm::remarks::BitstreamBlockParserHelper< BitstreamRemarkParserHelper >
Error parseBlock ()
Enter, parse, and leave this bitstream block.
Public Member Functions inherited from llvm::remarks::BitstreamBlockParserHelperBase
BitstreamBlockParserHelperBase (BitstreamCursor &Stream, unsigned BlockID, StringRef BlockName)
template<typename... Ts>
Error error (char const *Fmt, const Ts &...Vals)
Error expectBlock ()
Public Attributes
std::optional< uint8_t > Type
The parsed content: depending on the remark, some fields might be empty.
std::optional< uint64_t > RemarkNameIdx
std::optional< uint64_t > PassNameIdx
std::optional< uint64_t > FunctionNameIdx
std::optional< uint64_t > Hotness
std::optional< RemarkLoc > Loc
SmallVector< Argument, 8 > Args
Protected Member Functions
Error parseRecord (unsigned Code)
Error handleRecord ()
Protected Member Functions inherited from llvm::remarks::BitstreamBlockParserHelper< BitstreamRemarkParserHelper >
BitstreamBlockParserHelperBase (BitstreamCursor &Stream, unsigned BlockID, StringRef BlockName)
BitstreamRemarkParserHelper & derived ()
Error parseRecord (unsigned Code)=delete
Parse a record and fill in the fields in the parser.
Error parseSubBlock (unsigned Code)
Parse a subblock and fill in the fields in the parser.
Protected Member Functions inherited from llvm::remarks::BitstreamBlockParserHelperBase
Error enterBlock ()
Error unknownRecord (unsigned AbbrevID)
Error unexpectedRecord (StringRef RecordName)
Error malformedRecord (StringRef RecordName)
Error unexpectedBlock (unsigned Code)
Protected Attributes
SmallVector< uint64_t, 5 > Record
StringRef RecordBlob
unsigned RecordID
Protected Attributes inherited from llvm::remarks::BitstreamBlockParserHelperBase
BitstreamCursor & Stream
StringRef BlockName
unsigned BlockID

Helper to parse a REMARK_BLOCK for a bitstream remark container.

Definition at line 138 of file BitstreamRemarkParser.h.

llvm::remarks::BitstreamRemarkParserHelper::BitstreamRemarkParserHelper ( BitstreamCursor & Stream) inline

handleRecord()

Error BitstreamRemarkParserHelper::handleRecord ( ) protected

Definition at line 149 of file BitstreamRemarkParser.cpp.

References Args, FunctionNameIdx, Hotness, Loc, llvm::remarks::BitstreamBlockParserHelperBase::malformedRecord(), PassNameIdx, Record, llvm::remarks::RECORD_REMARK_ARG_WITH_DEBUGLOC, llvm::remarks::RECORD_REMARK_ARG_WITHOUT_DEBUGLOC, llvm::remarks::RECORD_REMARK_DEBUG_LOC, llvm::remarks::RECORD_REMARK_HEADER, llvm::remarks::RECORD_REMARK_HOTNESS, RecordID, llvm::remarks::RemarkArgWithDebugLocName(), llvm::remarks::RemarkArgWithoutDebugLocName(), llvm::remarks::RemarkDebugLocName(), llvm::remarks::RemarkHeaderName(), llvm::remarks::RemarkHotnessName(), RemarkNameIdx, llvm::Error::success(), Type, and llvm::remarks::BitstreamBlockParserHelperBase::unknownRecord().

Referenced by parseRecord().

parseNext()

Error BitstreamRemarkParserHelper::parseNext ( )

parseRecord()

Error BitstreamRemarkParserHelper::parseRecord ( unsigned Code) protected

BitstreamBlockParserHelper< BitstreamRemarkParserHelper >

Args

FunctionNameIdx

std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::FunctionNameIdx

Hotness

std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::Hotness

Loc

std::optional<RemarkLoc> llvm::remarks::BitstreamRemarkParserHelper::Loc

PassNameIdx

std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::PassNameIdx

Record

RecordBlob

StringRef llvm::remarks::BitstreamRemarkParserHelper::RecordBlob protected

RecordID

unsigned llvm::remarks::BitstreamRemarkParserHelper::RecordID protected

RemarkNameIdx

std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::RemarkNameIdx

Type

std::optional<uint8_t> llvm::remarks::BitstreamRemarkParserHelper::Type


The documentation for this class was generated from the following files: