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

References

tools/llvm-readobj/ELFDumper.cpp
 5148     DictScope D(W, "ElfHeader");
 5150       DictScope D(W, "Ident");
 5151       W.printBinary("Magic", makeArrayRef(E->e_ident).slice(ELF::EI_MAG0, 4));
 5152       W.printEnum("Class", E->e_ident[ELF::EI_CLASS], makeArrayRef(ElfClass));
 5153       W.printEnum("DataEncoding", E->e_ident[ELF::EI_DATA],
 5155       W.printNumber("FileVersion", E->e_ident[ELF::EI_VERSION]);
 5172       W.printEnum("OS/ABI", E->e_ident[ELF::EI_OSABI], OSABI);
 5173       W.printNumber("ABIVersion", E->e_ident[ELF::EI_ABIVERSION]);
 5174       W.printBinary("Unused", makeArrayRef(E->e_ident).slice(ELF::EI_PAD));
 5177     W.printEnum("Type", E->e_type, makeArrayRef(ElfObjectFileType));
 5178     W.printEnum("Machine", E->e_machine, makeArrayRef(ElfMachineType));
 5179     W.printNumber("Version", E->e_version);
 5180     W.printHex("Entry", E->e_entry);
 5181     W.printHex("ProgramHeaderOffset", E->e_phoff);
 5182     W.printHex("SectionHeaderOffset", E->e_shoff);
 5184       W.printFlags("Flags", E->e_flags, makeArrayRef(ElfHeaderMipsFlags),
 5188       W.printFlags("Flags", E->e_flags, makeArrayRef(ElfHeaderAMDGPUFlags),
 5191       W.printFlags("Flags", E->e_flags, makeArrayRef(ElfHeaderRISCVFlags));
 5193       W.printFlags("Flags", E->e_flags);
 5194     W.printNumber("HeaderSize", E->e_ehsize);
 5195     W.printNumber("ProgramHeaderEntrySize", E->e_phentsize);
 5196     W.printNumber("ProgramHeaderCount", E->e_phnum);
 5197     W.printNumber("SectionHeaderEntrySize", E->e_shentsize);
 5198     W.printString("SectionHeaderCount",
 5200     W.printString("StringTableSectionIndex",
 5207   DictScope Lists(W, "Groups");
 5211     DictScope D(W, "Group");
 5212     W.printNumber("Name", G.Name, G.ShName);
 5213     W.printNumber("Index", G.Index);
 5214     W.printNumber("Link", G.Link);
 5215     W.printNumber("Info", G.Info);
 5216     W.printHex("Type", getGroupType(G.Type), G.Type);
 5217     W.startLine() << "Signature: " << G.Signature << "\n";
 5219     ListScope L(W, "Section(s) in group");
 5223         W.flush();
 5231       W.startLine() << GM.Name << " (" << GM.Index << ")\n";
 5236     W.startLine() << "There are no group sections in the file.\n";
 5240   ListScope D(W, "Relocations");
 5254     W.startLine() << "Section (" << SectionNumber << ") " << Name << " {\n";
 5255     W.indent();
 5259     W.unindent();
 5260     W.startLine() << "}\n";
 5288         W.startLine() << W.hex(R) << "\n";
 5288         W.startLine() << W.hex(R) << "\n";
 5327     DictScope Group(W, "Relocation");
 5328     W.printHex("Offset", Rel.r_offset);
 5329     W.printNumber("Type", RelocName, (int)Rel.getType(Obj->isMips64EL()));
 5330     W.printNumber("Symbol", !TargetName.empty() ? TargetName : "-",
 5332     W.printHex("Addend", Rel.r_addend);
 5334     raw_ostream &OS = W.startLine();
 5335     OS << W.hex(Rel.r_offset) << " " << RelocName << " "
 5336        << (!TargetName.empty() ? TargetName : "-") << " " << W.hex(Rel.r_addend)
 5343   ListScope SectionsD(W, "Sections");
 5351     DictScope SectionD(W, "Section");
 5352     W.printNumber("Index", ++SectionIndex);
 5353     W.printNumber("Name", Name, Sec.sh_name);
 5354     W.printHex(
 5386     W.printFlags("Flags", Sec.sh_flags, makeArrayRef(SectionFlags));
 5387     W.printHex("Address", Sec.sh_addr);
 5388     W.printHex("Offset", Sec.sh_offset);
 5389     W.printNumber("Size", Sec.sh_size);
 5390     W.printNumber("Link", Sec.sh_link);
 5391     W.printNumber("Info", Sec.sh_info);
 5392     W.printNumber("AddressAlignment", Sec.sh_addralign);
 5393     W.printNumber("EntrySize", Sec.sh_entsize);
 5396       ListScope D(W, "Relocations");
 5401       ListScope D(W, "Symbols");
 5422       W.printBinaryBlock(
 5441   DictScope D(W, "Symbol");
 5442   W.printNumber("Name", FullSymbolName, Symbol->st_name);
 5443   W.printHex("Value", Symbol->st_value);
 5444   W.printNumber("Size", Symbol->st_size);
 5445   W.printEnum("Binding", Symbol->getBinding(), makeArrayRef(ElfSymbolBindings));
 5448     W.printEnum("Type", SymbolType, makeArrayRef(AMDGPUSymbolTypes));
 5450     W.printEnum("Type", SymbolType, makeArrayRef(ElfSymbolTypes));
 5454     W.printNumber("Other", 0);
 5471     W.printFlags("Other", Symbol->st_other, makeArrayRef(SymOtherFlags), 0x3u);
 5473   W.printHex("Section", SectionName, SectionIndex);
 5486   ListScope Group(W, "Symbols");
 5492   ListScope Group(W, "DynamicSymbols");
 5501   raw_ostream &OS = W.getOStream();
 5502   W.startLine() << "DynamicSection [ (" << Table.size() << " entries)\n";
 5506     W.startLine() << "  Tag                Type                 Name/Value\n";
 5508     W.startLine() << "  Tag        Type                 Name/Value\n";
 5511     W.startLine() << "  " << format_hex(Tag, Is64 ? 18 : 10, true) << " "
 5518   W.startLine() << "]\n";
 5529   W.startLine() << "Dynamic Relocations {\n";
 5530   W.indent();
 5560   W.unindent();
 5561   W.startLine() << "}\n";
 5572     DictScope Group(W, "Relocation");
 5573     W.printHex("Offset", Rel.r_offset);
 5574     W.printNumber("Type", RelocName, (int)Rel.getType(Obj->isMips64EL()));
 5575     W.printString("Symbol", !SymbolName.empty() ? SymbolName : "-");
 5576     W.printHex("Addend", Rel.r_addend);
 5578     raw_ostream &OS = W.startLine();
 5579     OS << W.hex(Rel.r_offset) << " " << RelocName << " "
 5580        << (!SymbolName.empty() ? SymbolName : "-") << " " << W.hex(Rel.r_addend)
 5597   ListScope L(W, "ProgramHeaders");
 5601     DictScope P(W, "ProgramHeader");
 5602     W.printHex("Type",
 5605     W.printHex("Offset", Phdr.p_offset);
 5606     W.printHex("VirtualAddress", Phdr.p_vaddr);
 5607     W.printHex("PhysicalAddress", Phdr.p_paddr);
 5608     W.printNumber("FileSize", Phdr.p_filesz);
 5609     W.printNumber("MemSize", Phdr.p_memsz);
 5610     W.printFlags("Flags", Phdr.p_flags, makeArrayRef(ElfSegmentFlags));
 5611     W.printNumber("Alignment", Phdr.p_align);
 5618   ListScope SS(W, "VersionSymbols");
 5629     DictScope S(W, "Symbol");
 5633     W.printNumber("Version", Versym->vs_index & VERSYM_VERSION);
 5634     W.printString("Name", FullSymbolName);
 5642   ListScope SD(W, "VersionDefinitions");
 5661     DictScope Def(W, "Definition");
 5662     W.printNumber("Version", Verdef->vd_version);
 5663     W.printEnum("Flags", Verdef->vd_flags, makeArrayRef(SymVersionFlags));
 5664     W.printNumber("Index", Verdef->vd_ndx);
 5665     W.printNumber("Hash", Verdef->vd_hash);
 5666     W.printString("Name", StringRef(reinterpret_cast<const char *>(
 5679       W.printString("Predecessor",
 5690   ListScope SD(W, "VersionRequirements");
 5704     DictScope Entry(W, "Dependency");
 5705     W.printNumber("Version", Verneed->vn_version);
 5706     W.printNumber("Count", Verneed->vn_cnt);
 5707     W.printString("FileName",
 5712     ListScope L(W, "Entries");
 5716       DictScope Entry(W, "Entry");
 5717       W.printNumber("Hash", Vernaux->vna_hash);
 5718       W.printEnum("Flags", Vernaux->vna_flags, makeArrayRef(SymVersionFlags));
 5719       W.printNumber("Index", Vernaux->vna_other);
 5720       W.printString("Name",
 5731   W.startLine() << "Hash Histogram not implemented!\n";
 5736   ListScope L(W, "CGProfile");
 5743     DictScope D(W, "CGProfileEntry");
 5744     W.printNumber(
 5749     W.printNumber(
 5754     W.printNumber("Weight", CGPE.cgp_weight);
 5775   ListScope L(W, "Addrsig");
 5790       W.printNumber("Sym", *NameOrErr, Sym);
 5794     W.printNumber("Sym", "<?>", Sym);
 5842   ListScope L(W, "Notes");
 5846     W.printHex("Offset", Offset);
 5847     W.printHex("Size", Size);
 5851     DictScope D2(W, "Note");
 5857     W.printString("Owner", Name);
 5858     W.printHex("Data size", Descriptor.size());
 5860       W.printString("Type", getGNUNoteTypeName(Type));
 5862       W.printString("Type", getFreeBSDNoteTypeName(Type));
 5864       W.printString("Type", getAMDNoteTypeName(Type));
 5866       W.printString("Type", getAMDGPUNoteTypeName(Type));
 5872         W.printString("Type", NoteType);
 5874         W.printString("Type",
 5881       printGNUNoteLLVMStyle<ELFT>(Type, Descriptor, W);
 5885         W.printString(N.Type, N.Value);
 5889         W.printString(N.Type, N.Value);
 5897           printCoreNoteLLVMStyle(*Note, W);
 5902       W.printBinaryBlock("Description data", Descriptor);
 5911       DictScope D(W, "NoteSection");
 5924       DictScope D(W, "NoteSection");
 5937   ListScope L(W, "LinkerOptions");
 5950       W.printString(Key, Value);
 5959   ListScope L(W, "StackSizes");
 5968   DictScope D(W, "Entry");
 5969   W.printString("Function", FuncName);
 5970   W.printHex("Size", Size);
 5976     W.printHex("Address", Parser.getGotAddress(E));
 5977     W.printNumber("Access", Parser.getGotOffset(E));
 5978     W.printHex("Initial", *E);
 5981   DictScope GS(W, Parser.IsStatic ? "Static GOT" : "Primary GOT");
 5983   W.printHex("Canonical gp value", Parser.getGp());
 5985     ListScope RS(W, "Reserved entries");
 5987       DictScope D(W, "Entry");
 5989       W.printString("Purpose", StringRef("Lazy resolver"));
 5993       DictScope D(W, "Entry");
 5995       W.printString("Purpose", StringRef("Module pointer (GNU extension)"));
 5999     ListScope LS(W, "Local entries");
 6001       DictScope D(W, "Entry");
 6010     ListScope GS(W, "Global entries");
 6012       DictScope D(W, "Entry");
 6017       W.printHex("Value", Sym->st_value);
 6018       W.printEnum("Type", Sym->getType(), makeArrayRef(ElfSymbolTypes));
 6025       W.printHex("Section", SectionName, SectionIndex);
 6029       W.printNumber("Name", SymName, Sym->st_name);
 6033   W.printNumber("Number of TLS and multi-GOT entries",
 6040     W.printHex("Address", Parser.getPltAddress(E));
 6041     W.printHex("Initial", *E);
 6044   DictScope GS(W, "PLT GOT");
 6047     ListScope RS(W, "Reserved entries");
 6049       DictScope D(W, "Entry");
 6051       W.printString("Purpose", StringRef("PLT lazy resolver"));
 6055       DictScope D(W, "Entry");
 6057       W.printString("Purpose", StringRef("Module pointer"));
 6061     ListScope LS(W, "Entries");
 6063       DictScope D(W, "Entry");
 6067       W.printHex("Value", Sym->st_value);
 6068       W.printEnum("Type", Sym->getType(), makeArrayRef(ElfSymbolTypes));
 6075       W.printHex("Section", SectionName, SectionIndex);
 6079       W.printNumber("Name", SymName, Sym->st_name);
 6090     W.startLine() << "There is no .MIPS.abiflags section in the file.\n";
 6096     W.startLine() << "The .MIPS.abiflags section has a wrong size.\n";
 6102   raw_ostream &OS = W.getOStream();
 6103   DictScope GS(W, "MIPS ABI Flags");
 6105   W.printNumber("Version", Flags->version);
 6106   W.startLine() << "ISA: ";
 6112   W.printEnum("ISA Extension", Flags->isa_ext, makeArrayRef(ElfMipsISAExtType));
 6113   W.printFlags("ASEs", Flags->ases, makeArrayRef(ElfMipsASEFlags));
 6114   W.printEnum("FP ABI", Flags->fp_abi, makeArrayRef(ElfMipsFpABIType));
 6115   W.printNumber("GPR size", getMipsRegisterSize(Flags->gpr_size));
 6116   W.printNumber("CPR1 size", getMipsRegisterSize(Flags->cpr1_size));
 6117   W.printNumber("CPR2 size", getMipsRegisterSize(Flags->cpr2_size));
 6118   W.printFlags("Flags 1", Flags->flags1, makeArrayRef(ElfMipsFlags1));
 6119   W.printHex("Flags 2", Flags->flags2);