[Lldb-commits] [lldb] f2ea125 - [lldb] Change CreateMemoryInstance to take a WritableDataBuffer
Jonas Devlieghere via lldb-commits
lldb-commits at lists.llvm.org
Tue Apr 5 13:46:48 PDT 2022
Author: Jonas Devlieghere
Date: 2022-04-05T13:46:41-07:00
New Revision: f2ea125ea09d9e4512fa08a89eac5e0069d83738
URL: https://github.com/llvm/llvm-project/commit/f2ea125ea09d9e4512fa08a89eac5e0069d83738
DIFF: https://github.com/llvm/llvm-project/commit/f2ea125ea09d9e4512fa08a89eac5e0069d83738.diff
LOG: [lldb] Change CreateMemoryInstance to take a WritableDataBuffer
Change the CreateMemoryInstance interface to take a WritableDataBuffer.
Differential revision: https://reviews.llvm.org/D123073
Added:
Modified:
lldb/include/lldb/Symbol/ObjectFile.h
lldb/include/lldb/lldb-private-interfaces.h
lldb/source/Core/Module.cpp
lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp
lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.h
lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp
lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h
lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.cpp
lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.h
lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp
lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.h
lldb/source/Symbol/ObjectFile.cpp
Removed:
################################################################################
diff --git a/lldb/include/lldb/Symbol/ObjectFile.h b/lldb/include/lldb/Symbol/ObjectFile.h
index 73202a2d6ec55..c61e3c138944a 100644
--- a/lldb/include/lldb/Symbol/ObjectFile.h
+++ b/lldb/include/lldb/Symbol/ObjectFile.h
@@ -116,10 +116,10 @@ class ObjectFile : public std::enable_shared_from_this<ObjectFile>,
/// more than one architecture or object.
ObjectFile(const lldb::ModuleSP &module_sp, const FileSpec *file_spec_ptr,
lldb::offset_t file_offset, lldb::offset_t length,
- const lldb::DataBufferSP &data_sp, lldb::offset_t data_offset);
+ lldb::DataBufferSP data_sp, lldb::offset_t data_offset);
ObjectFile(const lldb::ModuleSP &module_sp, const lldb::ProcessSP &process_sp,
- lldb::addr_t header_addr, lldb::DataBufferSP &data_sp);
+ lldb::addr_t header_addr, lldb::DataBufferSP data_sp);
/// Destructor.
///
@@ -183,7 +183,7 @@ class ObjectFile : public std::enable_shared_from_this<ObjectFile>,
static lldb::ObjectFileSP FindPlugin(const lldb::ModuleSP &module_sp,
const lldb::ProcessSP &process_sp,
lldb::addr_t header_addr,
- lldb::DataBufferSP &file_data_sp);
+ lldb::WritableDataBufferSP file_data_sp);
static size_t
GetModuleSpecifications(const FileSpec &file, lldb::offset_t file_offset,
diff --git a/lldb/include/lldb/lldb-private-interfaces.h b/lldb/include/lldb/lldb-private-interfaces.h
index 33b902b378f18..426fede9a7433 100644
--- a/lldb/include/lldb/lldb-private-interfaces.h
+++ b/lldb/include/lldb/lldb-private-interfaces.h
@@ -51,7 +51,7 @@ typedef ObjectFile *(*ObjectFileCreateInstance)(const lldb::ModuleSP &module_sp,
lldb::offset_t file_offset,
lldb::offset_t length);
typedef ObjectFile *(*ObjectFileCreateMemoryInstance)(
- const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t offset);
typedef bool (*ObjectFileSaveCore)(const lldb::ProcessSP &process_sp,
const FileSpec &outfile,
diff --git a/lldb/source/Core/Module.cpp b/lldb/source/Core/Module.cpp
index 8dbbac7187edd..3adfefb6e37d7 100644
--- a/lldb/source/Core/Module.cpp
+++ b/lldb/source/Core/Module.cpp
@@ -304,15 +304,15 @@ ObjectFile *Module::GetMemoryObjectFile(const lldb::ProcessSP &process_sp,
std::lock_guard<std::recursive_mutex> guard(m_mutex);
if (process_sp) {
m_did_load_objfile = true;
- auto data_up = std::make_unique<DataBufferHeap>(size_to_read, 0);
+ std::shared_ptr<DataBufferHeap> data_sp =
+ std::make_shared<DataBufferHeap>(size_to_read, 0);
Status readmem_error;
const size_t bytes_read =
- process_sp->ReadMemory(header_addr, data_up->GetBytes(),
- data_up->GetByteSize(), readmem_error);
+ process_sp->ReadMemory(header_addr, data_sp->GetBytes(),
+ data_sp->GetByteSize(), readmem_error);
if (bytes_read < size_to_read)
- data_up->SetByteSize(bytes_read);
- if (data_up->GetByteSize() > 0) {
- DataBufferSP data_sp(data_up.release());
+ data_sp->SetByteSize(bytes_read);
+ if (data_sp->GetByteSize() > 0) {
m_objfile_sp = ObjectFile::FindPlugin(shared_from_this(), process_sp,
header_addr, data_sp);
if (m_objfile_sp) {
diff --git a/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp b/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp
index 6b208c220221b..c591a4a7534ca 100644
--- a/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp
+++ b/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.cpp
@@ -84,7 +84,7 @@ ObjectFile *ObjectFileBreakpad::CreateInstance(
}
ObjectFile *ObjectFileBreakpad::CreateMemoryInstance(
- const ModuleSP &module_sp, DataBufferSP data_sp,
+ const ModuleSP &module_sp, WritableDataBufferSP data_sp,
const ProcessSP &process_sp, addr_t header_addr) {
return nullptr;
}
diff --git a/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.h b/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.h
index 155ad9631be32..074d667c1ca57 100644
--- a/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.h
+++ b/lldb/source/Plugins/ObjectFile/Breakpad/ObjectFileBreakpad.h
@@ -32,7 +32,7 @@ class ObjectFileBreakpad : public ObjectFile {
lldb::offset_t file_offset, lldb::offset_t length);
static ObjectFile *CreateMemoryInstance(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP data_sp,
+ lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp,
lldb::addr_t header_addr);
diff --git a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
index ce71c71b71371..684d070c54d26 100644
--- a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
+++ b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
@@ -390,7 +390,7 @@ ObjectFile *ObjectFileELF::CreateInstance(const lldb::ModuleSP &module_sp,
}
ObjectFile *ObjectFileELF::CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr) {
if (data_sp && data_sp->GetByteSize() > (llvm::ELF::EI_NIDENT)) {
const uint8_t *magic = data_sp->GetBytes();
@@ -639,7 +639,7 @@ size_t ObjectFileELF::GetModuleSpecifications(
// ObjectFile protocol
ObjectFileELF::ObjectFileELF(const lldb::ModuleSP &module_sp,
- DataBufferSP &data_sp, lldb::offset_t data_offset,
+ DataBufferSP data_sp, lldb::offset_t data_offset,
const FileSpec *file, lldb::offset_t file_offset,
lldb::offset_t length)
: ObjectFile(module_sp, file, file_offset, length, data_sp, data_offset) {
@@ -648,7 +648,7 @@ ObjectFileELF::ObjectFileELF(const lldb::ModuleSP &module_sp,
}
ObjectFileELF::ObjectFileELF(const lldb::ModuleSP &module_sp,
- DataBufferSP &header_data_sp,
+ DataBufferSP header_data_sp,
const lldb::ProcessSP &process_sp,
addr_t header_addr)
: ObjectFile(module_sp, process_sp, header_addr, header_data_sp) {}
diff --git a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
index d55d88697f4bc..5deb2c7d163cc 100644
--- a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
+++ b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
@@ -73,7 +73,7 @@ class ObjectFileELF : public lldb_private::ObjectFile {
lldb::offset_t file_offset, lldb::offset_t length);
static lldb_private::ObjectFile *CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
static size_t GetModuleSpecifications(const lldb_private::FileSpec &file,
@@ -164,12 +164,12 @@ class ObjectFileELF : public lldb_private::ObjectFile {
uint64_t Offset);
private:
- ObjectFileELF(const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
+ ObjectFileELF(const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
lldb::offset_t data_offset, const lldb_private::FileSpec *file,
lldb::offset_t offset, lldb::offset_t length);
ObjectFileELF(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP &header_data_sp,
+ lldb::DataBufferSP header_data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
typedef std::vector<elf::ELFProgramHeader> ProgramHeaderColl;
diff --git a/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp b/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp
index 97fac5cc70631..2ea83e4b68831 100644
--- a/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp
+++ b/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.cpp
@@ -65,7 +65,7 @@ ObjectFile *ObjectFileJIT::CreateInstance(const lldb::ModuleSP &module_sp,
}
ObjectFile *ObjectFileJIT::CreateMemoryInstance(const lldb::ModuleSP &module_sp,
- DataBufferSP data_sp,
+ WritableDataBufferSP data_sp,
const ProcessSP &process_sp,
lldb::addr_t header_addr) {
// JIT'ed object file is backed by the ObjectFileJITDelegate, never read from
diff --git a/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h b/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h
index 8489d4924ef00..91fdd205eb200 100644
--- a/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h
+++ b/lldb/source/Plugins/ObjectFile/JIT/ObjectFileJIT.h
@@ -38,7 +38,7 @@ class ObjectFileJIT : public lldb_private::ObjectFile {
lldb::offset_t file_offset, lldb::offset_t length);
static lldb_private::ObjectFile *CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
static size_t GetModuleSpecifications(const lldb_private::FileSpec &file,
diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
index 211eaa00e217e..3de3ed2f84b79 100644
--- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
+++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
@@ -848,7 +848,7 @@ ObjectFile *ObjectFileMachO::CreateInstance(const lldb::ModuleSP &module_sp,
}
ObjectFile *ObjectFileMachO::CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, WritableDataBufferSP data_sp,
const ProcessSP &process_sp, lldb::addr_t header_addr) {
if (ObjectFileMachO::MagicBytesMatch(data_sp, 0, data_sp->GetByteSize())) {
std::unique_ptr<ObjectFile> objfile_up(
@@ -929,7 +929,7 @@ ConstString ObjectFileMachO::GetSectionNameEHFrame() {
return g_section_name_eh_frame;
}
-bool ObjectFileMachO::MagicBytesMatch(DataBufferSP &data_sp,
+bool ObjectFileMachO::MagicBytesMatch(DataBufferSP data_sp,
lldb::addr_t data_offset,
lldb::addr_t data_length) {
DataExtractor data;
@@ -940,7 +940,7 @@ bool ObjectFileMachO::MagicBytesMatch(DataBufferSP &data_sp,
}
ObjectFileMachO::ObjectFileMachO(const lldb::ModuleSP &module_sp,
- DataBufferSP &data_sp,
+ DataBufferSP data_sp,
lldb::offset_t data_offset,
const FileSpec *file,
lldb::offset_t file_offset,
@@ -954,7 +954,7 @@ ObjectFileMachO::ObjectFileMachO(const lldb::ModuleSP &module_sp,
}
ObjectFileMachO::ObjectFileMachO(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP &header_data_sp,
+ lldb::WritableDataBufferSP header_data_sp,
const lldb::ProcessSP &process_sp,
lldb::addr_t header_addr)
: ObjectFile(module_sp, process_sp, header_addr, header_data_sp),
diff --git a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
index aefc1fcaee8a8..b4f4ba6242a16 100644
--- a/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
+++ b/lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.h
@@ -22,12 +22,13 @@
// will export the ObjectFile protocol
class ObjectFileMachO : public lldb_private::ObjectFile {
public:
- ObjectFileMachO(const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
+ ObjectFileMachO(const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
lldb::offset_t data_offset,
const lldb_private::FileSpec *file, lldb::offset_t offset,
lldb::offset_t length);
- ObjectFileMachO(const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
+ ObjectFileMachO(const lldb::ModuleSP &module_sp,
+ lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
~ObjectFileMachO() override = default;
@@ -49,7 +50,7 @@ class ObjectFileMachO : public lldb_private::ObjectFile {
lldb::offset_t file_offset, lldb::offset_t length);
static lldb_private::ObjectFile *CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
static size_t GetModuleSpecifications(const lldb_private::FileSpec &file,
@@ -64,7 +65,7 @@ class ObjectFileMachO : public lldb_private::ObjectFile {
lldb::SaveCoreStyle &core_style,
lldb_private::Status &error);
- static bool MagicBytesMatch(lldb::DataBufferSP &data_sp, lldb::addr_t offset,
+ static bool MagicBytesMatch(lldb::DataBufferSP data_sp, lldb::addr_t offset,
lldb::addr_t length);
// LLVM RTTI support
diff --git a/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp b/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
index bfa6d9e20497f..17b37afe557d9 100644
--- a/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
+++ b/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
@@ -40,7 +40,7 @@ ObjectFile *ObjectFileMinidump::CreateInstance(
}
ObjectFile *ObjectFileMinidump::CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, WritableDataBufferSP data_sp,
const ProcessSP &process_sp, lldb::addr_t header_addr) {
return nullptr;
}
diff --git a/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h b/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
index f055d64bf440d..b5c40445fe742 100644
--- a/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
+++ b/lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.h
@@ -43,7 +43,7 @@ class ObjectFileMinidump : public lldb_private::PluginInterface {
lldb::offset_t offset, lldb::offset_t length);
static lldb_private::ObjectFile *CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
static size_t GetModuleSpecifications(const lldb_private::FileSpec &file,
diff --git a/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.cpp b/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.cpp
index 3981e1be0b726..1c10efed95640 100644
--- a/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.cpp
+++ b/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.cpp
@@ -98,7 +98,7 @@ ObjectFilePDB::CreateInstance(const ModuleSP &module_sp, DataBufferSP data_sp,
}
ObjectFile *ObjectFilePDB::CreateMemoryInstance(const ModuleSP &module_sp,
- DataBufferSP data_sp,
+ WritableDataBufferSP data_sp,
const ProcessSP &process_sp,
addr_t header_addr) {
return nullptr;
diff --git a/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.h b/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.h
index f516e1cd0760a..c06e72650e011 100644
--- a/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.h
+++ b/lldb/source/Plugins/ObjectFile/PDB/ObjectFilePDB.h
@@ -36,7 +36,7 @@ class ObjectFilePDB : public ObjectFile {
lldb::offset_t file_offset, lldb::offset_t length);
static ObjectFile *CreateMemoryInstance(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP data_sp,
+ lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp,
lldb::addr_t header_addr);
diff --git a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
index 1238b32f8fe9a..e07b2edd2b173 100644
--- a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
+++ b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
@@ -111,7 +111,7 @@ ObjectFile *ObjectFilePECOFF::CreateInstance(
}
ObjectFile *ObjectFilePECOFF::CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr) {
if (!data_sp || !ObjectFilePECOFF::MagicBytesMatch(data_sp))
return nullptr;
@@ -189,7 +189,7 @@ bool ObjectFilePECOFF::SaveCore(const lldb::ProcessSP &process_sp,
return SaveMiniDump(process_sp, outfile, error);
}
-bool ObjectFilePECOFF::MagicBytesMatch(DataBufferSP &data_sp) {
+bool ObjectFilePECOFF::MagicBytesMatch(DataBufferSP data_sp) {
DataExtractor data(data_sp, eByteOrderLittle, 4);
lldb::offset_t offset = 0;
uint16_t magic = data.GetU16(&offset);
@@ -234,7 +234,7 @@ bool ObjectFilePECOFF::CreateBinary() {
}
ObjectFilePECOFF::ObjectFilePECOFF(const lldb::ModuleSP &module_sp,
- DataBufferSP &data_sp,
+ DataBufferSP data_sp,
lldb::offset_t data_offset,
const FileSpec *file,
lldb::offset_t file_offset,
@@ -247,7 +247,7 @@ ObjectFilePECOFF::ObjectFilePECOFF(const lldb::ModuleSP &module_sp,
}
ObjectFilePECOFF::ObjectFilePECOFF(const lldb::ModuleSP &module_sp,
- DataBufferSP &header_data_sp,
+ WritableDataBufferSP header_data_sp,
const lldb::ProcessSP &process_sp,
addr_t header_addr)
: ObjectFile(module_sp, process_sp, header_addr, header_data_sp),
diff --git a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
index 44e9271d0b5b4..9f1adb5e484a5 100644
--- a/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
+++ b/lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.h
@@ -41,13 +41,13 @@ class ObjectFilePECOFF : public lldb_private::ObjectFile {
MachineWcemIpsv2 = 0x169
};
- ObjectFilePECOFF(const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
+ ObjectFilePECOFF(const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
lldb::offset_t data_offset,
const lldb_private::FileSpec *file,
lldb::offset_t file_offset, lldb::offset_t length);
ObjectFilePECOFF(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP &header_data_sp,
+ lldb::WritableDataBufferSP header_data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
~ObjectFilePECOFF() override;
@@ -67,7 +67,7 @@ class ObjectFilePECOFF : public lldb_private::ObjectFile {
lldb::offset_t offset, lldb::offset_t length);
static lldb_private::ObjectFile *CreateMemoryInstance(
- const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
+ const lldb::ModuleSP &module_sp, lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
static size_t GetModuleSpecifications(const lldb_private::FileSpec &file,
@@ -82,7 +82,7 @@ class ObjectFilePECOFF : public lldb_private::ObjectFile {
lldb::SaveCoreStyle &core_style,
lldb_private::Status &error);
- static bool MagicBytesMatch(lldb::DataBufferSP &data_sp);
+ static bool MagicBytesMatch(lldb::DataBufferSP data_sp);
static lldb::SymbolType MapSymbolType(uint16_t coff_symbol_type);
diff --git a/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp b/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp
index d0863590c31f8..58be1d0c7dbe4 100644
--- a/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp
+++ b/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp
@@ -141,7 +141,7 @@ ObjectFileWasm::CreateInstance(const ModuleSP &module_sp, DataBufferSP data_sp,
}
ObjectFile *ObjectFileWasm::CreateMemoryInstance(const ModuleSP &module_sp,
- DataBufferSP data_sp,
+ WritableDataBufferSP data_sp,
const ProcessSP &process_sp,
addr_t header_addr) {
if (!ValidateModuleHeader(data_sp))
@@ -227,7 +227,7 @@ size_t ObjectFileWasm::GetModuleSpecifications(
return 1;
}
-ObjectFileWasm::ObjectFileWasm(const ModuleSP &module_sp, DataBufferSP &data_sp,
+ObjectFileWasm::ObjectFileWasm(const ModuleSP &module_sp, DataBufferSP data_sp,
offset_t data_offset, const FileSpec *file,
offset_t offset, offset_t length)
: ObjectFile(module_sp, file, offset, length, data_sp, data_offset),
@@ -236,7 +236,7 @@ ObjectFileWasm::ObjectFileWasm(const ModuleSP &module_sp, DataBufferSP &data_sp,
}
ObjectFileWasm::ObjectFileWasm(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP &header_data_sp,
+ lldb::WritableDataBufferSP header_data_sp,
const lldb::ProcessSP &process_sp,
lldb::addr_t header_addr)
: ObjectFile(module_sp, process_sp, header_addr, header_data_sp),
diff --git a/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.h b/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.h
index d6024ba014bb4..5676030f955eb 100644
--- a/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.h
+++ b/lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.h
@@ -35,7 +35,7 @@ class ObjectFileWasm : public ObjectFile {
lldb::offset_t file_offset, lldb::offset_t length);
static ObjectFile *CreateMemoryInstance(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP data_sp,
+ lldb::WritableDataBufferSP data_sp,
const lldb::ProcessSP &process_sp,
lldb::addr_t header_addr);
@@ -111,11 +111,11 @@ class ObjectFileWasm : public ObjectFile {
llvm::Optional<FileSpec> GetExternalDebugInfoFileSpec();
private:
- ObjectFileWasm(const lldb::ModuleSP &module_sp, lldb::DataBufferSP &data_sp,
+ ObjectFileWasm(const lldb::ModuleSP &module_sp, lldb::DataBufferSP data_sp,
lldb::offset_t data_offset, const FileSpec *file,
lldb::offset_t offset, lldb::offset_t length);
ObjectFileWasm(const lldb::ModuleSP &module_sp,
- lldb::DataBufferSP &header_data_sp,
+ lldb::WritableDataBufferSP header_data_sp,
const lldb::ProcessSP &process_sp, lldb::addr_t header_addr);
/// Wasm section decoding routines.
diff --git a/lldb/source/Symbol/ObjectFile.cpp b/lldb/source/Symbol/ObjectFile.cpp
index b3c0fd452204b..6d4fb22631bc6 100644
--- a/lldb/source/Symbol/ObjectFile.cpp
+++ b/lldb/source/Symbol/ObjectFile.cpp
@@ -35,7 +35,7 @@ size_t ObjectFile::g_initial_bytes_to_read = 512;
static ObjectFileSP
CreateObjectFromContainer(const lldb::ModuleSP &module_sp, const FileSpec *file,
lldb::offset_t file_offset, lldb::offset_t file_size,
- DataBufferSP &data_sp, lldb::offset_t &data_offset) {
+ DataBufferSP data_sp, lldb::offset_t &data_offset) {
ObjectContainerCreateInstance callback;
for (uint32_t idx = 0;
(callback = PluginManager::GetObjectContainerCreateCallbackAtIndex(
@@ -152,7 +152,7 @@ ObjectFile::FindPlugin(const lldb::ModuleSP &module_sp, const FileSpec *file,
ObjectFileSP ObjectFile::FindPlugin(const lldb::ModuleSP &module_sp,
const ProcessSP &process_sp,
lldb::addr_t header_addr,
- DataBufferSP &data_sp) {
+ WritableDataBufferSP data_sp) {
ObjectFileSP object_file_sp;
if (module_sp) {
@@ -241,8 +241,7 @@ size_t ObjectFile::GetModuleSpecifications(
ObjectFile::ObjectFile(const lldb::ModuleSP &module_sp,
const FileSpec *file_spec_ptr,
lldb::offset_t file_offset, lldb::offset_t length,
- const lldb::DataBufferSP &data_sp,
- lldb::offset_t data_offset)
+ lldb::DataBufferSP data_sp, lldb::offset_t data_offset)
: ModuleChild(module_sp),
m_file(), // This file could be
diff erent from the original module's file
m_type(eTypeInvalid), m_strata(eStrataInvalid),
@@ -265,7 +264,7 @@ ObjectFile::ObjectFile(const lldb::ModuleSP &module_sp,
ObjectFile::ObjectFile(const lldb::ModuleSP &module_sp,
const ProcessSP &process_sp, lldb::addr_t header_addr,
- DataBufferSP &header_data_sp)
+ DataBufferSP header_data_sp)
: ModuleChild(module_sp), m_file(), m_type(eTypeInvalid),
m_strata(eStrataInvalid), m_file_offset(0), m_length(0), m_data(),
m_process_wp(process_sp), m_memory_addr(header_addr), m_sections_up(),
More information about the lldb-commits
mailing list