LLVM
15.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. More... | |
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. More... | |
bool | done () const |
Indicates if the parser has parsed as much as possible. More... | |
uint64_t | getOffset () const |
Get the offset the parser has reached. More... | |
Helper to allow for parsing of an entire .debug_line section in sequence.
Definition at line 310 of file DWARFDebugLine.h.
using llvm::DWARFDebugLine::SectionParser::LineToUnitMap = std::map<uint64_t, DWARFUnit *> |
Definition at line 312 of file DWARFDebugLine.h.
DWARFDebugLine::SectionParser::SectionParser | ( | DWARFDataExtractor & | Data, |
const DWARFContext & | C, | ||
DWARFUnitVector::iterator_range | Units | ||
) |
Definition at line 1438 of file DWARFDebugLine.cpp.
References buildLineToUnitMap(), and llvm::DataExtractor::isValidOffset().
|
inline |
Indicates if the parser has parsed as much as possible.
Definition at line 346 of file DWARFDebugLine.h.
Referenced by llvm::DWARFContext::dump().
|
inline |
Get the offset the parser has reached.
Definition at line 349 of file DWARFDebugLine.h.
Referenced by llvm::DWARFContext::dump().
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 1451 of file DWARFDebugLine.cpp.
References assert(), llvm::DataExtractor::isValidOffset(), and llvm::AArch64CC::LT.
Referenced by llvm::DWARFContext::dump().
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 1467 of file DWARFDebugLine.cpp.
References assert(), llvm::DataExtractor::isValidOffset(), and llvm::AArch64CC::LT.
Referenced by llvm::DWARFContext::dump().