LLVM 22.0.0git
|
#include "llvm/Object/SymbolicFile.h"
Public Types | |
using | basic_symbol_iterator_range = iterator_range<basic_symbol_iterator> |
Static Public Member Functions | |
static Expected< std::unique_ptr< SymbolicFile > > | createSymbolicFile (MemoryBufferRef Object, llvm::file_magic Type, LLVMContext *Context, bool InitContent=true) |
static Expected< std::unique_ptr< SymbolicFile > > | createSymbolicFile (MemoryBufferRef Object) |
static bool | classof (const Binary *v) |
static bool | isSymbolicFile (file_magic Type, const LLVMContext *Context) |
Static Public Member Functions inherited from llvm::object::Binary | |
static Error | checkOffset (MemoryBufferRef M, uintptr_t Addr, const uint64_t Size) |
Additional Inherited Members | |
Protected Types inherited from llvm::object::Binary | |
enum | { ID_Archive , ID_MachOUniversalBinary , ID_COFFImportFile , ID_IR , ID_TapiUniversal , ID_TapiFile , ID_Minidump , ID_WinRes , ID_Offload , ID_StartObjects , ID_COFF , ID_XCOFF32 , ID_XCOFF64 , ID_ELF32L , ID_ELF32B , ID_ELF64L , ID_ELF64B , ID_MachO32L , ID_MachO32B , ID_MachO64L , ID_MachO64B , ID_GOFF , ID_Wasm , ID_DXContainer , ID_EndObjects } |
Protected Member Functions inherited from llvm::object::Binary | |
Binary (unsigned int Type, MemoryBufferRef Source) | |
Static Protected Member Functions inherited from llvm::object::Binary | |
static unsigned int | getELFType (bool isLE, bool is64Bits) |
static unsigned int | getMachOType (bool isLE, bool is64Bits) |
Protected Attributes inherited from llvm::object::Binary | |
MemoryBufferRef | Data |
Definition at line 146 of file SymbolicFile.h.
using llvm::object::SymbolicFile::basic_symbol_iterator_range = iterator_range<basic_symbol_iterator> |
Definition at line 165 of file SymbolicFile.h.
SymbolicFile::SymbolicFile | ( | unsigned int | Type, |
MemoryBufferRef | Source ) |
Definition at line 31 of file SymbolicFile.cpp.
References llvm::object::Binary::Binary().
Referenced by llvm::object::COFFImportFile::COFFImportFile(), llvm::object::ObjectFile::ObjectFile(), and llvm::object::TapiFile::TapiFile().
|
overridedefault |
Definition at line 180 of file SymbolicFile.h.
References llvm::object::Binary::Binary().
|
inlinestatic |
Definition at line 176 of file SymbolicFile.h.
References createSymbolicFile(), and llvm::file_magic::unknown.
|
static |
Definition at line 37 of file SymbolicFile.cpp.
References llvm::file_magic::bitcode, llvm::file_magic::coff_import_library, llvm::file_magic::coff_object, llvm::consumeError(), llvm::object::IRObjectFile::create(), llvm::object::ObjectFile::createObjectFile(), llvm::object::Binary::Data, llvm::file_magic::dxcontainer_object, llvm::file_magic::elf, llvm::file_magic::elf_core, llvm::file_magic::elf_executable, llvm::file_magic::elf_relocatable, llvm::file_magic::elf_shared_object, llvm::errorCodeToError(), llvm::object::IRObjectFile::findBitcodeInObject(), llvm::Expected< T >::get(), llvm::file_magic::goff_object, llvm::identify_magic(), llvm::object::invalid_file_type, isSymbolicFile(), llvm_unreachable, llvm::file_magic::macho_bundle, llvm::file_magic::macho_core, llvm::file_magic::macho_dsym_companion, llvm::file_magic::macho_dynamic_linker, llvm::file_magic::macho_dynamically_linked_shared_lib, llvm::file_magic::macho_dynamically_linked_shared_lib_stub, llvm::file_magic::macho_executable, llvm::file_magic::macho_file_set, llvm::file_magic::macho_fixed_virtual_memory_shared_lib, llvm::file_magic::macho_kext_bundle, llvm::file_magic::macho_object, llvm::file_magic::macho_preload_executable, llvm::file_magic::pecoff_executable, llvm::Expected< T >::takeError(), llvm::file_magic::unknown, llvm::file_magic::wasm_object, llvm::file_magic::xcoff_object_32, and llvm::file_magic::xcoff_object_64.
Referenced by llvm::object::createBinary(), createSymbolicFile(), llvm::NewArchiveMember::detectKindFromObject(), and getSymbolicFile().
|
pure virtual |
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::coff::COFFObjectFile, llvm::objcopy::elf::ELFObjectFile< ELFT >, llvm::object::COFFImportFile, llvm::object::COFFObjectFile, llvm::object::DXContainerObjectFile, llvm::object::ELFObjectFile< ELFT >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::IRObjectFile, llvm::object::MachOObjectFile, llvm::object::TapiFile, llvm::object::WasmObjectFile, and llvm::object::XCOFFObjectFile.
Referenced by llvm::object::ObjectFile::getCommonSymbolSize(), and llvm::object::ObjectFile::getSymbolValue().
|
pure virtual |
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::coff::COFFObjectFile, llvm::objcopy::elf::ELFObjectFile< ELFT >, llvm::object::COFFImportFile, llvm::object::COFFObjectFile, llvm::object::DXContainerObjectFile, llvm::object::ELFObjectFile< ELFT >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::GOFFObjectFile, llvm::object::IRObjectFile, llvm::object::MachOObjectFile, llvm::object::TapiFile, llvm::object::WasmObjectFile, and llvm::object::XCOFFObjectFile.
Referenced by llvm::object::XCOFFSymbolRef::getValue(), and is64BitSymbolicFile().
|
static |
Definition at line 99 of file SymbolicFile.cpp.
References llvm::file_magic::bitcode, llvm::file_magic::coff_import_library, llvm::file_magic::coff_object, llvm::file_magic::dxcontainer_object, llvm::file_magic::elf, llvm::file_magic::elf_core, llvm::file_magic::elf_executable, llvm::file_magic::elf_relocatable, llvm::file_magic::elf_shared_object, llvm::file_magic::goff_object, llvm::file_magic::macho_bundle, llvm::file_magic::macho_core, llvm::file_magic::macho_dsym_companion, llvm::file_magic::macho_dynamic_linker, llvm::file_magic::macho_dynamically_linked_shared_lib, llvm::file_magic::macho_dynamically_linked_shared_lib_stub, llvm::file_magic::macho_executable, llvm::file_magic::macho_file_set, llvm::file_magic::macho_fixed_virtual_memory_shared_lib, llvm::file_magic::macho_kext_bundle, llvm::file_magic::macho_object, llvm::file_magic::macho_preload_executable, llvm::file_magic::pecoff_executable, llvm::file_magic::wasm_object, llvm::file_magic::xcoff_object_32, and llvm::file_magic::xcoff_object_64.
Referenced by createSymbolicFile(), and getSymbolicFile().
|
pure virtual |
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::coff::COFFObjectFile, llvm::objcopy::elf::ELFObjectFile< ELFT >, llvm::object::COFFImportFile, llvm::object::COFFObjectFile, llvm::object::DXContainerObjectFile, llvm::object::ELFObjectFile< ELFT >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::GOFFObjectFile, llvm::object::IRObjectFile, llvm::object::MachOObjectFile, llvm::object::TapiFile, llvm::object::WasmObjectFile, and llvm::object::XCOFFObjectFile.
|
pure virtual |
|
pure virtual |
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::coff::COFFObjectFile, llvm::objcopy::elf::ELFObjectFile< ELFT >, llvm::object::COFFImportFile, llvm::object::COFFObjectFile, llvm::object::DXContainerObjectFile, llvm::object::ELFObjectFile< ELFT >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::GOFFObjectFile, llvm::object::IRObjectFile, llvm::object::MachOObjectFile, llvm::object::TapiFile, llvm::object::WasmObjectFile, and llvm::object::XCOFFObjectFile.
Referenced by llvm::RuntimeDyldImpl::computeTotalAllocSize(), llvm::RuntimeDyldImpl::loadObjectImpl(), llvm::object::ELFObjectFileBase::symbols(), llvm::object::ObjectFile::symbols(), and symbols().
|
pure virtual |
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::coff::COFFObjectFile, llvm::objcopy::elf::ELFObjectFile< ELFT >, llvm::object::COFFImportFile, llvm::object::COFFObjectFile, llvm::object::DXContainerObjectFile, llvm::object::ELFObjectFile< ELFT >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32BE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF32LE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64BE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::ELFObjectFile< ELF64LE >, llvm::object::GOFFObjectFile, llvm::object::IRObjectFile, llvm::object::MachOObjectFile, llvm::object::TapiFile, llvm::object::WasmObjectFile, and llvm::object::XCOFFObjectFile.
Referenced by llvm::RuntimeDyldImpl::computeTotalAllocSize(), llvm::object::ELFObjectFileBase::getPltEntries(), getSymbolInfo(), llvm::RuntimeDyldImpl::loadObjectImpl(), llvm::RuntimeDyldCOFFAArch64::processRelocationRef(), llvm::RuntimeDyldCOFFI386::processRelocationRef(), llvm::RuntimeDyldCOFFThumb::processRelocationRef(), llvm::RuntimeDyldCOFFX86_64::processRelocationRef(), llvm::RuntimeDyldELF::processRelocationRef(), llvm::object::ELFObjectFileBase::symbols(), llvm::object::ObjectFile::symbols(), and symbols().
|
inline |
Definition at line 166 of file SymbolicFile.h.
References symbol_begin(), and symbol_end().
Referenced by getSymbols().