diff --git a/lldb/include/lldb/API/SBAddress.h b/lldb/include/lldb/API/SBAddress.h --- a/lldb/include/lldb/API/SBAddress.h +++ b/lldb/include/lldb/API/SBAddress.h @@ -115,9 +115,9 @@ const lldb_private::Address &ref() const; - SBAddress(const lldb_private::Address *lldb_object_ptr); + SBAddress(const lldb_private::Address &address); - void SetAddress(const lldb_private::Address *lldb_object_ptr); + void SetAddress(const lldb_private::Address &address); private: std::unique_ptr m_opaque_up; diff --git a/lldb/source/API/SBAddress.cpp b/lldb/source/API/SBAddress.cpp --- a/lldb/source/API/SBAddress.cpp +++ b/lldb/source/API/SBAddress.cpp @@ -25,11 +25,8 @@ LLDB_RECORD_CONSTRUCTOR_NO_ARGS(SBAddress); } -SBAddress::SBAddress(const Address *lldb_object_ptr) - : m_opaque_up(new Address()) { - if (lldb_object_ptr) - m_opaque_up = std::make_unique
(*lldb_object_ptr); -} +SBAddress::SBAddress(const Address &address) + : m_opaque_up(std::make_unique
(address)) {} SBAddress::SBAddress(const SBAddress &rhs) : m_opaque_up(new Address()) { LLDB_RECORD_CONSTRUCTOR(SBAddress, (const lldb::SBAddress &), rhs); @@ -101,12 +98,7 @@ addr.SetOffset(offset); } -void SBAddress::SetAddress(const Address *lldb_object_ptr) { - if (lldb_object_ptr) - ref() = *lldb_object_ptr; - else - m_opaque_up = std::make_unique
(); -} +void SBAddress::SetAddress(const Address &address) { ref() = address; } lldb::addr_t SBAddress::GetFileAddress() const { LLDB_RECORD_METHOD_CONST_NO_ARGS(lldb::addr_t, SBAddress, GetFileAddress); diff --git a/lldb/source/API/SBBreakpointLocation.cpp b/lldb/source/API/SBBreakpointLocation.cpp --- a/lldb/source/API/SBBreakpointLocation.cpp +++ b/lldb/source/API/SBBreakpointLocation.cpp @@ -80,7 +80,7 @@ BreakpointLocationSP loc_sp = GetSP(); if (loc_sp) { - return LLDB_RECORD_RESULT(SBAddress(&loc_sp->GetAddress())); + return LLDB_RECORD_RESULT(SBAddress(loc_sp->GetAddress())); } return LLDB_RECORD_RESULT(SBAddress()); @@ -218,8 +218,8 @@ const char *callback_function_name, SBStructuredData &extra_args) { LLDB_RECORD_METHOD(SBError, SBBreakpointLocation, SetScriptCallbackFunction, - (const char *, SBStructuredData &), - callback_function_name, extra_args); + (const char *, SBStructuredData &), callback_function_name, + extra_args); SBError sb_error; BreakpointLocationSP loc_sp = GetSP(); @@ -239,7 +239,7 @@ sb_error.SetError(error); } else sb_error.SetErrorString("invalid breakpoint"); - + return LLDB_RECORD_RESULT(sb_error); } diff --git a/lldb/source/API/SBFrame.cpp b/lldb/source/API/SBFrame.cpp --- a/lldb/source/API/SBFrame.cpp +++ b/lldb/source/API/SBFrame.cpp @@ -431,7 +431,7 @@ if (stop_locker.TryLock(&process->GetRunLock())) { frame = exe_ctx.GetFramePtr(); if (frame) - sb_addr.SetAddress(&frame->GetFrameCodeAddress()); + sb_addr.SetAddress(frame->GetFrameCodeAddress()); } } return LLDB_RECORD_RESULT(sb_addr); diff --git a/lldb/source/API/SBFunction.cpp b/lldb/source/API/SBFunction.cpp --- a/lldb/source/API/SBFunction.cpp +++ b/lldb/source/API/SBFunction.cpp @@ -152,7 +152,7 @@ SBAddress addr; if (m_opaque_ptr) - addr.SetAddress(&m_opaque_ptr->GetAddressRange().GetBaseAddress()); + addr.SetAddress(m_opaque_ptr->GetAddressRange().GetBaseAddress()); return LLDB_RECORD_RESULT(addr); } @@ -163,7 +163,7 @@ if (m_opaque_ptr) { addr_t byte_size = m_opaque_ptr->GetAddressRange().GetByteSize(); if (byte_size > 0) { - addr.SetAddress(&m_opaque_ptr->GetAddressRange().GetBaseAddress()); + addr.SetAddress(m_opaque_ptr->GetAddressRange().GetBaseAddress()); addr->Slide(byte_size); } } diff --git a/lldb/source/API/SBInstruction.cpp b/lldb/source/API/SBInstruction.cpp --- a/lldb/source/API/SBInstruction.cpp +++ b/lldb/source/API/SBInstruction.cpp @@ -107,7 +107,7 @@ SBAddress sb_addr; lldb::InstructionSP inst_sp(GetOpaque()); if (inst_sp && inst_sp->GetAddress().IsValid()) - sb_addr.SetAddress(&inst_sp->GetAddress()); + sb_addr.SetAddress(inst_sp->GetAddress()); return LLDB_RECORD_RESULT(sb_addr); } diff --git a/lldb/source/API/SBLineEntry.cpp b/lldb/source/API/SBLineEntry.cpp --- a/lldb/source/API/SBLineEntry.cpp +++ b/lldb/source/API/SBLineEntry.cpp @@ -56,7 +56,7 @@ SBAddress sb_address; if (m_opaque_up) - sb_address.SetAddress(&m_opaque_up->range.GetBaseAddress()); + sb_address.SetAddress(m_opaque_up->range.GetBaseAddress()); return LLDB_RECORD_RESULT(sb_address); } @@ -66,7 +66,7 @@ SBAddress sb_address; if (m_opaque_up) { - sb_address.SetAddress(&m_opaque_up->range.GetBaseAddress()); + sb_address.SetAddress(m_opaque_up->range.GetBaseAddress()); sb_address.OffsetAddress(m_opaque_up->range.GetByteSize()); } return LLDB_RECORD_RESULT(sb_address); diff --git a/lldb/source/API/SBQueueItem.cpp b/lldb/source/API/SBQueueItem.cpp --- a/lldb/source/API/SBQueueItem.cpp +++ b/lldb/source/API/SBQueueItem.cpp @@ -80,7 +80,7 @@ SBAddress result; if (m_queue_item_sp) { - result.SetAddress(&m_queue_item_sp->GetAddress()); + result.SetAddress(m_queue_item_sp->GetAddress()); } return LLDB_RECORD_RESULT(result); } diff --git a/lldb/source/API/SBSymbol.cpp b/lldb/source/API/SBSymbol.cpp --- a/lldb/source/API/SBSymbol.cpp +++ b/lldb/source/API/SBSymbol.cpp @@ -151,7 +151,7 @@ SBAddress addr; if (m_opaque_ptr && m_opaque_ptr->ValueIsAddress()) { - addr.SetAddress(&m_opaque_ptr->GetAddressRef()); + addr.SetAddress(m_opaque_ptr->GetAddressRef()); } return LLDB_RECORD_RESULT(addr); } @@ -163,7 +163,7 @@ if (m_opaque_ptr && m_opaque_ptr->ValueIsAddress()) { lldb::addr_t range_size = m_opaque_ptr->GetByteSize(); if (range_size > 0) { - addr.SetAddress(&m_opaque_ptr->GetAddressRef()); + addr.SetAddress(m_opaque_ptr->GetAddressRef()); addr->Slide(m_opaque_ptr->GetByteSize()); } } diff --git a/lldb/source/API/SBValue.cpp b/lldb/source/API/SBValue.cpp --- a/lldb/source/API/SBValue.cpp +++ b/lldb/source/API/SBValue.cpp @@ -1356,7 +1356,7 @@ } } - return LLDB_RECORD_RESULT(SBAddress(new Address(addr))); + return LLDB_RECORD_RESULT(SBAddress(Address(addr))); } lldb::SBData SBValue::GetPointeeData(uint32_t item_idx, uint32_t item_count) {