LLDB
mainline
|
#include <RangeMap.h>
Public Types | |
typedef B | BaseType |
typedef S | SizeType |
typedef Range< B, S > | Entry |
typedef llvm::SmallVector< Entry, N > | Collection |
using | const_iterator = typename Collection::const_iterator |
Public Member Functions | |
RangeVector ()=default | |
~RangeVector ()=default | |
bool | operator== (const RangeVector &rhs) const |
void | Append (const Entry &entry) |
void | Append (B base, S size) |
void | Insert (const Entry &entry, bool combine) |
bool | RemoveEntryAtIndex (uint32_t idx) |
void | Sort () |
void | CombineConsecutiveRanges () |
BaseType | GetMinRangeBase (BaseType fail_value) const |
BaseType | GetMaxRangeEnd (BaseType fail_value) const |
void | Slide (BaseType slide) |
void | Clear () |
void | Reserve (typename Collection::size_type size) |
bool | IsEmpty () const |
size_t | GetSize () const |
const Entry * | GetEntryAtIndex (size_t i) const |
Entry & | GetEntryRef (size_t i) |
const Entry & | GetEntryRef (size_t i) const |
Entry * | Back () |
const Entry * | Back () const |
uint32_t | FindEntryIndexThatContains (B addr) const |
const Entry * | FindEntryThatContains (B addr) const |
const Entry * | FindEntryThatContains (const Entry &range) const |
const_iterator | begin () const |
const_iterator | end () const |
Static Public Member Functions | |
static RangeVector | GetOverlaps (const RangeVector &vec1, const RangeVector &vec2) |
static bool | BaseLessThan (const Entry &lhs, const Entry &rhs) |
Protected Member Functions | |
void | CombinePrevAndNext (typename Collection::iterator pos) |
Protected Attributes | |
Collection | m_entries |
Definition at line 131 of file RangeMap.h.
typedef B lldb_private::RangeVector< B, S, N >::BaseType |
Definition at line 133 of file RangeMap.h.
typedef llvm::SmallVector<Entry, N> lldb_private::RangeVector< B, S, N >::Collection |
Definition at line 136 of file RangeMap.h.
using lldb_private::RangeVector< B, S, N >::const_iterator = typename Collection::const_iterator |
Definition at line 378 of file RangeMap.h.
typedef Range<B, S> lldb_private::RangeVector< B, S, N >::Entry |
Definition at line 135 of file RangeMap.h.
typedef S lldb_private::RangeVector< B, S, N >::SizeType |
Definition at line 134 of file RangeMap.h.
|
default |
|
default |
|
inline |
Definition at line 176 of file RangeMap.h.
|
inline |
Definition at line 174 of file RangeMap.h.
Referenced by lldb_private::MemoryCache::AddInvalidRange(), lldb_private::Block::AddRange(), AddSectionsToRangeMap(), lldb_private::AllocatedBlock::AllocatedBlock(), DWARFDebugRanges::Extract(), DWARFUnit::FindRnglistFromOffset(), DWARFDebugInfoEntry::GetAttributeAddressRanges(), lldb_private::LineTable::GetContiguousFileAddressRanges(), DWARFDebugInfoEntry::GetDIENamesAndRanges(), ObjectFileMachO::GetEncryptedFileRanges(), lldb_private::DWARFCallFrameInfo::GetFunctionAddressAndSizeVector(), ObjectFileMachO::GetNumThreadContexts(), lldb_private::RangeVector< uint32_t, uint32_t >::GetOverlaps(), MakeRangeList(), and SymbolFilePDB::ParseVariableForPDBData().
|
inline |
Definition at line 301 of file RangeMap.h.
|
inline |
Definition at line 303 of file RangeMap.h.
|
inlinestatic |
Definition at line 307 of file RangeMap.h.
Referenced by lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryIndexThatContains(), and lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryThatContains().
|
inline |
Definition at line 379 of file RangeMap.h.
Referenced by lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryIndexThatContains(), lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryThatContains(), lldb_private::RangeVector< uint32_t, uint32_t >::GetOverlaps(), and lldb_private::RangeVector< uint32_t, uint32_t >::Insert().
|
inline |
Definition at line 284 of file RangeMap.h.
Referenced by lldb_private::MemoryCache::Clear(), DWARFDebugRanges::Extract(), DWARFDebugInfoEntry::GetAttributeAddressRanges(), lldb_private::LineTable::GetContiguousFileAddressRanges(), and lldb_private::DWARFCallFrameInfo::GetFunctionAddressAndSizeVector().
|
inline |
Definition at line 231 of file RangeMap.h.
Referenced by lldb_private::Block::FinalizeRanges().
|
inlineprotected |
Definition at line 383 of file RangeMap.h.
Referenced by lldb_private::RangeVector< uint32_t, uint32_t >::Insert().
|
inline |
Definition at line 380 of file RangeMap.h.
Referenced by lldb_private::RangeVector< uint32_t, uint32_t >::CombinePrevAndNext(), lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryIndexThatContains(), lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryThatContains(), lldb_private::RangeVector< uint32_t, uint32_t >::GetOverlaps(), lldb_private::RangeVector< uint32_t, uint32_t >::Insert(), and lldb_private::RangeVector< uint32_t, uint32_t >::Slide().
|
inline |
Definition at line 311 of file RangeMap.h.
Referenced by lldb_private::AllocatedBlock::FreeBlock(), lldb_private::Block::GetRangeIndexContainingAddress(), and lldb_private::MemoryCache::RemoveInvalidRange().
|
inline |
Definition at line 333 of file RangeMap.h.
Referenced by lldb_private::Block::Contains(), lldb_private::Block::GetRangeContainingAddress(), lldb_private::Block::GetRangeContainingOffset(), lldb_private::Symtab::InitAddressIndexes(), lldb_private::Variable::IsInScope(), lldb_private::Variable::LocationIsValidForAddress(), DWARFDIE::LookupDeepestBlock(), ObjectFileMachO::ProcessSegmentCommand(), and lldb_private::MemoryCache::Read().
|
inline |
Definition at line 356 of file RangeMap.h.
|
inline |
Definition at line 292 of file RangeMap.h.
Referenced by GetCorrespondingFrameData(), ObjectFileMachO::GetThreadContextAtIndex(), ObjectFileMachO::ParseSymtab(), and lldb_private::MemoryCache::RemoveInvalidRange().
|
inline |
Definition at line 298 of file RangeMap.h.
Referenced by DWARFCompileUnit::BuildAddressRangeTable(), lldb_private::Block::Dump(), lldb_private::Block::DumpAddressRanges(), lldb_private::AllocatedBlock::FreeBlock(), GetCorrespondingFrameData(), lldb_private::Block::GetDescription(), lldb_private::Block::GetRangeAtIndex(), lldb_private::Block::GetStartAddress(), lldb_private::RangeVector< uint32_t, uint32_t >::operator==(), SymbolFileDWARF::ParseBlocksRecursive(), and lldb_private::AllocatedBlock::ReserveBlock().
|
inline |
Definition at line 299 of file RangeMap.h.
|
inline |
Definition at line 267 of file RangeMap.h.
Referenced by SymbolFileDWARF::ParseFunction().
|
inline |
Definition at line 256 of file RangeMap.h.
Referenced by DWARFDebugInfoEntry::GetDIENamesAndRanges(), SymbolFileDWARF::ParseBlocksRecursive(), SymbolFileDWARF::ParseFunction(), and SymbolFileDWARF::ParseVariablesForContext().
|
inlinestatic |
Definition at line 142 of file RangeMap.h.
|
inline |
Definition at line 290 of file RangeMap.h.
Referenced by lldb_private::Block::AddRange(), lldb_private::Block::Dump(), lldb_private::Block::DumpAddressRanges(), DWARFDebugInfoEntry::GetAttributeAddressRanges(), lldb_private::LineTable::GetContiguousFileAddressRanges(), GetCorrespondingFrameData(), lldb_private::Block::GetDescription(), lldb_private::Block::GetNumRanges(), ObjectFileMachO::GetNumThreadContexts(), lldb_private::Block::GetRangeAtIndex(), lldb_private::Block::MemorySize(), lldb_private::RangeVector< uint32_t, uint32_t >::operator==(), SymbolFileDWARF::ParseBlocksRecursive(), ObjectFileMachO::ParseSymtab(), and lldb_private::AllocatedBlock::ReserveBlock().
|
inline |
Definition at line 180 of file RangeMap.h.
Referenced by lldb_private::AllocatedBlock::FreeBlock(), and lldb_private::AllocatedBlock::ReserveBlock().
|
inline |
Definition at line 288 of file RangeMap.h.
Referenced by lldb_private::Block::Dump(), lldb_private::Block::DumpAddressRanges(), GetCorrespondingFrameData(), DWARFDebugInfoEntry::GetDIENamesAndRanges(), lldb_private::Block::GetStartAddress(), lldb_private::Variable::IsInScope(), and lldb_private::Variable::LocationIsValidForAddress().
|
inline |
Definition at line 164 of file RangeMap.h.
|
inline |
Definition at line 204 of file RangeMap.h.
Referenced by lldb_private::AllocatedBlock::FreeBlock(), lldb_private::MemoryCache::RemoveInvalidRange(), and lldb_private::AllocatedBlock::ReserveBlock().
|
inline |
Definition at line 286 of file RangeMap.h.
Referenced by lldb_private::DWARFCallFrameInfo::GetFunctionAddressAndSizeVector().
|
inline |
Definition at line 278 of file RangeMap.h.
Referenced by DWARFDebugRanges::FindRanges().
|
inline |
Definition at line 212 of file RangeMap.h.
Referenced by lldb_private::MemoryCache::AddInvalidRange(), DWARFDebugRanges::Extract(), lldb_private::Block::FinalizeRanges(), and lldb_private::Symtab::InitAddressIndexes().
|
protected |
Definition at line 403 of file RangeMap.h.
Referenced by lldb_private::RangeVector< uint32_t, uint32_t >::Append(), lldb_private::RangeVector< uint32_t, uint32_t >::Back(), lldb_private::RangeVector< uint32_t, uint32_t >::begin(), lldb_private::RangeVector< uint32_t, uint32_t >::Clear(), lldb_private::RangeVector< uint32_t, uint32_t >::CombineConsecutiveRanges(), lldb_private::RangeVector< uint32_t, uint32_t >::CombinePrevAndNext(), lldb_private::RangeVector< uint32_t, uint32_t >::end(), lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryIndexThatContains(), lldb_private::RangeVector< uint32_t, uint32_t >::FindEntryThatContains(), lldb_private::RangeVector< uint32_t, uint32_t >::GetEntryAtIndex(), lldb_private::RangeVector< uint32_t, uint32_t >::GetEntryRef(), lldb_private::RangeVector< uint32_t, uint32_t >::GetMaxRangeEnd(), lldb_private::RangeVector< uint32_t, uint32_t >::GetMinRangeBase(), lldb_private::RangeVector< uint32_t, uint32_t >::GetSize(), lldb_private::RangeVector< uint32_t, uint32_t >::Insert(), lldb_private::RangeVector< uint32_t, uint32_t >::IsEmpty(), lldb_private::RangeVector< uint32_t, uint32_t >::RemoveEntryAtIndex(), lldb_private::RangeVector< uint32_t, uint32_t >::Reserve(), lldb_private::RangeVector< uint32_t, uint32_t >::Slide(), and lldb_private::RangeVector< uint32_t, uint32_t >::Sort().