Lines Matching refs:Obj

186     const ELFFile<ELFT> *Obj = ObjF->getELFFile();  in TYPEDEF_ELF_TYPES()  local
187 if (DRI.Addr < Obj->base() || in TYPEDEF_ELF_TYPES()
188 (const uint8_t *)DRI.Addr + DRI.Size > Obj->base() + Obj->getBufSize()) in TYPEDEF_ELF_TYPES()
295 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in printSymbolsHelper() local
305 StrTable = unwrapOrError(Obj->getStringTableForSymtab(*DotSymtabSec)); in printSymbolsHelper()
306 Syms = unwrapOrError(Obj->symbols(DotSymtabSec)); in printSymbolsHelper()
307 SymtabName = unwrapOrError(Obj->getSectionName(DotSymtabSec)); in printSymbolsHelper()
312 ELFDumperStyle->printSymtabMessage(Obj, SymtabName, Entries); in printSymbolsHelper()
314 ELFDumperStyle->printSymbol(Obj, &Sym, Syms.begin(), StrTable, IsDynamic); in printSymbolsHelper()
327 virtual void printFileHeaders(const ELFFile<ELFT> *Obj) = 0;
328 virtual void printGroupSections(const ELFFile<ELFT> *Obj) = 0;
329 virtual void printRelocations(const ELFFile<ELFT> *Obj) = 0;
330 virtual void printSectionHeaders(const ELFFile<ELFT> *Obj) = 0;
331 virtual void printSymbols(const ELFFile<ELFT> *Obj) = 0;
332 virtual void printDynamicSymbols(const ELFFile<ELFT> *Obj) = 0;
333 virtual void printDynamicRelocations(const ELFFile<ELFT> *Obj) = 0;
336 virtual void printSymbol(const ELFFile<ELFT> *Obj, const Elf_Sym *Symbol,
339 virtual void printProgramHeaders(const ELFFile<ELFT> *Obj) = 0;
340 virtual void printHashHistogram(const ELFFile<ELFT> *Obj) = 0;
341 virtual void printCGProfile(const ELFFile<ELFT> *Obj) = 0;
342 virtual void printAddrsig(const ELFFile<ELFT> *Obj) = 0;
343 virtual void printNotes(const ELFFile<ELFT> *Obj) = 0;
344 virtual void printELFLinkerOptions(const ELFFile<ELFT> *Obj) = 0;
362 void printFileHeaders(const ELFO *Obj) override;
363 void printGroupSections(const ELFFile<ELFT> *Obj) override;
364 void printRelocations(const ELFO *Obj) override;
365 void printSectionHeaders(const ELFO *Obj) override;
366 void printSymbols(const ELFO *Obj) override;
367 void printDynamicSymbols(const ELFO *Obj) override;
368 void printDynamicRelocations(const ELFO *Obj) override;
369 void printSymtabMessage(const ELFO *Obj, StringRef Name,
371 void printProgramHeaders(const ELFO *Obj) override;
372 void printHashHistogram(const ELFFile<ELFT> *Obj) override;
373 void printCGProfile(const ELFFile<ELFT> *Obj) override;
374 void printAddrsig(const ELFFile<ELFT> *Obj) override;
375 void printNotes(const ELFFile<ELFT> *Obj) override;
376 void printELFLinkerOptions(const ELFFile<ELFT> *Obj) override;
431 void printHashedSymbol(const ELFO *Obj, const Elf_Sym *FirstSym, uint32_t Sym,
434 void printRelocation(const ELFO *Obj, const Elf_Shdr *SymTab,
436 void printSymbol(const ELFO *Obj, const Elf_Sym *Symbol, const Elf_Sym *First,
438 std::string getSymbolSectionNdx(const ELFO *Obj, const Elf_Sym *Symbol,
440 void printDynamicRelocation(const ELFO *Obj, Elf_Rela R, bool IsRela);
454 void printFileHeaders(const ELFO *Obj) override;
455 void printGroupSections(const ELFFile<ELFT> *Obj) override;
456 void printRelocations(const ELFO *Obj) override;
457 void printRelocations(const Elf_Shdr *Sec, const ELFO *Obj);
458 void printSectionHeaders(const ELFO *Obj) override;
459 void printSymbols(const ELFO *Obj) override;
460 void printDynamicSymbols(const ELFO *Obj) override;
461 void printDynamicRelocations(const ELFO *Obj) override;
462 void printProgramHeaders(const ELFO *Obj) override;
463 void printHashHistogram(const ELFFile<ELFT> *Obj) override;
464 void printCGProfile(const ELFFile<ELFT> *Obj) override;
465 void printAddrsig(const ELFFile<ELFT> *Obj) override;
466 void printNotes(const ELFFile<ELFT> *Obj) override;
467 void printELFLinkerOptions(const ELFFile<ELFT> *Obj) override;
472 void printRelocation(const ELFO *Obj, Elf_Rela Rel, const Elf_Shdr *SymTab);
473 void printDynamicRelocation(const ELFO *Obj, Elf_Rela Rel);
474 void printSymbol(const ELFO *Obj, const Elf_Sym *Symbol, const Elf_Sym *First,
485 static std::error_code createELFDumper(const ELFObjectFile<ELFT> *Obj, in createELFDumper() argument
488 Result.reset(new ELFDumper<ELFT>(Obj, Writer)); in createELFDumper()
492 std::error_code createELFDumper(const object::ObjectFile *Obj, in createELFDumper() argument
496 if (const ELF32LEObjectFile *ELFObj = dyn_cast<ELF32LEObjectFile>(Obj)) in createELFDumper()
500 if (const ELF32BEObjectFile *ELFObj = dyn_cast<ELF32BEObjectFile>(Obj)) in createELFDumper()
504 if (const ELF64LEObjectFile *ELFObj = dyn_cast<ELF64LEObjectFile>(Obj)) in createELFDumper()
508 if (const ELF64BEObjectFile *ELFObj = dyn_cast<ELF64BEObjectFile>(Obj)) in createELFDumper()
597 static void printVersionSymbolSection(ELFDumper<ELFT> *Dumper, const ELFO *Obj, in printVersionSymbolSection() argument
603 StringRef Name = unwrapOrError(Obj->getSectionName(Sec)); in printVersionSymbolSection()
609 const uint8_t *P = (const uint8_t *)Obj->base() + Sec->sh_offset; in printVersionSymbolSection()
631 const ELFO *Obj, in printVersionDefinitionSection() argument
652 (const uint8_t *)Obj->base() + Sec->sh_offset; in printVersionDefinitionSection()
656 unwrapOrError(Obj->getSection(Sec->sh_link)); in printVersionDefinitionSection()
669 StringRef((const char *)(Obj->base() + StrTab->sh_offset + in printVersionDefinitionSection()
680 StringRef((const char *)(Obj->base() + StrTab->sh_offset + in printVersionDefinitionSection()
690 const ELFO *Obj, in printVersionDependencySection() argument
708 const uint8_t *SecData = (const uint8_t *)Obj->base() + Sec->sh_offset; in printVersionDependencySection()
710 unwrapOrError(Obj->getSection(Sec->sh_link)); in printVersionDependencySection()
719 StringRef((const char *)(Obj->base() + StrTab->sh_offset + in printVersionDependencySection()
730 StringRef((const char *)(Obj->base() + StrTab->sh_offset + in printVersionDependencySection()
800 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in getStaticSymbolName() local
801 StringRef StrTable = unwrapOrError(Obj->getStringTableForSymtab(*DotSymtabSec)); in getStaticSymbolName()
802 Elf_Sym_Range Syms = unwrapOrError(Obj->symbols(DotSymtabSec)); in getStaticSymbolName()
850 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in getSectionNameIndex() local
852 unwrapOrError(Obj->getSection(SectionIndex)); in getSectionNameIndex()
853 SectionName = unwrapOrError(Obj->getSectionName(Sec)); in getSectionNameIndex()
859 findNotEmptySectionByAddress(const ELFO *Obj, uint64_t Addr) { in findNotEmptySectionByAddress() argument
860 for (const auto &Shdr : unwrapOrError(Obj->sections())) in findNotEmptySectionByAddress()
867 static const typename ELFO::Elf_Shdr *findSectionByName(const ELFO &Obj, in findSectionByName() argument
869 for (const auto &Shdr : unwrapOrError(Obj.sections())) { in findSectionByName()
870 if (Name == unwrapOrError(Obj.getSectionName(&Shdr))) in findSectionByName()
1427 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in ELFDumper() local
1428 for (const Elf_Phdr &Phdr : unwrapOrError(Obj->program_headers())) { in ELFDumper()
1438 for (const Elf_Shdr &Sec : unwrapOrError(Obj->sections())) { in ELFDumper()
1450 DynSymtabName = unwrapOrError(Obj->getSectionName(&Sec)); in ELFDumper()
1451 DynamicStringTable = unwrapOrError(Obj->getStringTableForSymtab(Sec)); in ELFDumper()
1454 ShndxTable = unwrapOrError(Obj->getSHNDXTable(Sec)); in ELFDumper()
1897 const ELFFile<ELF32LE> *Obj = ObjF->getELFFile(); in printUnwindInfo() local
1898 const unsigned Machine = Obj->getHeader()->e_machine; in printUnwindInfo()
1900 ARM::EHABI::PrinterContext<ELF32LE> Ctx(W, Obj, DotSymtabSec); in printUnwindInfo()
2007 const ELFFile<ELF32LE> *Obj = ObjF->getELFFile(); in printAttributes() local
2008 if (Obj->getHeader()->e_machine != EM_ARM) { in printAttributes()
2014 for (const ELFO::Elf_Shdr &Sec : unwrapOrError(Obj->sections())) { in printAttributes()
2018 ArrayRef<uint8_t> Contents = unwrapOrError(Obj->getSectionContents(&Sec)); in printAttributes()
2040 const ELFO * const Obj; member in __anon4f80e6a10411::MipsGOTParser
2042 MipsGOTParser(const ELFO *Obj, Elf_Dyn_Range DynTable, Elf_Sym_Range DynSyms);
2086 MipsGOTParser<ELFT>::MipsGOTParser(const ELFO *Obj, Elf_Dyn_Range DynTable, in MipsGOTParser() argument
2088 : IsStatic(DynTable.empty()), Obj(Obj), GotSec(nullptr), LocalNum(0), in MipsGOTParser()
2096 GotSec = findSectionByName(*Obj, ".got"); in MipsGOTParser()
2100 ArrayRef<uint8_t> Content = unwrapOrError(Obj->getSectionContents(GotSec)); in MipsGOTParser()
2146 GotSec = findNotEmptySectionByAddress(Obj, *DtPltGot); in MipsGOTParser()
2154 ArrayRef<uint8_t> Content = unwrapOrError(Obj->getSectionContents(GotSec)); in MipsGOTParser()
2167 PltSec = findNotEmptySectionByAddress(Obj, *DtMipsPltGot); in MipsGOTParser()
2172 PltRelSec = findNotEmptySectionByAddress(Obj, *DtJmpRel); in MipsGOTParser()
2178 unwrapOrError(Obj->getSectionContents(PltSec)); in MipsGOTParser()
2182 PltSymTable = unwrapOrError(Obj->getSection(PltRelSec->sh_link)); in MipsGOTParser()
2183 PltStrTable = unwrapOrError(Obj->getStringTableForSymtab(*PltSymTable)); in MipsGOTParser()
2284 Elf_Rel_Range Rels = unwrapOrError(Obj->rels(PltRelSec)); in getPltSym()
2285 return unwrapOrError(Obj->getRelocationSymbol(&Rels[Offset], PltSymTable)); in getPltSym()
2287 Elf_Rela_Range Rels = unwrapOrError(Obj->relas(PltRelSec)); in getPltSym()
2288 return unwrapOrError(Obj->getRelocationSymbol(&Rels[Offset], PltSymTable)); in getPltSym()
2293 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in printMipsPLTGOT() local
2294 if (Obj->getHeader()->e_machine != EM_MIPS) in printMipsPLTGOT()
2297 MipsGOTParser<ELFT> Parser(Obj, dynamic_table(), dynamic_symbols()); in printMipsPLTGOT()
2378 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in printMipsABIFlags() local
2379 const Elf_Shdr *Shdr = findSectionByName(*Obj, ".MIPS.abiflags"); in printMipsABIFlags()
2384 ArrayRef<uint8_t> Sec = unwrapOrError(Obj->getSectionContents(Shdr)); in printMipsABIFlags()
2424 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in printMipsReginfo() local
2425 const Elf_Shdr *Shdr = findSectionByName(*Obj, ".reginfo"); in printMipsReginfo()
2430 ArrayRef<uint8_t> Sec = unwrapOrError(Obj->getSectionContents(Shdr)); in printMipsReginfo()
2442 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in printMipsOptions() local
2443 const Elf_Shdr *Shdr = findSectionByName(*Obj, ".MIPS.options"); in printMipsOptions()
2451 ArrayRef<uint8_t> Sec = unwrapOrError(Obj->getSectionContents(Shdr)); in printMipsOptions()
2472 const ELFFile<ELFT> *Obj = ObjF->getELFFile(); in printStackMap() local
2474 for (const auto &Sec : unwrapOrError(Obj->sections())) { in printStackMap()
2475 StringRef Name = unwrapOrError(Obj->getSectionName(&Sec)); in printStackMap()
2486 unwrapOrError(Obj->getSectionContents(StackMapSection)); in printStackMap()
2510 static std::string getSectionHeadersNumString(const ELFFile<ELFT> *Obj) { in getSectionHeadersNumString() argument
2511 const typename ELFT::Ehdr *ElfHeader = Obj->getHeader(); in getSectionHeadersNumString()
2515 ArrayRef<typename ELFT::Shdr> Arr = unwrapOrError(Obj->sections()); in getSectionHeadersNumString()
2522 static std::string getSectionHeaderTableIndexString(const ELFFile<ELFT> *Obj) { in getSectionHeaderTableIndexString() argument
2523 const typename ELFT::Ehdr *ElfHeader = Obj->getHeader(); in getSectionHeaderTableIndexString()
2527 ArrayRef<typename ELFT::Shdr> Arr = unwrapOrError(Obj->sections()); in getSectionHeaderTableIndexString()
2533 template <class ELFT> void GNUStyle<ELFT>::printFileHeaders(const ELFO *Obj) { in printFileHeaders() argument
2534 const Elf_Ehdr *e = Obj->getHeader(); in printFileHeaders()
2588 Str = getSectionHeadersNumString(Obj); in printFileHeaders()
2590 Str = getSectionHeaderTableIndexString(Obj); in printFileHeaders()
2612 std::vector<GroupSection> getGroups(const ELFFile<ELFT> *Obj) { in getGroups() argument
2619 for (const Elf_Shdr &Sec : unwrapOrError(Obj->sections())) { in getGroups()
2624 const Elf_Shdr *Symtab = unwrapOrError(Obj->getSection(Sec.sh_link)); in getGroups()
2625 StringRef StrTable = unwrapOrError(Obj->getStringTableForSymtab(*Symtab)); in getGroups()
2627 unwrapOrError(Obj->template getEntry<Elf_Sym>(Symtab, Sec.sh_info)); in getGroups()
2629 unwrapOrError(Obj->template getSectionContentsAsArray<Elf_Word>(&Sec)); in getGroups()
2631 StringRef Name = unwrapOrError(Obj->getSectionName(&Sec)); in getGroups()
2644 auto Sec = unwrapOrError(Obj->getSection(Ndx)); in getGroups()
2645 const StringRef Name = unwrapOrError(Obj->getSectionName(Sec)); in getGroups()
2663 template <class ELFT> void GNUStyle<ELFT>::printGroupSections(const ELFO *Obj) { in printGroupSections() argument
2664 std::vector<GroupSection> V = getGroups<ELFT>(Obj); in printGroupSections()
2692 void GNUStyle<ELFT>::printRelocation(const ELFO *Obj, const Elf_Shdr *SymTab, in printRelocation() argument
2704 Obj->getRelocationTypeName(R.getType(Obj->isMips64EL()), RelocName); in printRelocation()
2705 Sym = unwrapOrError(Obj->getRelocationSymbol(&R, SymTab)); in printRelocation()
2708 Obj->getSection(Sym, SymTab, this->dumper()->getShndxTable())); in printRelocation()
2709 TargetName = unwrapOrError(Obj->getSectionName(Sec)); in printRelocation()
2711 StringRef StrTable = unwrapOrError(Obj->getStringTableForSymtab(*SymTab)); in printRelocation()
2764 template <class ELFT> void GNUStyle<ELFT>::printRelocations(const ELFO *Obj) { in printRelocations() argument
2766 for (const Elf_Shdr &Sec : unwrapOrError(Obj->sections())) { in printRelocations()
2775 StringRef Name = unwrapOrError(Obj->getSectionName(&Sec)); in printRelocations()
2782 AndroidRelas = unwrapOrError(Obj->android_relas(&Sec)); in printRelocations()
2790 Elf_Relr_Range Relrs = unwrapOrError(Obj->relrs(&Sec)); in printRelocations()
2791 RelrRelas = unwrapOrError(Obj->decode_relrs(Relrs)); in printRelocations()
2799 const Elf_Shdr *SymTab = unwrapOrError(Obj->getSection(Sec.sh_link)); in printRelocations()
2802 for (const auto &R : unwrapOrError(Obj->rels(&Sec))) { in printRelocations()
2807 printRelocation(Obj, SymTab, Rela, false); in printRelocations()
2811 for (const auto &R : unwrapOrError(Obj->relas(&Sec))) in printRelocations()
2812 printRelocation(Obj, SymTab, R, true); in printRelocations()
2817 for (const auto &R : unwrapOrError(Obj->relrs(&Sec))) in printRelocations()
2822 printRelocation(Obj, SymTab, R, false); in printRelocations()
2827 printRelocation(Obj, SymTab, R, Sec.sh_type == ELF::SHT_ANDROID_RELA); in printRelocations()
2937 void GNUStyle<ELFT>::printSectionHeaders(const ELFO *Obj) { in printSectionHeaders() argument
2952 ArrayRef<Elf_Shdr> Sections = unwrapOrError(Obj->sections()); in printSectionHeaders()
2955 << "0x" << to_hexString(Obj->getHeader()->e_shoff, false) << ":\n\n"; in printSectionHeaders()
2975 Fields[1].Str = unwrapOrError(Obj->getSectionName(&Sec)); in printSectionHeaders()
2976 Type = getSectionTypeString(Obj->getHeader()->e_machine, Sec.sh_type); in printSectionHeaders()
3019 void GNUStyle<ELFT>::printSymtabMessage(const ELFO *Obj, StringRef Name, in printSymtabMessage() argument
3034 std::string GNUStyle<ELFT>::getSymbolSectionNdx(const ELFO *Obj, in getSymbolSectionNdx() argument
3070 void GNUStyle<ELFT>::printSymbol(const ELFO *Obj, const Elf_Sym *Symbol, in printSymbol() argument
3099 if (Obj->getHeader()->e_machine == ELF::EM_AMDGPU && in printSymbol()
3107 Section = getSymbolSectionNdx(Obj, Symbol, FirstSym); in printSymbol()
3122 void GNUStyle<ELFT>::printHashedSymbol(const ELFO *Obj, const Elf_Sym *FirstSym, in printHashedSymbol() argument
3143 if (Obj->getHeader()->e_machine == ELF::EM_AMDGPU && in printHashedSymbol()
3151 Section = getSymbolSectionNdx(Obj, Symbol, FirstSym); in printHashedSymbol()
3167 template <class ELFT> void GNUStyle<ELFT>::printSymbols(const ELFO *Obj) { in printSymbols() argument
3175 void GNUStyle<ELFT>::printDynamicSymbols(const ELFO *Obj) { in printDynamicSymbols() argument
3206 printHashedSymbol(Obj, &DynSyms[0], Ch, StringTable, Buc); in printDynamicSymbols()
3228 printHashedSymbol(Obj, &DynSyms[0], Index++, StringTable, Buc); in printDynamicSymbols()
3305 void GNUStyle<ELFT>::printProgramHeaders(const ELFO *Obj) { in printProgramHeaders() argument
3311 const Elf_Ehdr *Header = Obj->getHeader(); in printProgramHeaders()
3326 for (const auto &Phdr : unwrapOrError(Obj->program_headers())) { in printProgramHeaders()
3347 OS << reinterpret_cast<const char *>(Obj->base()) + Phdr.p_offset << "]"; in printProgramHeaders()
3353 for (const Elf_Phdr &Phdr : unwrapOrError(Obj->program_headers())) { in printProgramHeaders()
3356 for (const Elf_Shdr &Sec : unwrapOrError(Obj->sections())) { in printProgramHeaders()
3367 Sections += unwrapOrError(Obj->getSectionName(&Sec)).str() + " "; in printProgramHeaders()
3375 void GNUStyle<ELFT>::printDynamicRelocation(const ELFO *Obj, Elf_Rela R, in printDynamicRelocation() argument
3385 uint32_t SymIndex = R.getSymbol(Obj->isMips64EL()); in printDynamicRelocation()
3387 Obj->getRelocationTypeName(R.getType(Obj->isMips64EL()), RelocName); in printDynamicRelocation()
3421 void GNUStyle<ELFT>::printDynamicRelocations(const ELFO *Obj) { in printDynamicRelocations() argument
3429 Obj->base(), in printDynamicRelocations()
3433 printDynamicRelocation(Obj, Rela, true); in printDynamicRelocations()
3438 Obj->base(), in printDynamicRelocations()
3446 printDynamicRelocation(Obj, Rela, false); in printDynamicRelocations()
3452 Obj->base(), in printDynamicRelocations()
3456 std::vector<Elf_Rela> RelrRelas = unwrapOrError(Obj->decode_relrs(Relrs)); in printDynamicRelocations()
3458 printDynamicRelocation(Obj, Rela, false); in printDynamicRelocations()
3464 Obj->base(), in printDynamicRelocations()
3470 printDynamicRelocation(Obj, Rela, true); in printDynamicRelocations()
3478 printDynamicRelocation(Obj, Rela, false); in printDynamicRelocations()
3488 void GNUStyle<ELFT>::printHashHistogram(const ELFFile<ELFT> *Obj) { in printHashHistogram() argument
3589 void GNUStyle<ELFT>::printCGProfile(const ELFFile<ELFT> *Obj) { in printCGProfile() argument
3594 void GNUStyle<ELFT>::printAddrsig(const ELFFile<ELFT> *Obj) { in printAddrsig() argument
3906 void GNUStyle<ELFT>::printNotes(const ELFFile<ELFT> *Obj) { in printNotes() argument
3907 const Elf_Ehdr *e = Obj->getHeader(); in printNotes()
3947 for (const auto &P : unwrapOrError(Obj->program_headers())) { in printNotes()
3952 for (const auto &Note : Obj->notes(P, Err)) in printNotes()
3958 for (const auto &S : unwrapOrError(Obj->sections())) { in printNotes()
3963 for (const auto &Note : Obj->notes(S, Err)) in printNotes()
3972 void GNUStyle<ELFT>::printELFLinkerOptions(const ELFFile<ELFT> *Obj) { in printELFLinkerOptions() argument
4031 OS << getSymbolSectionNdx(Parser.Obj, Sym, in printMipsGOT()
4081 OS << getSymbolSectionNdx(Parser.Obj, Sym, in printMipsPLT()
4089 template <class ELFT> void LLVMStyle<ELFT>::printFileHeaders(const ELFO *Obj) { in printFileHeaders() argument
4090 const Elf_Ehdr *e = Obj->getHeader(); in printFileHeaders()
4142 W.printString("SectionHeaderCount", getSectionHeadersNumString(Obj)); in printFileHeaders()
4143 W.printString("StringTableSectionIndex", getSectionHeaderTableIndexString(Obj)); in printFileHeaders()
4148 void LLVMStyle<ELFT>::printGroupSections(const ELFO *Obj) { in printGroupSections() argument
4150 std::vector<GroupSection> V = getGroups<ELFT>(Obj); in printGroupSections()
4181 template <class ELFT> void LLVMStyle<ELFT>::printRelocations(const ELFO *Obj) { in printRelocations() argument
4185 for (const Elf_Shdr &Sec : unwrapOrError(Obj->sections())) { in printRelocations()
4196 StringRef Name = unwrapOrError(Obj->getSectionName(&Sec)); in printRelocations()
4201 printRelocations(&Sec, Obj); in printRelocations()
4209 void LLVMStyle<ELFT>::printRelocations(const Elf_Shdr *Sec, const ELFO *Obj) { in printRelocations() argument
4210 const Elf_Shdr *SymTab = unwrapOrError(Obj->getSection(Sec->sh_link)); in printRelocations()
4214 for (const Elf_Rel &R : unwrapOrError(Obj->rels(Sec))) { in printRelocations()
4219 printRelocation(Obj, Rela, SymTab); in printRelocations()
4223 for (const Elf_Rela &R : unwrapOrError(Obj->relas(Sec))) in printRelocations()
4224 printRelocation(Obj, R, SymTab); in printRelocations()
4228 Elf_Relr_Range Relrs = unwrapOrError(Obj->relrs(Sec)); in printRelocations()
4233 std::vector<Elf_Rela> RelrRelas = unwrapOrError(Obj->decode_relrs(Relrs)); in printRelocations()
4235 printRelocation(Obj, R, SymTab); in printRelocations()
4241 for (const Elf_Rela &R : unwrapOrError(Obj->android_relas(Sec))) in printRelocations()
4242 printRelocation(Obj, R, SymTab); in printRelocations()
4248 void LLVMStyle<ELFT>::printRelocation(const ELFO *Obj, Elf_Rela Rel, in printRelocation() argument
4251 Obj->getRelocationTypeName(Rel.getType(Obj->isMips64EL()), RelocName); in printRelocation()
4253 const Elf_Sym *Sym = unwrapOrError(Obj->getRelocationSymbol(&Rel, SymTab)); in printRelocation()
4256 Obj->getSection(Sym, SymTab, this->dumper()->getShndxTable())); in printRelocation()
4257 TargetName = unwrapOrError(Obj->getSectionName(Sec)); in printRelocation()
4259 StringRef StrTable = unwrapOrError(Obj->getStringTableForSymtab(*SymTab)); in printRelocation()
4266 W.printNumber("Type", RelocName, (int)Rel.getType(Obj->isMips64EL())); in printRelocation()
4268 Rel.getSymbol(Obj->isMips64EL())); in printRelocation()
4279 void LLVMStyle<ELFT>::printSectionHeaders(const ELFO *Obj) { in printSectionHeaders() argument
4283 for (const Elf_Shdr &Sec : unwrapOrError(Obj->sections())) { in printSectionHeaders()
4286 StringRef Name = unwrapOrError(Obj->getSectionName(&Sec)); in printSectionHeaders()
4293 object::getELFSectionTypeName(Obj->getHeader()->e_machine, Sec.sh_type), in printSectionHeaders()
4297 switch (Obj->getHeader()->e_machine) { in printSectionHeaders()
4334 printRelocations(&Sec, Obj); in printSectionHeaders()
4340 StringRef StrTable = unwrapOrError(Obj->getStringTableForSymtab(*Symtab)); in printSectionHeaders()
4342 for (const Elf_Sym &Sym : unwrapOrError(Obj->symbols(Symtab))) { in printSectionHeaders()
4344 Obj->getSection(&Sym, Symtab, this->dumper()->getShndxTable())); in printSectionHeaders()
4346 printSymbol(Obj, &Sym, unwrapOrError(Obj->symbols(Symtab)).begin(), in printSectionHeaders()
4352 ArrayRef<uint8_t> Data = unwrapOrError(Obj->getSectionContents(&Sec)); in printSectionHeaders()
4360 void LLVMStyle<ELFT>::printSymbol(const ELFO *Obj, const Elf_Sym *Symbol, in printSymbol() argument
4375 if (Obj->getHeader()->e_machine == ELF::EM_AMDGPU && in printSymbol()
4387 if (Obj->getHeader()->e_machine == EM_MIPS) { in printSymbol()
4405 template <class ELFT> void LLVMStyle<ELFT>::printSymbols(const ELFO *Obj) { in printSymbols() argument
4411 void LLVMStyle<ELFT>::printDynamicSymbols(const ELFO *Obj) { in printDynamicSymbols() argument
4417 void LLVMStyle<ELFT>::printDynamicRelocations(const ELFO *Obj) { in printDynamicRelocations() argument
4428 printDynamicRelocation(Obj, Rela); in printDynamicRelocations()
4435 printDynamicRelocation(Obj, Rela); in printDynamicRelocations()
4439 std::vector<Elf_Rela> RelrRelas = unwrapOrError(Obj->decode_relrs(Relrs)); in printDynamicRelocations()
4441 printDynamicRelocation(Obj, Rela); in printDynamicRelocations()
4445 printDynamicRelocation(Obj, Rela); in printDynamicRelocations()
4452 printDynamicRelocation(Obj, Rela); in printDynamicRelocations()
4459 void LLVMStyle<ELFT>::printDynamicRelocation(const ELFO *Obj, Elf_Rela Rel) { in printDynamicRelocation() argument
4461 Obj->getRelocationTypeName(Rel.getType(Obj->isMips64EL()), RelocName); in printDynamicRelocation()
4463 uint32_t SymIndex = Rel.getSymbol(Obj->isMips64EL()); in printDynamicRelocation()
4470 W.printNumber("Type", RelocName, (int)Rel.getType(Obj->isMips64EL())); in printDynamicRelocation()
4482 void LLVMStyle<ELFT>::printProgramHeaders(const ELFO *Obj) { in printProgramHeaders() argument
4485 for (const Elf_Phdr &Phdr : unwrapOrError(Obj->program_headers())) { in printProgramHeaders()
4488 getElfSegmentType(Obj->getHeader()->e_machine, Phdr.p_type), in printProgramHeaders()
4501 void LLVMStyle<ELFT>::printHashHistogram(const ELFFile<ELFT> *Obj) { in printHashHistogram() argument
4506 void LLVMStyle<ELFT>::printCGProfile(const ELFFile<ELFT> *Obj) { in printCGProfile() argument
4511 unwrapOrError(Obj->template getSectionContentsAsArray<Elf_CGProfile>( in printCGProfile()
4524 void LLVMStyle<ELFT>::printAddrsig(const ELFFile<ELFT> *Obj) { in printAddrsig() argument
4529 Obj->getSectionContents(this->dumper()->getDotAddrsigSec())); in printAddrsig()
4577 void LLVMStyle<ELFT>::printNotes(const ELFFile<ELFT> *Obj) { in printNotes() argument
4579 const Elf_Ehdr *e = Obj->getHeader(); in printNotes()
4617 for (const auto &P : unwrapOrError(Obj->program_headers())) { in printNotes()
4623 for (const auto &Note : Obj->notes(P, Err)) in printNotes()
4629 for (const auto &S : unwrapOrError(Obj->sections())) { in printNotes()
4635 for (const auto &Note : Obj->notes(S, Err)) in printNotes()
4644 void LLVMStyle<ELFT>::printELFLinkerOptions(const ELFFile<ELFT> *Obj) { in printELFLinkerOptions() argument
4647 for (const Elf_Shdr &Shdr : unwrapOrError(Obj->sections())) { in printELFLinkerOptions()
4651 ArrayRef<uint8_t> Contents = unwrapOrError(Obj->getSectionContents(&Shdr)); in printELFLinkerOptions()