LLVM 22.0.0git
llvm::DWARFDebugLine::Sequence Struct Reference

Represents a series of contiguous machine instructions. More...

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

Public Member Functions

LLVM_ABI Sequence ()
LLVM_ABI void reset ()
bool isValid () const
bool containsPC (object::SectionedAddress PC) const

Static Public Member Functions

static bool orderByHighPC (const Sequence &LHS, const Sequence &RHS)

Public Attributes

uint64_t LowPC
 Sequence describes instructions at address range [LowPC, HighPC) and is described by line table rows [FirstRowIndex, LastRowIndex).
uint64_t HighPC
uint64_t SectionIndex
 If relocation information is present then this is the index of the section which contains above addresses.
unsigned FirstRowIndex
unsigned LastRowIndex
bool Empty
uint64_t StmtSeqOffset = UINT64_MAX
 The offset into the line table where this sequence begins.

Detailed Description

Represents a series of contiguous machine instructions.

Line table for each compilation unit may consist of multiple sequences, which are not guaranteed to be in the order of ascending instruction address.

Definition at line 198 of file DWARFDebugLine.h.

Constructor & Destructor Documentation

◆ Sequence()

DWARFDebugLine::Sequence::Sequence ( )

Definition at line 525 of file DWARFDebugLine.cpp.

References reset().

Referenced by orderByHighPC().

Member Function Documentation

◆ containsPC()

bool llvm::DWARFDebugLine::Sequence::containsPC ( object::SectionedAddress PC) const
inline

◆ isValid()

bool llvm::DWARFDebugLine::Sequence::isValid ( ) const
inline

Definition at line 223 of file DWARFDebugLine.h.

References Empty, FirstRowIndex, HighPC, LastRowIndex, and LowPC.

◆ orderByHighPC()

bool llvm::DWARFDebugLine::Sequence::orderByHighPC ( const Sequence & LHS,
const Sequence & RHS )
inlinestatic

Definition at line 218 of file DWARFDebugLine.h.

References LHS, RHS, and Sequence().

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

◆ reset()

void DWARFDebugLine::Sequence::reset ( )

Member Data Documentation

◆ Empty

bool llvm::DWARFDebugLine::Sequence::Empty

Definition at line 211 of file DWARFDebugLine.h.

Referenced by isValid(), and reset().

◆ FirstRowIndex

unsigned llvm::DWARFDebugLine::Sequence::FirstRowIndex

Definition at line 209 of file DWARFDebugLine.h.

Referenced by llvm::constructSeqOffsettoOrigRowMapping(), isValid(), and reset().

◆ HighPC

uint64_t llvm::DWARFDebugLine::Sequence::HighPC

Definition at line 204 of file DWARFDebugLine.h.

Referenced by containsPC(), isValid(), and reset().

◆ LastRowIndex

unsigned llvm::DWARFDebugLine::Sequence::LastRowIndex

Definition at line 210 of file DWARFDebugLine.h.

Referenced by isValid(), and reset().

◆ LowPC

uint64_t llvm::DWARFDebugLine::Sequence::LowPC

Sequence describes instructions at address range [LowPC, HighPC) and is described by line table rows [FirstRowIndex, LastRowIndex).

Definition at line 203 of file DWARFDebugLine.h.

Referenced by containsPC(), isValid(), and reset().

◆ SectionIndex

uint64_t llvm::DWARFDebugLine::Sequence::SectionIndex

If relocation information is present then this is the index of the section which contains above addresses.

Otherwise this is object::SectionedAddress::Undef value.

Definition at line 208 of file DWARFDebugLine.h.

Referenced by containsPC(), and reset().

◆ StmtSeqOffset

uint64_t llvm::DWARFDebugLine::Sequence::StmtSeqOffset = UINT64_MAX

The offset into the line table where this sequence begins.

Definition at line 214 of file DWARFDebugLine.h.

Referenced by llvm::constructSeqOffsettoOrigRowMapping(), and reset().


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