LLVM: llvm::object::ELFObjectFile< ELFT > Class Template Reference (original) (raw)
#include "[llvm/Object/ELFObjectFile.h](ELFObjectFile%5F8h%5Fsource.html)"
| Protected Attributes | |
|---|---|
| ELFFile< ELFT > | EF |
| const Elf_Shdr * | DotDynSymSec = nullptr |
| const Elf_Shdr * | DotSymtabSec = nullptr |
| const Elf_Shdr * | DotSymtabShndxSec = nullptr |
| SmallVector< SmallVector< Elf_Crel, 0 >, 0 > | Crels |
| SmallVector< std::string, 0 > | CrelDecodeProblems |
| bool | isDyldELFObject = false |
| Protected Attributes inherited from llvm::object::Binary | |
| MemoryBufferRef | Data |
template
class llvm::object::ELFObjectFile< ELFT >
Definition at line 268 of file ELFObjectFile.h.
◆ classof()
◆ create()
◆ createFakeSections()
◆ dynamic_relocation_sections()
◆ dynamic_symbol_begin()
◆ dynamic_symbol_end()
◆ getArch()
Implements llvm::object::ObjectFile.
Definition at line 1365 of file ELFObjectFile.h.
References llvm::Triple::aarch64, llvm::Triple::aarch64_be, llvm::Triple::amdgcn, llvm::Triple::arm, llvm::Triple::avr, llvm::Triple::bpfeb, llvm::Triple::bpfel, llvm::Triple::csky, EF, llvm::ELF::EF_AMDGPU_MACH, llvm::ELF::EF_AMDGPU_MACH_AMDGCN_FIRST, llvm::ELF::EF_AMDGPU_MACH_AMDGCN_LAST, llvm::ELF::EF_AMDGPU_MACH_R600_FIRST, llvm::ELF::EF_AMDGPU_MACH_R600_LAST, llvm::ELF::EI_CLASS, llvm::ELF::ELFCLASS32, llvm::ELF::ELFCLASS64, llvm::ELF::EM_386, llvm::ELF::EM_68K, llvm::ELF::EM_AARCH64, llvm::ELF::EM_AMDGPU, llvm::ELF::EM_ARM, llvm::ELF::EM_AVR, llvm::ELF::EM_BPF, llvm::ELF::EM_CSKY, llvm::ELF::EM_CUDA, llvm::ELF::EM_HEXAGON, llvm::ELF::EM_IAMCU, llvm::ELF::EM_LANAI, llvm::ELF::EM_LOONGARCH, llvm::ELF::EM_MIPS, llvm::ELF::EM_MSP430, llvm::ELF::EM_PPC, llvm::ELF::EM_PPC64, llvm::ELF::EM_RISCV, llvm::ELF::EM_S390, llvm::ELF::EM_SPARC, llvm::ELF::EM_SPARC32PLUS, llvm::ELF::EM_SPARCV9, llvm::ELF::EM_VE, llvm::ELF::EM_X86_64, llvm::ELF::EM_XTENSA, llvm::Triple::hexagon, llvm::Triple::lanai, llvm::little, llvm::Triple::loongarch32, llvm::Triple::loongarch64, llvm::Triple::m68k, llvm::Triple::mips, llvm::Triple::mips64, llvm::Triple::mips64el, llvm::Triple::mipsel, llvm::Triple::msp430, llvm::Triple::nvptx, llvm::Triple::nvptx64, llvm::Triple::ppc, llvm::Triple::ppc64, llvm::Triple::ppc64le, llvm::Triple::ppcle, llvm::Triple::r600, llvm::report_fatal_error(), llvm::Triple::riscv32, llvm::Triple::riscv32be, llvm::Triple::riscv64, llvm::Triple::riscv64be, llvm::Triple::sparc, llvm::Triple::sparcel, llvm::Triple::sparcv9, llvm::Triple::systemz, llvm::Triple::UnknownArch, llvm::Triple::ve, llvm::Triple::x86, llvm::Triple::x86_64, and llvm::Triple::xtensa.
◆ getBuildAttributes()
◆ getBytesInAddress()
◆ getCommonSymbolSizeImpl()
◆ getCrel()
◆ getCrelDecodeProblem()
◆ getDynamicSymbolIterators()
◆ getELFFile()
◆ getFileFormatName()
Implements llvm::object::ObjectFile.
Definition at line 1287 of file ELFObjectFile.h.
References EF, llvm::ELF::EI_CLASS, llvm::ELF::ELFCLASS32, llvm::ELF::ELFCLASS64, llvm::ELF::EM_386, llvm::ELF::EM_68K, llvm::ELF::EM_AARCH64, llvm::ELF::EM_AMDGPU, llvm::ELF::EM_ARM, llvm::ELF::EM_AVR, llvm::ELF::EM_BPF, llvm::ELF::EM_CSKY, llvm::ELF::EM_HEXAGON, llvm::ELF::EM_IAMCU, llvm::ELF::EM_LANAI, llvm::ELF::EM_LOONGARCH, llvm::ELF::EM_MIPS, llvm::ELF::EM_MSP430, llvm::ELF::EM_PPC, llvm::ELF::EM_PPC64, llvm::ELF::EM_RISCV, llvm::ELF::EM_S390, llvm::ELF::EM_SPARC, llvm::ELF::EM_SPARC32PLUS, llvm::ELF::EM_SPARCV9, llvm::ELF::EM_VE, llvm::ELF::EM_X86_64, llvm::ELF::EM_XTENSA, llvm::little, and llvm::report_fatal_error().
◆ getOS()
Reimplemented from llvm::object::ObjectFile.
Definition at line 1465 of file ELFObjectFile.h.
References llvm::Triple::AIX, llvm::Triple::AMDHSA, llvm::Triple::AMDPAL, llvm::Triple::CUDA, EF, llvm::ELF::EI_OSABI, llvm::ELF::ELFOSABI_AIX, llvm::ELF::ELFOSABI_AMDGPU_HSA, llvm::ELF::ELFOSABI_AMDGPU_MESA3D, llvm::ELF::ELFOSABI_AMDGPU_PAL, llvm::ELF::ELFOSABI_CUDA, llvm::ELF::ELFOSABI_CUDA_V2, llvm::ELF::ELFOSABI_FREEBSD, llvm::ELF::ELFOSABI_HURD, llvm::ELF::ELFOSABI_LINUX, llvm::ELF::ELFOSABI_NETBSD, llvm::ELF::ELFOSABI_OPENBSD, llvm::ELF::ELFOSABI_SOLARIS, llvm::Triple::FreeBSD, llvm::Triple::Hurd, llvm::Triple::Linux, llvm::Triple::Mesa3D, llvm::Triple::NetBSD, llvm::Triple::OpenBSD, llvm::Triple::Solaris, and llvm::Triple::UnknownOS.
◆ getPlatformFlags()
◆ getRel()
Definition at line 1172 of file ELFObjectFile.h.
References llvm::object::DataRefImpl::a, assert(), llvm::object::DataRefImpl::b, llvm::object::DataRefImpl::d, EF, llvm::errorToErrorCode(), getRelSection(), llvm::report_fatal_error(), and llvm::ELF::SHT_REL.
Referenced by getRelocationOffset(), getRelocationSymbol(), and getRelocationType().
◆ getRela()
Definition at line 1182 of file ELFObjectFile.h.
References llvm::object::DataRefImpl::a, assert(), llvm::object::DataRefImpl::b, llvm::object::DataRefImpl::d, EF, llvm::errorToErrorCode(), getRelSection(), llvm::report_fatal_error(), and llvm::ELF::SHT_RELA.
Referenced by getRelocationAddend(), getRelocationOffset(), getRelocationSymbol(), and getRelocationType().
◆ getRelocatedSection()
◆ getRelocationAddend()
◆ getRelocationOffset()
◆ getRelocationSymbol()
Implements llvm::object::ObjectFile.
Definition at line 1107 of file ELFObjectFile.h.
References llvm::object::DataRefImpl::a, llvm::object::DataRefImpl::b, llvm::object::DataRefImpl::d, EF, getCrel(), getRel(), getRela(), getRelSection(), llvm::ELF::SHT_CREL, llvm::ELF::SHT_REL, and symbol_end().
◆ getRelocationType()
◆ getRelocationTypeName() [1/2]
◆ getRelocationTypeName() [2/2]
◆ getRelSection()
◆ getSection()
◆ getSectionAddress()
◆ getSectionAlignment()
◆ getSectionContents()
◆ getSectionFlags()
◆ getSectionIndex()
◆ getSectionName()
◆ getSectionOffset()
◆ getSectionSize()
◆ getSectionType()
◆ getStartAddress()
◆ getSymbol()
◆ getSymbolAddress()
Implements llvm::object::ObjectFile.
Definition at line 625 of file ELFObjectFile.h.
References llvm::object::DataRefImpl::a, llvm::object::DataRefImpl::d, DotSymtabShndxSec, EF, llvm::ELF::ET_REL, getSymbol(), getSymbolValue(), llvm::ELF::SHN_ABS, llvm::ELF::SHN_COMMON, llvm::ELF::SHN_UNDEF, and llvm::Expected< T >::takeError().
◆ getSymbolAlignment()
◆ getSymbolBinding()
◆ getSymbolELFType()
◆ getSymbolFlags()
Implements llvm::object::SymbolicFile.
Definition at line 756 of file ELFObjectFile.h.
References llvm::consumeError(), DotDynSymSec, DotSymtabSec, EF, llvm::ELF::EM_AARCH64, llvm::ELF::EM_ARM, llvm::ELF::EM_CSKY, llvm::ELF::EM_RISCV, getSymbol(), getSymbolName(), isExportedToOtherDSO(), llvm::object::BasicSymbolRef::SF_Absolute, llvm::object::BasicSymbolRef::SF_Common, llvm::object::BasicSymbolRef::SF_Exported, llvm::object::BasicSymbolRef::SF_FormatSpecific, llvm::object::BasicSymbolRef::SF_Global, llvm::object::BasicSymbolRef::SF_Hidden, llvm::object::BasicSymbolRef::SF_Indirect, llvm::object::BasicSymbolRef::SF_None, llvm::object::BasicSymbolRef::SF_Thumb, llvm::object::BasicSymbolRef::SF_Undefined, llvm::object::BasicSymbolRef::SF_Weak, llvm::ELF::SHN_ABS, llvm::ELF::SHN_COMMON, llvm::ELF::SHN_UNDEF, llvm::ELF::STB_LOCAL, llvm::ELF::STB_WEAK, llvm::ELF::STT_COMMON, llvm::ELF::STT_FILE, llvm::ELF::STT_FUNC, llvm::ELF::STT_GNU_IFUNC, llvm::ELF::STT_SECTION, llvm::ELF::STV_HIDDEN, and llvm::Expected< T >::takeError().
◆ getSymbolName()
◆ getSymbolOther()
◆ getSymbolSection() [1/2]
◆ getSymbolSection() [2/2]
◆ getSymbolType()
Implements llvm::object::ObjectFile.
Definition at line 732 of file ELFObjectFile.h.
References getSymbol(), llvm::object::SymbolRef::ST_Data, llvm::object::SymbolRef::ST_Debug, llvm::object::SymbolRef::ST_File, llvm::object::SymbolRef::ST_Function, llvm::object::SymbolRef::ST_Other, llvm::object::SymbolRef::ST_Unknown, llvm::ELF::STT_COMMON, llvm::ELF::STT_FILE, llvm::ELF::STT_FUNC, llvm::ELF::STT_NOTYPE, llvm::ELF::STT_OBJECT, llvm::ELF::STT_SECTION, llvm::ELF::STT_TLS, and llvm::Expected< T >::takeError().
◆ getSymbolValueImpl()
◆ initContent()
◆ is64Bit()
◆ isBerkeleyData()
◆ isBerkeleyText()
◆ IsContentValid()
◆ isDebugSection()
◆ isDyldType()
◆ isExportedToOtherDSO()
◆ isRelocatableObject()
◆ isSectionBSS()
◆ isSectionCompressed()
◆ isSectionData()
◆ isSectionText()
◆ isSectionVirtual()
◆ moveRelocationNext()
◆ moveSectionNext()
◆ moveSymbolNext()
◆ section_begin()
◆ section_end()
◆ section_rel_begin()
Implements llvm::object::ObjectFile.
Definition at line 1032 of file ELFObjectFile.h.
References llvm::object::DataRefImpl::a, llvm::object::DataRefImpl::b, llvm::cantFail(), llvm::Count, CrelDecodeProblems, Crels, llvm::object::DataRefImpl::d, llvm::object::decodeCrel(), EF, getSectionContents(), I, llvm::object::DataRefImpl::p, llvm::ELF::SHT_CREL, and llvm::toString().
Referenced by section_rel_end().
◆ section_rel_end()
Implements llvm::object::ObjectFile.
Definition at line 1063 of file ELFObjectFile.h.
References llvm::object::DataRefImpl::a, llvm::object::DataRefImpl::b, Crels, llvm::object::DataRefImpl::d, EF, llvm::errorToErrorCode(), llvm::object::RelocationRef::getRawDataRefImpl(), getRelSection(), llvm::object::DataRefImpl::p, llvm::report_fatal_error(), section_rel_begin(), llvm::ELF::SHT_CREL, llvm::ELF::SHT_REL, and llvm::ELF::SHT_RELA.
◆ symbol_begin()
◆ symbol_end()
◆ toDRI() [1/3]
◆ toDRI() [2/3]
◆ toDRI() [3/3]
Definition at line 356 of file ELFObjectFile.h.
Referenced by dynamic_relocation_sections(), dynamic_symbol_begin(), dynamic_symbol_end(), getRelocatedSection(), moveSectionNext(), section_begin(), section_end(), symbol_begin(), symbol_end(), llvm::object::ELFObjectFile< ELF32LE >::toSectionRef(), and llvm::object::ELFObjectFile< ELF32LE >::toSymbolRef().
◆ toELFShdrIter()
◆ toSectionRef()
◆ toSymbolRef()
◆ CrelDecodeProblems
◆ Crels
◆ DotDynSymSec
◆ DotSymtabSec
◆ DotSymtabShndxSec
◆ EF
Definition at line 295 of file ELFObjectFile.h.
Referenced by dynamic_relocation_sections(), ELFObjectFile(), getArch(), getCrelDecodeProblem(), getFileFormatName(), getOS(), getRel(), getRela(), getRelocatedSection(), getRelocationSymbol(), getRelocationType(), getRelocationTypeName(), getRelocationTypeName(), getSectionIndex(), getSectionName(), getStartAddress(), getSymbolAddress(), getSymbolFlags(), getSymbolName(), getSymbolSection(), getSymbolSection(), getSymbolValueImpl(), initContent(), isRelocatableObject(), section_begin(), section_end(), section_rel_begin(), and section_rel_end().
◆ isDyldELFObject
The documentation for this class was generated from the following file:
- include/llvm/Object/ELFObjectFile.h