LLDB mainline
lldb_private::AppleObjCRuntimeV2::NonPointerISACache Class Reference

Public Member Functions

ObjCLanguageRuntime::ClassDescriptorSP GetClassDescriptor (ObjCISA isa)

Static Public Member Functions

static NonPointerISACacheCreateInstance (AppleObjCRuntimeV2 &runtime, const lldb::ModuleSP &objc_module_sp)

Private Member Functions

 NonPointerISACache (AppleObjCRuntimeV2 &runtime, const lldb::ModuleSP &objc_module_sp, uint64_t objc_debug_isa_class_mask, uint64_t objc_debug_isa_magic_mask, uint64_t objc_debug_isa_magic_value, uint64_t objc_debug_indexed_isa_magic_mask, uint64_t objc_debug_indexed_isa_magic_value, uint64_t objc_debug_indexed_isa_index_mask, uint64_t objc_debug_indexed_isa_index_shift, lldb::addr_t objc_indexed_classes)
bool EvaluateNonPointerISA (ObjCISA isa, ObjCISA &ret_isa)
 NonPointerISACache (const NonPointerISACache &)=delete
const NonPointerISACacheoperator= (const NonPointerISACache &)=delete

Private Attributes

AppleObjCRuntimeV2m_runtime
std::map< ObjCISA, ObjCLanguageRuntime::ClassDescriptorSPm_cache
lldb::ModuleWP m_objc_module_wp
uint64_t m_objc_debug_isa_class_mask
uint64_t m_objc_debug_isa_magic_mask
uint64_t m_objc_debug_isa_magic_value
uint64_t m_objc_debug_indexed_isa_magic_mask
uint64_t m_objc_debug_indexed_isa_magic_value
uint64_t m_objc_debug_indexed_isa_index_mask
uint64_t m_objc_debug_indexed_isa_index_shift
lldb::addr_t m_objc_indexed_classes
std::vector< lldb::addr_tm_indexed_isa_cache

Friends

class AppleObjCRuntimeV2

Detailed Description

Definition at line 133 of file AppleObjCRuntimeV2.h.

Constructor & Destructor Documentation

◆ NonPointerISACache() [1/2]

AppleObjCRuntimeV2::NonPointerISACache::NonPointerISACache ( AppleObjCRuntimeV2 & runtime,
const lldb::ModuleSP & objc_module_sp,
uint64_t objc_debug_isa_class_mask,
uint64_t objc_debug_isa_magic_mask,
uint64_t objc_debug_isa_magic_value,
uint64_t objc_debug_indexed_isa_magic_mask,
uint64_t objc_debug_indexed_isa_magic_value,
uint64_t objc_debug_indexed_isa_index_mask,
uint64_t objc_debug_indexed_isa_index_shift,
lldb::addr_t objc_indexed_classes )
private

Definition at line 3150 of file AppleObjCRuntimeV2.cpp.

Referenced by NonPointerISACache(), and operator=().

◆ NonPointerISACache() [2/2]

lldb_private::AppleObjCRuntimeV2::NonPointerISACache::NonPointerISACache ( const NonPointerISACache & )
privatedelete

References NonPointerISACache().

Member Function Documentation

◆ CreateInstance()

AppleObjCRuntimeV2::NonPointerISACache * AppleObjCRuntimeV2::NonPointerISACache::CreateInstance ( AppleObjCRuntimeV2 & runtime,
const lldb::ModuleSP & objc_module_sp )
static

◆ EvaluateNonPointerISA()

◆ GetClassDescriptor()

ObjCLanguageRuntime::ClassDescriptorSP AppleObjCRuntimeV2::NonPointerISACache::GetClassDescriptor ( ObjCISA isa)

Definition at line 3170 of file AppleObjCRuntimeV2.cpp.

◆ operator=()

const NonPointerISACache & lldb_private::AppleObjCRuntimeV2::NonPointerISACache::operator= ( const NonPointerISACache & )
privatedelete

References NonPointerISACache().

◆ AppleObjCRuntimeV2

friend class AppleObjCRuntimeV2
friend

Definition at line 170 of file AppleObjCRuntimeV2.h.

References AppleObjCRuntimeV2.

Referenced by AppleObjCRuntimeV2, and EvaluateNonPointerISA().

Member Data Documentation

◆ m_cache

std::map<ObjCISA, ObjCLanguageRuntime::ClassDescriptorSP> lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_cache
private

Definition at line 156 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_indexed_isa_cache

std::vector<lldb::addr_t> lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_indexed_isa_cache
private

Definition at line 168 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_debug_indexed_isa_index_mask

uint64_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_debug_indexed_isa_index_mask
private

Definition at line 164 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_debug_indexed_isa_index_shift

uint64_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_debug_indexed_isa_index_shift
private

Definition at line 165 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_debug_indexed_isa_magic_mask

uint64_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_debug_indexed_isa_magic_mask
private

Definition at line 162 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_debug_indexed_isa_magic_value

uint64_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_debug_indexed_isa_magic_value
private

Definition at line 163 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_debug_isa_class_mask

uint64_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_debug_isa_class_mask
private

Definition at line 158 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_debug_isa_magic_mask

uint64_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_debug_isa_magic_mask
private

Definition at line 159 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_debug_isa_magic_value

uint64_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_debug_isa_magic_value
private

Definition at line 160 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_indexed_classes

lldb::addr_t lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_indexed_classes
private

Definition at line 166 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_objc_module_wp

lldb::ModuleWP lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_objc_module_wp
private

Definition at line 157 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().

◆ m_runtime

AppleObjCRuntimeV2& lldb_private::AppleObjCRuntimeV2::NonPointerISACache::m_runtime
private

Definition at line 155 of file AppleObjCRuntimeV2.h.

Referenced by EvaluateNonPointerISA().


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