LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Static Public Member Functions | List of all members
llvm::DWARFDebugLine Class Reference

#include <DWARFDebugLine.h>

Classes

struct  DumpingState
 
struct  FileNameEntry
 
struct  LineTable
 
struct  Prologue
 
struct  Row
 
struct  Sequence
 
struct  State
 

Public Member Functions

 DWARFDebugLine (const RelocAddrMap *LineInfoRelocMap)
 
const LineTablegetLineTable (uint32_t offset) const
 
const LineTablegetOrParseLineTable (DataExtractor debug_line_data, uint32_t offset)
 

Static Public Member Functions

static bool parsePrologue (DataExtractor debug_line_data, uint32_t *offset_ptr, Prologue *prologue)
 
static bool parseStatementTable (DataExtractor debug_line_data, const RelocAddrMap *RMap, uint32_t *offset_ptr, State &state)
 Parse a single line table (prologue and all rows). More...
 

Detailed Description

Definition at line 23 of file DWARFDebugLine.h.

Constructor & Destructor Documentation

llvm::DWARFDebugLine::DWARFDebugLine ( const RelocAddrMap LineInfoRelocMap)
inline

Definition at line 25 of file DWARFDebugLine.h.

Member Function Documentation

const DWARFDebugLine::LineTable * DWARFDebugLine::getLineTable ( uint32_t  offset) const

Definition at line 143 of file DWARFDebugLine.cpp.

const DWARFDebugLine::LineTable * DWARFDebugLine::getOrParseLineTable ( DataExtractor  debug_line_data,
uint32_t  offset 
)

Definition at line 151 of file DWARFDebugLine.cpp.

bool DWARFDebugLine::parsePrologue ( DataExtractor  debug_line_data,
uint32_t *  offset_ptr,
Prologue prologue 
)
static
bool DWARFDebugLine::parseStatementTable ( DataExtractor  debug_line_data,
const RelocAddrMap RMap,
uint32_t *  offset_ptr,
State state 
)
static

Parse a single line table (prologue and all rows).

Definition at line 222 of file DWARFDebugLine.cpp.

References llvm::DWARFDebugLine::Row::Address, llvm::DWARFDebugLine::State::appendRowToMatrix(), llvm::DWARFDebugLine::Row::BasicBlock, llvm::DWARFDebugLine::Row::Column, llvm::DWARFDebugLine::FileNameEntry::DirIdx, llvm::dwarf::DW_LNE_define_file, llvm::dwarf::DW_LNE_end_sequence, llvm::dwarf::DW_LNE_set_address, llvm::dwarf::DW_LNS_advance_line, llvm::dwarf::DW_LNS_advance_pc, llvm::dwarf::DW_LNS_const_add_pc, llvm::dwarf::DW_LNS_copy, llvm::dwarf::DW_LNS_fixed_advance_pc, llvm::dwarf::DW_LNS_negate_stmt, llvm::dwarf::DW_LNS_set_basic_block, llvm::dwarf::DW_LNS_set_column, llvm::dwarf::DW_LNS_set_epilogue_begin, llvm::dwarf::DW_LNS_set_file, llvm::dwarf::DW_LNS_set_isa, llvm::dwarf::DW_LNS_set_prologue_end, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT >::end(), llvm::DWARFDebugLine::Row::EndSequence, llvm::DWARFDebugLine::Row::EpilogueBegin, llvm::DWARFDebugLine::Row::File, llvm::DWARFDebugLine::Prologue::FileNames, llvm::DWARFDebugLine::State::finalize(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT >::find(), llvm::DataExtractor::getAddress(), llvm::DataExtractor::getCStr(), llvm::DataExtractor::getSLEB128(), llvm::DataExtractor::getU16(), llvm::DataExtractor::getU8(), llvm::DataExtractor::getULEB128(), llvm::DWARFDebugLine::Row::Isa, llvm::DWARFDebugLine::Row::IsStmt, llvm::DWARFDebugLine::FileNameEntry::Length, llvm::DWARFDebugLine::Row::Line, llvm::DWARFDebugLine::Prologue::LineBase, llvm::DWARFDebugLine::Prologue::LineRange, llvm::DWARFDebugLine::Prologue::MinInstLength, llvm::DWARFDebugLine::FileNameEntry::ModTime, llvm::DWARFDebugLine::FileNameEntry::Name, llvm::DWARFDebugLine::Prologue::OpcodeBase, llvm::DWARFDebugLine::LineTable::Prologue, llvm::DWARFDebugLine::Row::PrologueEnd, llvm::DWARFDebugLine::State::reset(), llvm::DWARFDebugLine::Prologue::StandardOpcodeLengths, and llvm::DWARFDebugLine::Prologue::TotalLength.

Referenced by llvm::DWARFContext::dump().


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