LLDB mainline
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
lldb_private::LineTable::Entry Struct Reference

#include <LineTable.h>

Classes

class  LessThanBinaryPredicate
 

Public Member Functions

 Entry ()
 
 Entry (lldb::addr_t _file_addr, uint32_t _line, uint16_t _column, uint16_t _file_idx, bool _is_start_of_statement, bool _is_start_of_basic_block, bool _is_prologue_end, bool _is_epilogue_begin, bool _is_terminal_entry)
 
int bsearch_compare (const void *key, const void *arrmem)
 
void Clear ()
 

Static Public Member Functions

static int Compare (const Entry &lhs, const Entry &rhs)
 
static bool EntryAddressLessThan (const Entry &lhs, const Entry &rhs)
 

Public Attributes

lldb::addr_t file_addr = LLDB_INVALID_ADDRESS
 The file address for this line entry.
 
uint32_t line: 27
 The source line number, or zero if there is no line number information.
 
uint32_t is_start_of_statement: 1
 Indicates this entry is the beginning of a statement.
 
uint32_t is_start_of_basic_block: 1
 Indicates this entry is the beginning of a basic block.
 
uint32_t is_prologue_end: 1
 Indicates this entry is one (of possibly many) where execution should be suspended for an entry breakpoint of a function.
 
uint32_t is_epilogue_begin: 1
 Indicates this entry is one (of possibly many) where execution should be suspended for an exit breakpoint of a function.
 
uint32_t is_terminal_entry: 1
 Indicates this entry is that of the first byte after the end of a sequence of target machine instructions.
 
uint16_t column = 0
 The column number of the source line, or zero if there is no column information.
 
uint16_t file_idx = 0
 The file index into CompileUnit's file table, or zero if there is no file information.
 

Detailed Description

Definition at line 209 of file LineTable.h.

Constructor & Destructor Documentation

◆ Entry() [1/2]

lldb_private::LineTable::Entry::Entry ( )
inline

Definition at line 210 of file LineTable.h.

◆ Entry() [2/2]

lldb_private::LineTable::Entry::Entry ( lldb::addr_t  _file_addr,
uint32_t  _line,
uint16_t  _column,
uint16_t  _file_idx,
bool  _is_start_of_statement,
bool  _is_start_of_basic_block,
bool  _is_prologue_end,
bool  _is_epilogue_begin,
bool  _is_terminal_entry 
)
inline

Definition at line 215 of file LineTable.h.

Member Function Documentation

◆ bsearch_compare()

int lldb_private::LineTable::Entry::bsearch_compare ( const void *  key,
const void *  arrmem 
)

◆ Clear()

void lldb_private::LineTable::Entry::Clear ( )
inline

◆ Compare()

static int lldb_private::LineTable::Entry::Compare ( const Entry lhs,
const Entry rhs 
)
inlinestatic

◆ EntryAddressLessThan()

static bool lldb_private::LineTable::Entry::EntryAddressLessThan ( const Entry lhs,
const Entry rhs 
)
inlinestatic

Definition at line 274 of file LineTable.h.

References file_addr.

Member Data Documentation

◆ column

uint16_t lldb_private::LineTable::Entry::column = 0

The column number of the source line, or zero if there is no column information.

Definition at line 299 of file LineTable.h.

Referenced by Clear(), Compare(), and lldb_private::LineTable::ConvertEntryAtIndexToLineEntry().

◆ file_addr

lldb::addr_t lldb_private::LineTable::Entry::file_addr = LLDB_INVALID_ADDRESS

◆ file_idx

uint16_t lldb_private::LineTable::Entry::file_idx = 0

◆ is_epilogue_begin

uint32_t lldb_private::LineTable::Entry::is_epilogue_begin

Indicates this entry is one (of possibly many) where execution should be suspended for an exit breakpoint of a function.

Definition at line 293 of file LineTable.h.

Referenced by Clear(), Compare(), and lldb_private::LineTable::ConvertEntryAtIndexToLineEntry().

◆ is_prologue_end

uint32_t lldb_private::LineTable::Entry::is_prologue_end

Indicates this entry is one (of possibly many) where execution should be suspended for an entry breakpoint of a function.

Definition at line 290 of file LineTable.h.

Referenced by lldb_private::LineTable::AppendLineEntryToSequence(), Clear(), Compare(), and lldb_private::LineTable::ConvertEntryAtIndexToLineEntry().

◆ is_start_of_basic_block

uint32_t lldb_private::LineTable::Entry::is_start_of_basic_block

Indicates this entry is the beginning of a basic block.

Definition at line 287 of file LineTable.h.

Referenced by Clear(), Compare(), and lldb_private::LineTable::ConvertEntryAtIndexToLineEntry().

◆ is_start_of_statement

uint32_t lldb_private::LineTable::Entry::is_start_of_statement

Indicates this entry is the beginning of a statement.

Definition at line 285 of file LineTable.h.

Referenced by Clear(), Compare(), and lldb_private::LineTable::ConvertEntryAtIndexToLineEntry().

◆ is_terminal_entry

uint32_t lldb_private::LineTable::Entry::is_terminal_entry

Indicates this entry is that of the first byte after the end of a sequence of target machine instructions.

Definition at line 296 of file LineTable.h.

Referenced by Clear(), Compare(), lldb_private::LineTable::ConvertEntryAtIndexToLineEntry(), lldb_private::LineTable::FindLineEntriesForFileIndex(), lldb_private::LineTable::GetContiguousFileAddressRanges(), and lldb_private::LineTable::LinkLineTable().

◆ line

uint32_t lldb_private::LineTable::Entry::line

The source line number, or zero if there is no line number information.

Definition at line 283 of file LineTable.h.

Referenced by Clear(), Compare(), and lldb_private::LineTable::ConvertEntryAtIndexToLineEntry().


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