#include "llvm/Object/ELFObjectFile.h"
Definition at line 60 of file ELFObjectFile.h.
Definition at line 90 of file ELFObjectFile.h.
Definition at line 59 of file ELFObjectFile.cpp.
References llvm::object::ObjectFile::ObjectFile().
Referenced by ELFSymbolRef.
Definition at line 99 of file ELFObjectFile.h.
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by setARMSubArch().
Definition at line 1067 of file ELFObjectFile.cpp.
References llvm::cast(), llvm::object::Binary::Data, llvm::dyn_cast(), llvm::object::SectionRef::getRawDataRefImpl(), and llvm::object::ObjectFile::SectionRef.
Referenced by getEIdentABIVersion().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by readDynsymVersions().
Implements llvm::object::ObjectFile.
Definition at line 419 of file ELFObjectFile.cpp.
References llvm::ELF::EM_ARM, llvm::ELF::EM_HEXAGON, llvm::ELF::EM_LOONGARCH, llvm::ELF::EM_MIPS, llvm::ELF::EM_RISCV, and getEMachine().
Returns platform-specific object flags, if any.
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
References symbols().
Referenced by llvm::RuntimeDyldELF::processRelocationRef().
Definition at line 813 of file ELFObjectFile.cpp.
References llvm::Triple::aarch64, llvm::Triple::aarch64_be, llvm::append_range(), llvm::Triple::arm, llvm::Triple::armeb, llvm::arrayRefFromStringRef(), llvm::consumeError(), llvm::ELF::EM_386, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), llvm::Triple::getArch(), getEMachine(), llvm::object::BasicSymbolRef::getRawDataRefImpl(), llvm::Triple::hexagon, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::insert(), llvm::TargetRegistry::lookupTarget(), llvm::object::ObjectFile::makeTriple(), llvm::Triple::riscv32, llvm::Triple::riscv64, llvm::object::ObjectFile::SectionRef, llvm::object::ObjectFile::sections(), llvm::object::SymbolicFile::symbol_end(), T, llvm::Expected< T >::takeError(), llvm::Triple::thumb, llvm::Triple::thumbeb, llvm::Triple::x86, and llvm::Triple::x86_64.
Referenced by getEIdentABIVersion().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by llvm::object::ELFRelocationRef::getAddend().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by llvm::object::ELFSectionRef::getFlags().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by llvm::object::ELFSectionRef::getOffset().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by llvm::object::ELFSectionRef::getType().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by llvm::object::ELFSymbolRef::getBinding().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by llvm::object::ELFSymbolRef::getELFType().
Implemented in ELFObjectFile< ELFT >, llvm::objcopy::elf::ELFObjectFile< ELFT >, 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 >, and llvm::object::ELFObjectFile< ELF64LE >.
Referenced by llvm::object::ELFSymbolRef::getOther().
Referenced by llvm::object::ELFSymbolRef::getSize().
Returns a vector of all BB address maps in the object file.
When TextSectionIndex is specified, only returns the BB address maps corresponding to the section with that index. When PGOAnalysesis specified (PGOAnalyses is not nullptr), the vector is cleared then filled with extra PGO data. PGOAnalyses will always be the same length as the return value when it is requested assuming no error occurs. Upon failure, PGOAnalyses will be emptied.
Definition at line 1054 of file ELFObjectFile.cpp.
References llvm::cast(), llvm::dyn_cast(), and readBBAddrMapImpl().
Referenced by getEIdentABIVersion().
Returns a vector containing a symbol version for each dynamic symbol.
Returns an empty vector if version sections do not exist.
Definition at line 1042 of file ELFObjectFile.cpp.
References llvm::cast(), llvm::dyn_cast(), getDynamicSymbolIterators(), and readDynsymVersionsImpl().
Referenced by getEIdentABIVersion().
Reimplemented from llvm::object::ObjectFile.
Definition at line 719 of file ELFObjectFile.cpp.
References llvm::consumeError(), llvm::ARMBuildAttrs::CPU_arch, llvm::ARMBuildAttrs::CPU_arch_profile, getBuildAttributes(), llvm::Triple::getSubArch(), llvm::object::Binary::isLittleEndian(), llvm::Triple::isThumb(), llvm::ARMBuildAttrs::MicroControllerProfile, llvm::Triple::NoSubArch, llvm::Triple::setArchName(), llvm::ARMBuildAttrs::v4, llvm::ARMBuildAttrs::v4T, llvm::ARMBuildAttrs::v5T, llvm::ARMBuildAttrs::v5TE, llvm::ARMBuildAttrs::v5TEJ, llvm::ARMBuildAttrs::v6, llvm::ARMBuildAttrs::v6_M, llvm::ARMBuildAttrs::v6K, llvm::ARMBuildAttrs::v6KZ, llvm::ARMBuildAttrs::v6S_M, llvm::ARMBuildAttrs::v6T2, llvm::ARMBuildAttrs::v7, llvm::ARMBuildAttrs::v7E_M, llvm::ARMBuildAttrs::v8_1_M_Main, llvm::ARMBuildAttrs::v8_A, llvm::ARMBuildAttrs::v8_M_Base, llvm::ARMBuildAttrs::v8_M_Main, llvm::ARMBuildAttrs::v8_R, and llvm::ARMBuildAttrs::v9_A.
Definition at line 264 of file ELFObjectFile.h.
References llvm::object::SymbolicFile::symbol_begin(), and llvm::object::SymbolicFile::symbol_end().
Referenced by llvm::orc::getELFObjectFileSymbolInfo(), and getPlatformFlags().
Reimplemented from llvm::object::ObjectFile.
Definition at line 436 of file ELFObjectFile.cpp.
References llvm::ELF::EM_AMDGPU, llvm::ELF::EM_BPF, llvm::ELF::EM_CUDA, llvm::ELF::EM_PPC, llvm::ELF::EM_PPC64, and getEMachine().
Definition at line 61 of file ELFObjectFile.h.
References ELFRelocationRef.
Referenced by ELFRelocationRef.
Definition at line 62 of file ELFObjectFile.h.
References ELFSectionRef.
Referenced by ELFSectionRef.
Definition at line 63 of file ELFObjectFile.h.
References ELFObjectFileBase(), and ELFSymbolRef.
Referenced by ELFSymbolRef, and llvm::object::ELFObjectFile< ELF32LE >::toSymbolRef().