9#ifndef LLDB_SOURCE_PLUGINS_OBJECTCONTAINER_UNIVERSAL_MACH_O_OBJECTCONTAINERUNIVERSALMACHO_H
10#define LLDB_SOURCE_PLUGINS_OBJECTCONTAINER_UNIVERSAL_MACH_O_OBJECTCONTAINERUNIVERSALMACHO_H
34 return "Universal mach-o object container reader.";
104 llvm::MachO::fat_header &header,
105 std::vector<FatArch> &fat_archs);
bool GetArchitectureAtIndex(uint32_t cpu_idx, lldb_private::ArchSpec &arch) const override
Gets the architecture given an index.
size_t GetNumArchitectures() const override
Get the number of architectures in this object file.
static size_t GetModuleSpecifications(const lldb_private::FileSpec &file, lldb::DataBufferSP &data_sp, lldb::offset_t data_offset, lldb::offset_t file_offset, lldb::offset_t length, lldb_private::ModuleSpecList &specs)
static llvm::StringRef GetPluginNameStatic()
llvm::StringRef GetPluginName() override
~ObjectContainerUniversalMachO() override
static bool MagicBytesMatch(const lldb_private::DataExtractor &data)
static llvm::StringRef GetPluginDescriptionStatic()
lldb::ObjectFileSP GetObjectFile(const lldb_private::FileSpec *file) override
Selects an architecture in an object file.
static lldb_private::ObjectContainer * CreateInstance(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)
bool ParseHeader() override
Attempts to parse the object header.
std::vector< FatArch > m_fat_archs
llvm::MachO::fat_header m_header
An architecture specification class.
A plug-in interface definition class for object containers.
std::shared_ptr< lldb_private::ObjectFile > ObjectFileSP
std::shared_ptr< lldb_private::DataBuffer > DataBufferSP
std::shared_ptr< lldb_private::Module > ModuleSP
uint32_t GetCPUType() const
uint32_t GetAlign() const
uint64_t GetOffset() const
FatArch(llvm::MachO::fat_arch_64 arch)
uint32_t GetCPUSubType() const
FatArch(llvm::MachO::fat_arch arch)
const union ObjectContainerUniversalMachO::FatArch::Arch m_arch
llvm::MachO::fat_arch_64 fat_arch_64
llvm::MachO::fat_arch fat_arch
Arch(llvm::MachO::fat_arch arch)
Arch(llvm::MachO::fat_arch_64 arch)