reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/llvm-readobj/ELFDumper.cpp
  207   DynRegionInfo createDRIFrom(const Elf_Phdr *P, uintX_t EntSize) {
  207   DynRegionInfo createDRIFrom(const Elf_Phdr *P, uintX_t EntSize) {
  212   DynRegionInfo createDRIFrom(const Elf_Shdr *S) {
  221   std::pair<const Elf_Phdr *, const Elf_Shdr *>
  221   std::pair<const Elf_Phdr *, const Elf_Shdr *>
  226   StringRef getSymbolVersion(StringRef StrTab, const Elf_Sym *symb,
  229   void LoadVersionNeeds(const Elf_Shdr *ec) const;
  230   void LoadVersionDefs(const Elf_Shdr *sec) const;
  241   const Elf_Hash *HashTable = nullptr;
  242   const Elf_GnuHash *GnuHashTable = nullptr;
  243   const Elf_Shdr *DotSymtabSec = nullptr;
  244   const Elf_Shdr *DotCGProfileSec = nullptr;
  245   const Elf_Shdr *DotAddrsigSec = nullptr;
  247   ArrayRef<Elf_Word> ShndxTable;
  249   const Elf_Shdr *SymbolVersionSection = nullptr;   // .gnu.version
  250   const Elf_Shdr *SymbolVersionNeedSection = nullptr; // .gnu.version_r
  251   const Elf_Shdr *SymbolVersionDefSection = nullptr; // .gnu.version_d
  260     VersionMapEntry(const Elf_Verdef *verdef)
  262     VersionMapEntry(const Elf_Vernaux *vernaux)
  268     const Elf_Verdef *getVerdef() const {
  271     const Elf_Vernaux *getVernaux() const {
  278   Elf_Dyn_Range dynamic_table() const {
  283     Elf_Dyn_Range Table = DynamicTable.getAsArrayRef<Elf_Dyn>();
  283     Elf_Dyn_Range Table = DynamicTable.getAsArrayRef<Elf_Dyn>();
  293   Elf_Sym_Range dynamic_symbols() const {
  294     return DynSymRegion.getAsArrayRef<Elf_Sym>();
  297   Elf_Rel_Range dyn_rels() const;
  298   Elf_Rela_Range dyn_relas() const;
  299   Elf_Relr_Range dyn_relrs() const;
  300   std::string getFullSymbolName(const Elf_Sym *Symbol, StringRef StrTable,
  302   void getSectionNameIndex(const Elf_Sym *Symbol, const Elf_Sym *FirstSym,
  302   void getSectionNameIndex(const Elf_Sym *Symbol, const Elf_Sym *FirstSym,
  314   const Elf_Shdr *getDotSymtabSec() const { return DotSymtabSec; }
  315   const Elf_Shdr *getDotCGProfileSec() const { return DotCGProfileSec; }
  316   const Elf_Shdr *getDotAddrsigSec() const { return DotAddrsigSec; }
  317   ArrayRef<Elf_Word> getShndxTable() const { return ShndxTable; }
  324   const Elf_Hash *getHashTable() const { return HashTable; }
  325   const Elf_GnuHash *getGnuHashTable() const { return GnuHashTable; }
  332   Elf_Sym_Range Syms(nullptr, nullptr);
  646 void ELFDumper<ELFT>::LoadVersionNeeds(const Elf_Shdr *Sec) const {
  656     if (VerneedBuf + sizeof(Elf_Verneed) > VerneedEnd)
  659     const Elf_Verneed *Verneed =
  667       if (VernauxBuf + sizeof(Elf_Vernaux) > VerneedEnd)
  670       const Elf_Vernaux *Vernaux =
  685 void ELFDumper<ELFT>::LoadVersionDefs(const Elf_Shdr *Sec) const {
  694     if (VerdefBuf + sizeof(Elf_Verdef) > VerdefEnd)
  697     const Elf_Verdef *Verdef = reinterpret_cast<const Elf_Verdef *>(VerdefBuf);
  731                                             const Elf_Sym *Sym,
  743                        sizeof(Elf_Sym);
  746   const Elf_Versym *Versym = unwrapOrError(
  747       ObjF->getFileName(), ObjF->getELFFile()->template getEntry<Elf_Versym>(
  809 std::string ELFDumper<ELFT>::getFullSymbolName(const Elf_Sym *Symbol,
  818     Elf_Sym_Range Syms = unwrapOrError(
  837 void ELFDumper<ELFT>::getSectionNameIndex(const Elf_Sym *Symbol,
  838                                           const Elf_Sym *FirstSym,
 1433   const Elf_Phdr *DynamicPhdr = nullptr;
 1434   for (const Elf_Phdr &Phdr :
 1443   const Elf_Shdr *DynamicSec = nullptr;
 1444   for (const Elf_Shdr &Sec :
 1485   const Elf_Phdr *DynamicPhdr;
 1486   const Elf_Shdr *DynamicSec;
 1494     FromPhdr = createDRIFrom(DynamicPhdr, sizeof(Elf_Dyn));
 1495     IsPhdrTableValid = !FromPhdr.getAsArrayRef<Elf_Dyn>().empty();
 1507                   DynamicSec->sh_size, sizeof(Elf_Dyn), ObjF->getFileName()});
 1508     IsSecTableValid = !FromSec.getAsArrayRef<Elf_Dyn>().empty();
 1568   for (const Elf_Shdr &Sec :
 1710   for (const Elf_Dyn &Dyn : dynamic_table()) {
 1746         DynSymRegion.EntSize = sizeof(Elf_Sym);
 1785         DynPLTRelRegion.EntSize = sizeof(Elf_Rel);
 1787         DynPLTRelRegion.EntSize = sizeof(Elf_Rela);
 1807 typename ELFDumper<ELFT>::Elf_Rel_Range ELFDumper<ELFT>::dyn_rels() const {
 1808   return DynRelRegion.getAsArrayRef<Elf_Rel>();
 1812 typename ELFDumper<ELFT>::Elf_Rela_Range ELFDumper<ELFT>::dyn_relas() const {
 1817 typename ELFDumper<ELFT>::Elf_Relr_Range ELFDumper<ELFT>::dyn_relrs() const {
 1818   return DynRelrRegion.getAsArrayRef<Elf_Relr>();
 2210   Elf_Sym_Range Syms = dynamic_symbols();
 2259   for (const ELFO::Elf_Shdr &Sec :
 2638   const Elf_Shdr *Shdr = findSectionByName(*Obj, ObjF->getFileName(), ".reginfo");
 2657   const Elf_Shdr *Shdr =
 2689   const Elf_Shdr *StackMapSection = nullptr;