LLVM 20.0.0git
|
Helper to allow for parsing of an entire .debug_line section in sequence. More...
#include "llvm/DebugInfo/DWARF/DWARFDebugLine.h"
Public Types | |
using | LineToUnitMap = std::map< uint64_t, DWARFUnit * > |
Public Member Functions | |
SectionParser (DWARFDataExtractor &Data, const DWARFContext &C, DWARFUnitVector::iterator_range Units) | |
LineTable | parseNext (function_ref< void(Error)> RecoverableErrorHandler, function_ref< void(Error)> UnrecoverableErrorHandler, raw_ostream *OS=nullptr, bool Verbose=false) |
Get the next line table from the section. | |
void | skip (function_ref< void(Error)> RecoverableErrorHandler, function_ref< void(Error)> UnrecoverableErrorHandler) |
Skip the current line table and go to the following line table (if present) immediately. | |
bool | done () const |
Indicates if the parser has parsed as much as possible. | |
uint64_t | getOffset () const |
Get the offset the parser has reached. | |
Helper to allow for parsing of an entire .debug_line section in sequence.
Definition at line 320 of file DWARFDebugLine.h.
using llvm::DWARFDebugLine::SectionParser::LineToUnitMap = std::map<uint64_t, DWARFUnit *> |
Definition at line 322 of file DWARFDebugLine.h.
DWARFDebugLine::SectionParser::SectionParser | ( | DWARFDataExtractor & | Data, |
const DWARFContext & | C, | ||
DWARFUnitVector::iterator_range | Units | ||
) |
Definition at line 1552 of file DWARFDebugLine.cpp.
References buildLineToUnitMap(), and llvm::DataExtractor::isValidOffset().
|
inline |
Indicates if the parser has parsed as much as possible.
Definition at line 356 of file DWARFDebugLine.h.
|
inline |
Get the offset the parser has reached.
Definition at line 359 of file DWARFDebugLine.h.
DWARFDebugLine::LineTable DWARFDebugLine::SectionParser::parseNext | ( | function_ref< void(Error)> | RecoverableErrorHandler, |
function_ref< void(Error)> | UnrecoverableErrorHandler, | ||
raw_ostream * | OS = nullptr , |
||
bool | Verbose = false |
||
) |
Get the next line table from the section.
Report any issues via the handlers.
RecoverableErrorHandler | - any issues that don't prevent further parsing of the table will be reported through this handler. |
UnrecoverableErrorHandler | - any issues that prevent further parsing of the table will be reported through this handler. |
OS | - if not null, the parser will print information about the table as it parses it. |
Verbose | - if true, the parser will print verbose information when printing to the output. |
Definition at line 1565 of file DWARFDebugLine.cpp.
References assert(), llvm::DataExtractor::isValidOffset(), llvm::Offset, OS, and llvm::Verbose.
void DWARFDebugLine::SectionParser::skip | ( | function_ref< void(Error)> | RecoverableErrorHandler, |
function_ref< void(Error)> | UnrecoverableErrorHandler | ||
) |
Skip the current line table and go to the following line table (if present) immediately.
RecoverableErrorHandler | - report any recoverable prologue parsing issues via this handler. |
UnrecoverableErrorHandler | - report any unrecoverable prologue parsing issues via this handler. |
Definition at line 1581 of file DWARFDebugLine.cpp.
References assert(), llvm::DataExtractor::isValidOffset(), and llvm::Offset.