class ELFObjectFileBase
Declaration
class ELFObjectFileBase : public ObjectFile { /* full declaration omitted */ };
Description
This class is the base class for all object file types. Concrete instances of this object are created by createObjectFile, which figures out which type to create.
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:51
Inherits from: ObjectFile
Member Variables
Inherited from Binary:
Method Overview
- protected ELFObjectFileBase(unsigned int Type, llvm::MemoryBufferRef Source)
- public static bool classof(const llvm::object::Binary * v)
- private llvm::StringRef getAMDGPUCPUName() const
- private llvm::SubtargetFeatures getARMFeatures() const
- protected virtual llvm::Error getBuildAttributes(llvm::ELFAttributeParser & Attributes) const
- public virtual llvm::object::ELFObjectFileBase::elf_symbol_iterator_range getDynamicSymbolIterators() const
- public virtual uint16_t getEMachine() const
- public virtual uint16_t getEType() const
- public llvm::SubtargetFeatures getFeatures() const
- private llvm::SubtargetFeatures getMIPSFeatures() const
- public virtual unsigned int getPlatformFlags() const
- public std::vector<std::pair<Optional<DataRefImpl>, uint64_t>> getPltAddresses() const
- private llvm::SubtargetFeatures getRISCVFeatures() const
- protected virtual Expected<int64_t> getRelocationAddend(llvm::object::DataRefImpl Rel) const
- protected virtual uint64_t getSectionFlags(llvm::object::DataRefImpl Sec) const
- protected virtual uint64_t getSectionOffset(llvm::object::DataRefImpl Sec) const
- protected virtual uint32_t getSectionType(llvm::object::DataRefImpl Sec) const
- protected virtual uint8_t getSymbolBinding(llvm::object::DataRefImpl Symb) const
- protected virtual uint8_t getSymbolELFType(llvm::object::DataRefImpl Symb) const
- protected virtual uint8_t getSymbolOther(llvm::object::DataRefImpl Symb) const
- protected virtual uint64_t getSymbolSize(llvm::object::DataRefImpl Symb) const
- public Expected<std::vector<BBAddrMap>> readBBAddrMap(Optional<unsigned int> TextSectionIndex = None) const
- public Expected<std::vector<VersionEntry>> readDynsymVersions() const
- public void setARMSubArch(llvm::Triple & TheTriple) const
- public llvm::object::ELFObjectFileBase::elf_symbol_iterator_range symbols() const
- public Optional<llvm::StringRef> tryGetCPUName() const
Inherited from ObjectFile:
- protected base
- public classof
- public createCOFFObjectFile
- public createELFObjectFile
- public createMachOObjectFile
- public createObjectFile
- public createObjectFile
- public createObjectFile
- public createWasmObjectFile
- public createXCOFFObjectFile
- public dynamic_relocation_sections
- public getArch
- public getBytesInAddress
- public getCommonSymbolSize
- protected getCommonSymbolSizeImpl
- public getFeatures
- public getFileFormatName
- protected getRelocatedSection
- protected getRelocationOffset
- protected getRelocationSymbol
- protected getRelocationType
- protected getRelocationTypeName
- protected getSectionAddress
- protected getSectionAlignment
- protected getSectionContents
- protected getSectionIndex
- protected getSectionName
- protected getSectionSize
- public getStartAddress
- protected getSymbolAddress
- protected getSymbolAlignment
- protected getSymbolName
- protected getSymbolSection
- protected getSymbolType
- protected getSymbolValue
- protected getSymbolValueImpl
- protected isBerkeleyData
- protected isBerkeleyText
- protected isDebugSection
- public isReflectionSectionStrippable
- public isRelocatableObject
- protected isSectionBSS
- protected isSectionBitcode
- protected isSectionCompressed
- protected isSectionData
- protected isSectionStripped
- protected isSectionText
- protected isSectionVirtual
- public makeTriple
- public mapDebugSectionName
- protected mapReflectionSectionNameToEnumValue
- protected moveRelocationNext
- protected moveSectionNext
- protected printSymbolName
- public section_begin
- public section_end
- protected section_rel_begin
- protected section_rel_end
- public sections
- public setARMSubArch
- public symbols
- public tryGetCPUName
Inherited from SymbolicFile:
- public classof
- public createSymbolicFile
- public createSymbolicFile
- public getSymbolFlags
- public isSymbolicFile
- public moveSymbolNext
- public printSymbolName
- public symbol_begin
- public symbol_end
- public symbols
Inherited from Binary:
- public checkOffset
- public getData
- protected getELFType
- public getFileName
- protected getMachOType
- public getMemoryBufferRef
- public getTripleObjectFormat
- public getType
- public initContent
- public isArchive
- public isCOFF
- public isCOFFImportFile
- public isELF
- public isIR
- public isLittleEndian
- public isMachO
- public isMachOUniversalBinary
- public isMinidump
- public isObject
- public isOffloadFile
- public isSymbolic
- public isTapiFile
- public isTapiUniversal
- public isWasm
- public isWinRes
- public isXCOFF
Methods
¶ELFObjectFileBase(unsigned int Type,
llvm::MemoryBufferRef Source)
ELFObjectFileBase(unsigned int Type,
llvm::MemoryBufferRef Source)
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:63
Parameters
- unsigned int Type
- llvm::MemoryBufferRef Source
¶static bool classof(const llvm::object::Binary* v)
static bool classof(const llvm::object::Binary* v)
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:87
Parameters
- const llvm::object::Binary* v
¶llvm::StringRef getAMDGPUCPUName() const
llvm::StringRef getAMDGPUCPUName() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:60
¶llvm::SubtargetFeatures getARMFeatures() const
llvm::SubtargetFeatures getARMFeatures() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:57
¶virtual llvm::Error getBuildAttributes(
llvm::ELFAttributeParser& Attributes) const
virtual llvm::Error getBuildAttributes(
llvm::ELFAttributeParser& Attributes) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:75
Parameters
- llvm::ELFAttributeParser& Attributes
¶virtual llvm::object::ELFObjectFileBase::
elf_symbol_iterator_range
getDynamicSymbolIterators() const
virtual llvm::object::ELFObjectFileBase::
elf_symbol_iterator_range
getDynamicSymbolIterators() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:80
¶virtual uint16_t getEMachine() const
virtual uint16_t getEMachine() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:97
¶virtual uint16_t getEType() const
virtual uint16_t getEType() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:95
¶llvm::SubtargetFeatures getFeatures() const
llvm::SubtargetFeatures getFeatures() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:89
¶llvm::SubtargetFeatures getMIPSFeatures() const
llvm::SubtargetFeatures getMIPSFeatures() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:56
¶virtual unsigned int getPlatformFlags() const
virtual unsigned int getPlatformFlags() const
Description
Returns platform-specific object flags, if any.
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:83
¶std::vector<
std::pair<Optional<DataRefImpl>, uint64_t>>
getPltAddresses() const
std::vector<
std::pair<Optional<DataRefImpl>, uint64_t>>
getPltAddresses() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:100
¶llvm::SubtargetFeatures getRISCVFeatures() const
llvm::SubtargetFeatures getRISCVFeatures() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:58
¶virtual Expected<int64_t> getRelocationAddend(
llvm::object::DataRefImpl Rel) const
virtual Expected<int64_t> getRelocationAddend(
llvm::object::DataRefImpl Rel) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:74
Parameters
¶virtual uint64_t getSectionFlags(
llvm::object::DataRefImpl Sec) const
virtual uint64_t getSectionFlags(
llvm::object::DataRefImpl Sec) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:71
Parameters
¶virtual uint64_t getSectionOffset(
llvm::object::DataRefImpl Sec) const
virtual uint64_t getSectionOffset(
llvm::object::DataRefImpl Sec) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:72
Parameters
¶virtual uint32_t getSectionType(
llvm::object::DataRefImpl Sec) const
virtual uint32_t getSectionType(
llvm::object::DataRefImpl Sec) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:70
Parameters
¶virtual uint8_t getSymbolBinding(
llvm::object::DataRefImpl Symb) const
virtual uint8_t getSymbolBinding(
llvm::object::DataRefImpl Symb) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:66
Parameters
¶virtual uint8_t getSymbolELFType(
llvm::object::DataRefImpl Symb) const
virtual uint8_t getSymbolELFType(
llvm::object::DataRefImpl Symb) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:68
Parameters
¶virtual uint8_t getSymbolOther(
llvm::object::DataRefImpl Symb) const
virtual uint8_t getSymbolOther(
llvm::object::DataRefImpl Symb) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:67
Parameters
¶virtual uint64_t getSymbolSize(
llvm::object::DataRefImpl Symb) const
virtual uint64_t getSymbolSize(
llvm::object::DataRefImpl Symb) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:65
Parameters
¶Expected<std::vector<BBAddrMap>> readBBAddrMap(
Optional<unsigned int> TextSectionIndex =
None) const
Expected<std::vector<BBAddrMap>> readBBAddrMap(
Optional<unsigned int> TextSectionIndex =
None) const
Description
Returns a vector of all BB address maps in the object file. When
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:110
Parameters
- Optional<unsigned int> TextSectionIndex = None
¶Expected<std::vector<VersionEntry>>
readDynsymVersions() const
Expected<std::vector<VersionEntry>>
readDynsymVersions() const
Description
Returns a vector containing a symbol version for each dynamic symbol. Returns an empty vector if version sections do not exist.
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:104
¶void setARMSubArch(llvm::Triple& TheTriple) const
void setARMSubArch(llvm::Triple& TheTriple) const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:93
Parameters
- llvm::Triple& TheTriple
¶llvm::object::ELFObjectFileBase::
elf_symbol_iterator_range
symbols() const
llvm::object::ELFObjectFileBase::
elf_symbol_iterator_range
symbols() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:85
¶Optional<llvm::StringRef> tryGetCPUName() const
Optional<llvm::StringRef> tryGetCPUName() const
Declared at: llvm/include/llvm/Object/ELFObjectFile.h:91