|
LLVM
4.0.0
|
#include <Binary.h>
Public Member Functions | |
| virtual | ~Binary () |
| StringRef | getData () const |
| StringRef | getFileName () const |
| MemoryBufferRef | getMemoryBufferRef () const |
| unsigned int | getType () const |
| bool | isObject () const |
| bool | isSymbolic () const |
| bool | isArchive () const |
| bool | isMachOUniversalBinary () const |
| bool | isELF () const |
| bool | isMachO () const |
| bool | isCOFF () const |
| bool | isWasm () const |
| bool | isCOFFImportFile () const |
| bool | isIR () const |
| bool | isModuleSummaryIndex () const |
| bool | isLittleEndian () const |
Protected Types | |
| enum | { ID_Archive, ID_MachOUniversalBinary, ID_COFFImportFile, ID_IR, ID_ModuleSummaryIndex, ID_StartObjects, ID_COFF, ID_ELF32L, ID_ELF32B, ID_ELF64L, ID_ELF64B, ID_MachO32L, ID_MachO32B, ID_MachO64L, ID_MachO64B, ID_Wasm, ID_EndObjects } |
Protected Member Functions | |
| Binary (unsigned int Type, MemoryBufferRef Source) | |
Static Protected Member Functions | |
| static unsigned int | getELFType (bool isLE, bool is64Bits) |
| static unsigned int | getMachOType (bool isLE, bool is64Bits) |
Protected Attributes | |
| MemoryBufferRef | Data |
|
protected |
|
protected |
Definition at line 30 of file Binary.cpp.
|
virtual |
Definition at line 28 of file Binary.cpp.
| StringRef Binary::getData | ( | ) | const |
Definition at line 33 of file Binary.cpp.
References Data, and llvm::MemoryBufferRef::getBuffer().
Referenced by llvm::object::ArchiveMemberHeader::ArchiveMemberHeader(), llvm::object::Archive::Child::Child(), llvm::object::ArchiveMemberHeader::getAccessMode(), llvm::object::ArchiveMemberHeader::getGID(), llvm::object::ArchiveMemberHeader::getLastModified(), llvm::object::ArchiveMemberHeader::getName(), llvm::object::ArchiveMemberHeader::getRawName(), llvm::object::MachOObjectFile::getSectionContents(), llvm::object::MachOObjectFile::getSectionSize(), llvm::object::ArchiveMemberHeader::getSize(), llvm::object::MachOObjectFile::getStringTableData(), llvm::object::MachOObjectFile::getSymbolName(), llvm::object::ArchiveMemberHeader::getUID(), llvm::object::MachOUniversalBinary::MachOUniversalBinary(), llvm::object::MachOUniversalBinary::ObjectForArch::ObjectForArch(), llvm::object::MachOObjectFile::ReadULEB128s(), and llvm::object::WasmObjectFile::WasmObjectFile().
| StringRef Binary::getFileName | ( | ) | const |
Definition at line 35 of file Binary.cpp.
References Data, and llvm::MemoryBufferRef::getBufferIdentifier().
Referenced by llvm::RuntimeDyldImpl::emitCommonSymbols(), llvm::RuntimeDyldImpl::emitSection(), llvm::RuntimeDyldELF::finalizeLoad(), llvm::object::IRObjectFile::findBitcodeInObject(), llvm::object::ModuleSummaryIndexObjectFile::findBitcodeInObject(), and llvm::RuntimeDyldImpl::loadObjectImpl().
|
inlinestaticprotected |
Definition at line 74 of file Binary.h.
References ID_MachO32B, ID_MachO32L, ID_MachO64B, and ID_MachO64L.
Referenced by llvm::object::MachOObjectFile::is64Bit().
| MemoryBufferRef Binary::getMemoryBufferRef | ( | ) | const |
Definition at line 37 of file Binary.cpp.
References Data.
Referenced by llvm::object::Archive::Child::getAsBinary().
|
inline |
Definition at line 89 of file Binary.h.
Referenced by llvm::object::ELFObjectFile< ELFT >::classof(), and llvm::object::MachOObjectFile::is64Bit().
|
inline |
Definition at line 100 of file Binary.h.
References ID_Archive.
Referenced by llvm::object::Archive::classof().
|
inline |
Definition at line 116 of file Binary.h.
References ID_COFF.
Referenced by llvm::object::COFFObjectFile::classof(), llvm::RuntimeDyldCOFF::isCompatibleFile(), and llvm::RuntimeDyld::loadObject().
|
inline |
Definition at line 122 of file Binary.h.
References ID_COFFImportFile.
Referenced by llvm::object::COFFImportFile::classof().
|
inline |
Definition at line 108 of file Binary.h.
References ID_ELF32L, and ID_ELF64B.
Referenced by llvm::object::ELFObjectFileBase::classof(), llvm::RuntimeDyldELF::isCompatibleFile(), and llvm::RuntimeDyld::loadObject().
|
inline |
Definition at line 126 of file Binary.h.
References ID_IR.
Referenced by llvm::object::IRObjectFile::classof(), and isSymbolic().
|
inline |
Definition at line 132 of file Binary.h.
References ID_ELF32B, ID_ELF64B, ID_MachO32B, and ID_MachO64B.
Referenced by llvm::symbolize::SymbolizableObjectFile::create(), llvm::object::MachOObjectFile::getPlainRelocationExternal(), llvm::object::MachOObjectFile::getPlainRelocationSymbolNum(), and llvm::RuntimeDyldImpl::loadObjectImpl().
|
inline |
Definition at line 112 of file Binary.h.
References ID_MachO32L, and ID_MachO64B.
Referenced by llvm::object::MachOObjectFile::classof(), llvm::RuntimeDyldMachO::isCompatibleFile(), and llvm::RuntimeDyld::loadObject().
|
inline |
Definition at line 104 of file Binary.h.
References ID_MachOUniversalBinary.
Referenced by llvm::object::MachOUniversalBinary::classof().
|
inline |
Definition at line 130 of file Binary.h.
References ID_ModuleSummaryIndex.
Referenced by llvm::object::ModuleSummaryIndexObjectFile::classof().
|
inline |
Definition at line 92 of file Binary.h.
References ID_EndObjects, and ID_StartObjects.
Referenced by llvm::object::ObjectFile::classof(), and isSymbolic().
|
inline |
Definition at line 96 of file Binary.h.
References isIR(), and isObject().
Referenced by llvm::object::SymbolicFile::classof().
|
inline |
Definition at line 120 of file Binary.h.
References ID_Wasm.
Referenced by llvm::object::WasmObjectFile::classof().
|
protected |
Definition at line 37 of file Binary.h.
Referenced by llvm::object::Archive::Archive(), llvm::object::ObjectFile::base(), llvm::object::Archive::child_begin(), llvm::object::COFFObjectFile::COFFObjectFile(), llvm::object::ObjectFile::createObjectFile(), llvm::object::SymbolicFile::createSymbolicFile(), llvm::object::Archive::Child::getBuffer(), llvm::object::Archive::Child::getChildOffset(), llvm::object::COFFImportFile::getCOFFImportHeader(), getData(), getFileName(), llvm::object::ImportDirectoryEntryRef::getImportTableEntry(), getMemoryBufferRef(), llvm::object::Archive::Child::getNext(), llvm::object::COFFObjectFile::getRelocations(), llvm::object::Archive::Child::getSize(), llvm::object::Archive::isEmpty(), llvm::object::MachOUniversalBinary::MachOUniversalBinary(), llvm::object::COFFImportFile::printSymbolName(), llvm::object::COFFObjectFile::section_rel_begin(), llvm::object::COFFObjectFile::section_rel_end(), and llvm::object::COFFObjectFile::toSymb().
1.8.6