LLVM: llvm::object::BigArchive Class Reference (original) (raw)

#include "[llvm/Object/Archive.h](include%5F2llvm%5F2Object%5F2Archive%5F8h%5Fsource.html)"

Public Member Functions
LLVM_ABI BigArchive (MemoryBufferRef Source, Error &Err)
uint64_t getFirstChildOffset () const override
uint64_t getLastChildOffset () const
bool isEmpty () const override
bool has32BitGlobalSymtab ()
bool has64BitGlobalSymtab ()
Public Member Functions inherited from llvm::object::Archive
Archive (MemoryBufferRef Source, Error &Err)
Archive (Archive const &)=delete
Archive & operator= (Archive const &)=delete
Kind kind () const
bool isThin () const
child_iterator child_begin (Error &Err, bool SkipInternal=true) const
child_iterator child_end () const
iterator_range< child_iterator > children (Error &Err, bool SkipInternal=true) const
symbol_iterator symbol_begin () const
symbol_iterator symbol_end () const
iterator_range< symbol_iterator > symbols () const
Expected< iterator_range< symbol_iterator > > ec_symbols () const
Expected< std::optional< Child > > findSym (StringRef name) const
bool hasSymbolTable () const
StringRef getSymbolTable () const
StringRef getStringTable () const
uint32_t getNumberOfSymbols () const
uint32_t getNumberOfECSymbols () const
std::vector< std::unique_ptr< MemoryBuffer > > takeThinBuffers ()
std::unique_ptr< AbstractArchiveMemberHeader > createArchiveMemberHeader (const char *RawHeaderPtr, uint64_t Size, Error *Err) const
Public Member Functions inherited from llvm::object::Binary
Binary ()=delete
Binary (const Binary &other)=delete
virtual ~Binary ()
virtual Error initContent ()
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 isTapiUniversal () const
bool isELF () const
bool isMachO () const
bool isCOFF () const
bool isXCOFF () const
bool isWasm () const
bool isOffloadFile () const
bool isCOFFImportFile () const
bool isIR () const
bool isGOFF () const
bool isMinidump () const
bool isTapiFile () const
bool isLittleEndian () const
bool isWinRes () const
bool isDXContainer () const
Triple::ObjectFormatType getTripleObjectFormat () const
Public Attributes
const FixLenHdr * ArFixLenHdr
uint64_t FirstChildOffset = 0
uint64_t LastChildOffset = 0
std::string MergedGlobalSymtabBuf
bool Has32BitGlobalSymtab = false
bool Has64BitGlobalSymtab = false
Additional Inherited Members
Public Types inherited from llvm::object::Archive
enum Kind { K_GNU, K_GNU64, K_BSD, K_DARWIN, K_DARWIN64, K_COFF, K_AIXBIG }
using child_iterator = fallible_iterator<ChildFallibleIterator>
Static Public Member Functions inherited from llvm::object::Archive
static Expected< std::unique_ptr< Archive > > create (MemoryBufferRef Source)
static object::Archive::Kind getDefaultKind ()
static object::Archive::Kind getDefaultKindForTriple (const Triple &T)
static bool classof (Binary const *v)
Static Public Member Functions inherited from llvm::object::Binary
static Error checkOffset (MemoryBufferRef M, uintptr_t Addr, const uint64_t Size)
Static Public Attributes inherited from llvm::object::Archive
static const uint64_t MaxMemberSize = 9999999999
Size field is 10 decimal digits long.
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::Archive
uint64_t getArchiveMagicLen () const
void setFirstRegular (const Child &C)
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::Archive
StringRef SymbolTable
StringRef ECSymbolTable
StringRef StringTable
Protected Attributes inherited from llvm::object::Binary
MemoryBufferRef Data

Definition at line 404 of file Archive.h.

Definition at line 1344 of file Archive.cpp.

References appendGlobalSymbolTableInfo(), llvm::object::Archive::Archive(), ArFixLenHdr, llvm::big, llvm::object::Archive::child_begin(), llvm::object::Archive::child_end(), llvm::object::Binary::Data, llvm::StringRef::data(), FirstChildOffset, llvm::StringRef::getAsInteger(), getFieldRawString(), getGlobalSymtabLocAndSize(), llvm::object::Binary::getMemoryBufferRef(), Has32BitGlobalSymtab, Has64BitGlobalSymtab, I, LastChildOffset, malformedError(), MergedGlobalSymtabBuf, llvm::object::Archive::setFirstRegular(), llvm::SmallVectorTemplateCommon< T, typename >::size(), llvm::object::Archive::StringTable, llvm::Error::success(), llvm::object::Archive::SymbolTable, and llvm::write().

getFirstChildOffset()

uint64_t llvm::object::BigArchive::getFirstChildOffset ( ) const inlineoverridevirtual

getLastChildOffset()

uint64_t llvm::object::BigArchive::getLastChildOffset ( ) const inline

has32BitGlobalSymtab()

bool llvm::object::BigArchive::has32BitGlobalSymtab ( ) inline

has64BitGlobalSymtab()

bool llvm::object::BigArchive::has64BitGlobalSymtab ( ) inline

isEmpty()

bool llvm::object::BigArchive::isEmpty ( ) const inlineoverridevirtual

ArFixLenHdr

FirstChildOffset

uint64_t llvm::object::BigArchive::FirstChildOffset = 0

Has32BitGlobalSymtab

bool llvm::object::BigArchive::Has32BitGlobalSymtab = false

Has64BitGlobalSymtab

bool llvm::object::BigArchive::Has64BitGlobalSymtab = false

LastChildOffset

uint64_t llvm::object::BigArchive::LastChildOffset = 0

MergedGlobalSymtabBuf

std::string llvm::object::BigArchive::MergedGlobalSymtabBuf


The documentation for this class was generated from the following files: