LLVM  6.0.0svn
Public Member Functions | Public Attributes | List of all members
llvm::DWARFDebugLine::Prologue Struct Reference

#include "llvm/DebugInfo/DWARF/DWARFDebugLine.h"

Collaboration diagram for llvm::DWARFDebugLine::Prologue:
Collaboration graph
[legend]

Public Member Functions

 Prologue ()
 
const DWARFFormParams getFormParams () const
 
uint16_t getVersion () const
 
uint8_t getAddressSize () const
 
bool isDWARF64 () const
 
uint32_t sizeofTotalLength () const
 
uint32_t sizeofPrologueLength () const
 
uint32_t getLength () const
 Length of the prologue in bytes. More...
 
uint32_t getStatementTableLength () const
 Length of the line table data in bytes (not including the prologue). More...
 
int32_t getMaxLineIncrementForSpecialOpcode () const
 
void clear ()
 
void dump (raw_ostream &OS) const
 
bool parse (const DWARFDataExtractor &DebugLineData, uint32_t *OffsetPtr)
 

Public Attributes

uint64_t TotalLength
 The size in bytes of the statement information for this compilation unit (not including the total_length field itself). More...
 
DWARFFormParams FormParams
 Version, address size (starting in v5), and DWARF32/64 format; these parameters affect interpretation of forms (used in the directory and file tables starting with v5). More...
 
uint8_t SegSelectorSize
 In v5, size in bytes of a segment selector. More...
 
uint64_t PrologueLength
 The number of bytes following the prologue_length field to the beginning of the first byte of the statement program itself. More...
 
uint8_t MinInstLength
 The size in bytes of the smallest target machine instruction. More...
 
uint8_t MaxOpsPerInst
 The maximum number of individual operations that may be encoded in an instruction. More...
 
uint8_t DefaultIsStmt
 The initial value of theis_stmtregister. More...
 
int8_t LineBase
 This parameter affects the meaning of the special opcodes. See below. More...
 
uint8_t LineRange
 This parameter affects the meaning of the special opcodes. See below. More...
 
uint8_t OpcodeBase
 The number assigned to the first special opcode. More...
 
std::vector< uint8_t > StandardOpcodeLengths
 
std::vector< StringRefIncludeDirectories
 
std::vector< FileNameEntryFileNames
 

Detailed Description

Definition at line 38 of file DWARFDebugLine.h.

Constructor & Destructor Documentation

◆ Prologue()

DWARFDebugLine::Prologue::Prologue ( )

Definition at line 44 of file DWARFDebugLine.cpp.

References clear().

Member Function Documentation

◆ clear()

void DWARFDebugLine::Prologue::clear ( )

Definition at line 46 of file DWARFDebugLine.cpp.

References llvm::dwarf::DWARF32.

Referenced by llvm::DWARFDebugLine::LineTable::clear().

◆ dump()

void DWARFDebugLine::Prologue::dump ( raw_ostream OS) const

◆ getAddressSize()

uint8_t llvm::DWARFDebugLine::Prologue::getAddressSize ( ) const
inline

Definition at line 74 of file DWARFDebugLine.h.

References llvm::DWARFFormParams::AddrSize.

◆ getFormParams()

const DWARFFormParams llvm::DWARFDebugLine::Prologue::getFormParams ( ) const
inline

Definition at line 72 of file DWARFDebugLine.h.

◆ getLength()

uint32_t llvm::DWARFDebugLine::Prologue::getLength ( ) const
inline

Length of the prologue in bytes.

Definition at line 82 of file DWARFDebugLine.h.

◆ getMaxLineIncrementForSpecialOpcode()

int32_t llvm::DWARFDebugLine::Prologue::getMaxLineIncrementForSpecialOpcode ( ) const
inline

Definition at line 92 of file DWARFDebugLine.h.

References clear(), and llvm::dump().

◆ getStatementTableLength()

uint32_t llvm::DWARFDebugLine::Prologue::getStatementTableLength ( ) const
inline

Length of the line table data in bytes (not including the prologue).

Definition at line 88 of file DWARFDebugLine.h.

◆ getVersion()

uint16_t llvm::DWARFDebugLine::Prologue::getVersion ( ) const
inline

Definition at line 73 of file DWARFDebugLine.h.

References llvm::DWARFFormParams::Version.

◆ isDWARF64()

bool llvm::DWARFDebugLine::Prologue::isDWARF64 ( ) const
inline

Definition at line 75 of file DWARFDebugLine.h.

References llvm::dwarf::DWARF64, and llvm::DWARFFormParams::Format.

◆ parse()

bool DWARFDebugLine::Prologue::parse ( const DWARFDataExtractor DebugLineData,
uint32_t OffsetPtr 
)

◆ sizeofPrologueLength()

uint32_t llvm::DWARFDebugLine::Prologue::sizeofPrologueLength ( ) const
inline

Definition at line 79 of file DWARFDebugLine.h.

◆ sizeofTotalLength()

uint32_t llvm::DWARFDebugLine::Prologue::sizeofTotalLength ( ) const
inline

Definition at line 77 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::parse().

Member Data Documentation

◆ DefaultIsStmt

uint8_t llvm::DWARFDebugLine::Prologue::DefaultIsStmt

The initial value of theis_stmtregister.

Definition at line 61 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::clear().

◆ FileNames

std::vector<FileNameEntry> llvm::DWARFDebugLine::Prologue::FileNames

◆ FormParams

DWARFFormParams llvm::DWARFDebugLine::Prologue::FormParams

Version, address size (starting in v5), and DWARF32/64 format; these parameters affect interpretation of forms (used in the directory and file tables starting with v5).

Definition at line 47 of file DWARFDebugLine.h.

◆ IncludeDirectories

std::vector<StringRef> llvm::DWARFDebugLine::Prologue::IncludeDirectories

◆ LineBase

int8_t llvm::DWARFDebugLine::Prologue::LineBase

This parameter affects the meaning of the special opcodes. See below.

Definition at line 63 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::parse().

◆ LineRange

uint8_t llvm::DWARFDebugLine::Prologue::LineRange

This parameter affects the meaning of the special opcodes. See below.

Definition at line 65 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::parse().

◆ MaxOpsPerInst

uint8_t llvm::DWARFDebugLine::Prologue::MaxOpsPerInst

The maximum number of individual operations that may be encoded in an instruction.

Definition at line 59 of file DWARFDebugLine.h.

◆ MinInstLength

uint8_t llvm::DWARFDebugLine::Prologue::MinInstLength

The size in bytes of the smallest target machine instruction.

Statement program opcodes that alter the address register first multiply their operands by this value.

Definition at line 56 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::parse().

◆ OpcodeBase

uint8_t llvm::DWARFDebugLine::Prologue::OpcodeBase

The number assigned to the first special opcode.

Definition at line 67 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::parse().

◆ PrologueLength

uint64_t llvm::DWARFDebugLine::Prologue::PrologueLength

The number of bytes following the prologue_length field to the beginning of the first byte of the statement program itself.

Definition at line 52 of file DWARFDebugLine.h.

◆ SegSelectorSize

uint8_t llvm::DWARFDebugLine::Prologue::SegSelectorSize

In v5, size in bytes of a segment selector.

Definition at line 49 of file DWARFDebugLine.h.

◆ StandardOpcodeLengths

std::vector<uint8_t> llvm::DWARFDebugLine::Prologue::StandardOpcodeLengths

Definition at line 68 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::parse().

◆ TotalLength

uint64_t llvm::DWARFDebugLine::Prologue::TotalLength

The size in bytes of the statement information for this compilation unit (not including the total_length field itself).

Definition at line 43 of file DWARFDebugLine.h.

Referenced by llvm::DWARFDebugLine::LineTable::parse().


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