29 :
ObjectFile(module_sp, &module_spec.GetFileSpec(), 0,
31 m_arch(module_spec.GetArchitecture()), m_uuid(module_spec.GetUUID()),
32 m_base(base), m_size(size) {
33 m_symtab_up = std::make_unique<lldb_private::Symtab>(
this);
38 m_sections_up = std::make_unique<lldb_private::SectionList>();
39 auto section_sp = std::make_shared<lldb_private::Section>(
44 section_sp->SetPermissions(ePermissionsReadable | ePermissionsExecutable);
46 unified_section_list.
AddSection(std::move(section_sp));
54 bool value_is_offset) {
55 assert(!value_is_offset);
68 s->
Format(
"Placeholder object file for {0} loaded at [{1:x}-{2:x})\n",
#define LLDB_PLUGIN_DEFINE(PluginName)
A minimal ObjectFile implementation providing a dummy object file for the cases when the real module ...
bool SetLoadAddress(lldb_private::Target &target, lldb::addr_t value, bool value_is_offset) override
Sets the load address for an entire module, assuming a rigid slide of sections, if possible in the im...
lldb_private::Address GetBaseAddress() override
Returns base address of this object file.
void CreateSections(lldb_private::SectionList &unified_section_list) override
void Dump(lldb_private::Stream *s) override
Dump a description of this object to a Stream.
A section + offset based address class.
A uniqued constant string class.
lldb::ModuleSP GetModule() const
Get const accessor for the module pointer.
A plug-in interface definition class for object file parsers.
std::unique_ptr< lldb_private::SectionList > m_sections_up
virtual FileSpec & GetFileSpec()
Get accessor to the object file specification.
size_t AddSection(const lldb::SectionSP §ion_sp)
bool SetSectionLoadAddress(const lldb::SectionSP §ion_sp, lldb::addr_t load_addr, bool warn_multiple=false)
A stream class that can stream formatted output to a file.
void Format(const char *format, Args &&... args)
SectionLoadList & GetSectionLoadList()
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::Module > ModuleSP