LLVM 22.0.0git
|
Helper to parse a REMARK_BLOCK for a bitstream remark container. More...
#include "Remarks/BitstreamRemarkParser.h"
Classes | |
struct | Argument |
struct | RemarkLoc |
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 |
Friends | |
class | BitstreamBlockParserHelper |
Helper to parse a REMARK_BLOCK for a bitstream remark container.
Definition at line 138 of file BitstreamRemarkParser.h.
|
inline |
Definition at line 173 of file BitstreamRemarkParser.h.
References BitstreamBlockParserHelper, llvm::remarks::REMARK_BLOCK_ID, llvm::remarks::RemarkBlockName(), and llvm::remarks::BitstreamBlockParserHelperBase::Stream.
|
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().
Error BitstreamRemarkParserHelper::parseNext | ( | ) |
Clear helper state and parse next remark block.
Definition at line 191 of file BitstreamRemarkParser.cpp.
References Args, llvm::remarks::BitstreamBlockParserHelperBase::expectBlock(), FunctionNameIdx, Hotness, Loc, llvm::remarks::BitstreamBlockParserHelper< BitstreamRemarkParserHelper >::parseBlock(), PassNameIdx, RemarkNameIdx, and Type.
Referenced by llvm::remarks::BitstreamRemarkParser::parseRemark().
Definition at line 139 of file BitstreamRemarkParser.cpp.
References handleRecord(), Record, RecordBlob, RecordID, llvm::remarks::BitstreamBlockParserHelperBase::Stream, and llvm::Expected< T >::takeError().
|
friend |
Definition at line 140 of file BitstreamRemarkParser.h.
References BitstreamBlockParserHelper.
Referenced by BitstreamBlockParserHelper, and BitstreamRemarkParserHelper().
SmallVector<Argument, 8> llvm::remarks::BitstreamRemarkParserHelper::Args |
Definition at line 171 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseNext().
std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::FunctionNameIdx |
Definition at line 167 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseNext().
std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::Hotness |
Definition at line 168 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseNext().
std::optional<RemarkLoc> llvm::remarks::BitstreamRemarkParserHelper::Loc |
Definition at line 169 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseNext().
std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::PassNameIdx |
Definition at line 166 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseNext().
|
protected |
Definition at line 143 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseRecord().
|
protected |
Definition at line 144 of file BitstreamRemarkParser.h.
Referenced by parseRecord().
|
protected |
Definition at line 145 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseRecord().
std::optional<uint64_t> llvm::remarks::BitstreamRemarkParserHelper::RemarkNameIdx |
Definition at line 165 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseNext().
std::optional<uint8_t> llvm::remarks::BitstreamRemarkParserHelper::Type |
The parsed content: depending on the remark, some fields might be empty.
Definition at line 164 of file BitstreamRemarkParser.h.
Referenced by handleRecord(), and parseNext().