LLDB mainline
|
Public Member Functions | |
EntityResultVariable (const CompilerType &type, bool is_program_reference, bool keep_in_memory, Materializer::PersistentVariableDelegate *delegate) | |
void | Materialize (lldb::StackFrameSP &frame_sp, IRMemoryMap &map, lldb::addr_t process_address, Status &err) override |
void | Dematerialize (lldb::StackFrameSP &frame_sp, IRMemoryMap &map, lldb::addr_t process_address, lldb::addr_t frame_top, lldb::addr_t frame_bottom, Status &err) override |
void | DumpToLog (IRMemoryMap &map, lldb::addr_t process_address, Log *log) override |
void | Wipe (IRMemoryMap &map, lldb::addr_t process_address) override |
Public Member Functions inherited from lldb_private::Materializer::Entity | |
Entity ()=default | |
virtual | ~Entity ()=default |
virtual void | Materialize (lldb::StackFrameSP &frame_sp, IRMemoryMap &map, lldb::addr_t process_address, Status &err)=0 |
virtual void | Dematerialize (lldb::StackFrameSP &frame_sp, IRMemoryMap &map, lldb::addr_t process_address, lldb::addr_t frame_top, lldb::addr_t frame_bottom, Status &err)=0 |
virtual void | DumpToLog (IRMemoryMap &map, lldb::addr_t process_address, Log *log)=0 |
virtual void | Wipe (IRMemoryMap &map, lldb::addr_t process_address)=0 |
uint32_t | GetAlignment () |
uint32_t | GetSize () |
uint32_t | GetOffset () |
void | SetOffset (uint32_t offset) |
Private Attributes | |
CompilerType | m_type |
bool | m_is_program_reference |
bool | m_keep_in_memory |
lldb::addr_t | m_temporary_allocation = LLDB_INVALID_ADDRESS |
size_t | m_temporary_allocation_size = 0 |
Materializer::PersistentVariableDelegate * | m_delegate |
Additional Inherited Members | |
Protected Attributes inherited from lldb_private::Materializer::Entity | |
uint32_t | m_alignment = 1 |
uint32_t | m_size = 0 |
uint32_t | m_offset = 0 |
Definition at line 910 of file Materializer.cpp.
|
inline |
Definition at line 912 of file Materializer.cpp.
References g_default_var_alignment, and g_default_var_byte_size.
|
inlineoverridevirtual |
Implements lldb_private::Materializer::Entity.
Definition at line 983 of file Materializer.cpp.
References lldb_private::ConstString::AsCString(), lldb_private::ExecutionContextScope::CalculateProcess(), lldb_private::ExecutionContextScope::CalculateTarget(), lldb_private::Status::Clear(), lldb_private::ValueObjectConstResult::Create(), lldb_private::PersistentExpressionState::CreatePersistentVariable(), lldb_private::eAddressTypeLoad, error(), lldb_private::ExpressionVariable::EVIsLLDBAllocated, lldb_private::ExpressionVariable::EVNeedsAllocation, lldb_private::IRMemoryMap::Free(), lldb_private::IRMemoryMap::GetAddressByteSize(), lldb_private::IRMemoryMap::GetBestExecutionContextScope(), lldb_private::IRMemoryMap::GetByteOrder(), lldb_private::PersistentExpressionState::GetNextPersistentVariableName(), LLDB_INVALID_ADDRESS, lldb_private::IRMemoryMap::ReadMemory(), lldb_private::IRMemoryMap::ReadPointerFromMemory(), lldb_private::Status::SetErrorString(), lldb_private::Status::SetErrorStringWithFormat(), and lldb_private::Status::Success().
|
inlineoverridevirtual |
Implements lldb_private::Materializer::Entity.
Definition at line 1103 of file Materializer.cpp.
References lldb_private::DumpHexBytes(), lldb_private::DataExtractor::GetAddress(), lldb_private::IRMemoryMap::GetAddressByteSize(), lldb_private::IRMemoryMap::GetByteOrder(), lldb_private::WritableDataBuffer::GetBytes(), lldb_private::DataBufferHeap::GetByteSize(), lldb_private::StreamString::GetString(), LLDB_INVALID_ADDRESS, lldb_private::Stream::Printf(), lldb_private::Stream::PutChar(), lldb_private::Log::PutString(), lldb_private::IRMemoryMap::ReadMemory(), and lldb_private::Status::Success().
|
inlineoverridevirtual |
Implements lldb_private::Materializer::Entity.
Definition at line 923 of file Materializer.cpp.
References lldb_private::Status::AsCString(), lldb_private::IRMemoryMap::eAllocationPolicyMirror, lldb_private::IRMemoryMap::GetBestExecutionContextScope(), LLDB_INVALID_ADDRESS, lldb_private::IRMemoryMap::Malloc(), lldb_private::Status::SetErrorString(), lldb_private::Status::SetErrorStringWithFormat(), lldb_private::Status::Success(), and lldb_private::IRMemoryMap::WritePointerToMemory().
|
inlineoverridevirtual |
Implements lldb_private::Materializer::Entity.
Definition at line 1166 of file Materializer.cpp.
References lldb_private::IRMemoryMap::Free(), and LLDB_INVALID_ADDRESS.
|
private |
Definition at line 1184 of file Materializer.cpp.
|
private |
Definition at line 1179 of file Materializer.cpp.
|
private |
Definition at line 1180 of file Materializer.cpp.
|
private |
Definition at line 1182 of file Materializer.cpp.
|
private |
Definition at line 1183 of file Materializer.cpp.
|
private |
Definition at line 1178 of file Materializer.cpp.