| 
    LLVM 22.0.0git
    
   | 
 
Helper to parse any bitstream remark container. More...
#include "Remarks/BitstreamRemarkParser.h"
Public Member Functions | |
| BitstreamParserHelper (StringRef Buffer) | |
Start parsing at Buffer.   | |
| Error | expectMagic () | 
| Parse and validate the magic number.   | |
| Error | parseBlockInfoBlock () | 
| Parse the block info block containing all the abbrevs.   | |
| Error | parseMeta () | 
| Parse all metadata blocks in the file. This populates the meta helper.   | |
| Error | parseRemark () | 
| Parse the next remark. This populates the remark helper data.   | |
Public Attributes | |
| BitstreamCursor | Stream | 
| The Bitstream reader.   | |
| BitstreamBlockInfo | BlockInfo | 
| The block info block.   | |
| BitstreamMetaParserHelper | MetaHelper | 
| Helper to parse the metadata blocks in this bitstream.   | |
| std::optional< BitstreamRemarkParserHelper > | RemarksHelper | 
| Helper to parse the remark blocks in this bitstream.   | |
| std::optional< uint64_t > | RemarkStartBitPos | 
| The position of the first remark block we encounter after the initial metadata block.   | |
Helper to parse any bitstream remark container.
Definition at line 185 of file BitstreamRemarkParser.h.
      
  | 
  inline | 
Start parsing at Buffer. 
Definition at line 201 of file BitstreamRemarkParser.h.
References MetaHelper, RemarksHelper, and Stream.
| Error BitstreamParserHelper::expectMagic | ( | ) | 
Parse and validate the magic number.
Definition at line 203 of file BitstreamRemarkParser.cpp.
References llvm::remarks::ContainerMagic(), error, I, Stream, and llvm::Error::success().
Referenced by parseMeta().
| Error BitstreamParserHelper::parseBlockInfoBlock | ( | ) | 
Parse the block info block containing all the abbrevs.
This needs to be called before calling any other parsing function.
Definition at line 218 of file BitstreamRemarkParser.cpp.
References BlockInfo, llvm::bitc::BLOCKINFO_BLOCK_ID, error, llvm::Next, Stream, llvm::BitstreamEntry::SubBlock, llvm::Error::success(), and llvm::Expected< T >::takeError().
Referenced by parseMeta().
| Error BitstreamParserHelper::parseMeta | ( | ) | 
Parse all metadata blocks in the file. This populates the meta helper.
Definition at line 242 of file BitstreamRemarkParser.cpp.
References error, expectMagic(), expectSubBlock(), llvm::remarks::META_BLOCK_ID, MetaHelper, parseBlockInfoBlock(), llvm::remarks::REMARK_BLOCK_ID, RemarkStartBitPos, Stream, and llvm::Error::success().
| Error BitstreamParserHelper::parseRemark | ( | ) | 
Parse the next remark. This populates the remark helper data.
Definition at line 280 of file BitstreamRemarkParser.cpp.
References expectSubBlock(), llvm::make_error(), llvm::remarks::REMARK_BLOCK_ID, RemarksHelper, RemarkStartBitPos, and Stream.
| BitstreamBlockInfo llvm::remarks::BitstreamParserHelper::BlockInfo | 
The block info block.
Definition at line 189 of file BitstreamRemarkParser.h.
Referenced by parseBlockInfoBlock().
| BitstreamMetaParserHelper llvm::remarks::BitstreamParserHelper::MetaHelper | 
Helper to parse the metadata blocks in this bitstream.
Definition at line 192 of file BitstreamRemarkParser.h.
Referenced by BitstreamParserHelper(), and parseMeta().
| std::optional<BitstreamRemarkParserHelper> llvm::remarks::BitstreamParserHelper::RemarksHelper | 
Helper to parse the remark blocks in this bitstream.
Only needed for ContainerType RemarksFile.
Definition at line 195 of file BitstreamRemarkParser.h.
Referenced by BitstreamParserHelper(), and parseRemark().
| std::optional<uint64_t> llvm::remarks::BitstreamParserHelper::RemarkStartBitPos | 
The position of the first remark block we encounter after the initial metadata block.
Definition at line 198 of file BitstreamRemarkParser.h.
Referenced by parseMeta(), and parseRemark().
| BitstreamCursor llvm::remarks::BitstreamParserHelper::Stream | 
The Bitstream reader.
Definition at line 187 of file BitstreamRemarkParser.h.
Referenced by BitstreamParserHelper(), expectMagic(), parseBlockInfoBlock(), parseMeta(), and parseRemark().