Lines Matching refs:W
573 DictScope D(W, "ElfHeader"); in printFileHeaders()
575 DictScope D(W, "Ident"); in printFileHeaders()
576 W.printBinary("Magic", makeArrayRef(Header->e_ident).slice(ELF::EI_MAG0, in printFileHeaders()
578 W.printEnum ("Class", Header->e_ident[ELF::EI_CLASS], in printFileHeaders()
580 W.printEnum ("DataEncoding", Header->e_ident[ELF::EI_DATA], in printFileHeaders()
582 W.printNumber("FileVersion", Header->e_ident[ELF::EI_VERSION]); in printFileHeaders()
587 W.printHex("OS/ABI", "AMDGPU_HSA", ELF::ELFOSABI_AMDGPU_HSA); in printFileHeaders()
589 W.printEnum ("OS/ABI", Header->e_ident[ELF::EI_OSABI], in printFileHeaders()
591 W.printNumber("ABIVersion", Header->e_ident[ELF::EI_ABIVERSION]); in printFileHeaders()
592 W.printBinary("Unused", makeArrayRef(Header->e_ident).slice(ELF::EI_PAD)); in printFileHeaders()
595 W.printEnum ("Type", Header->e_type, makeArrayRef(ElfObjectFileType)); in printFileHeaders()
596 W.printEnum ("Machine", Header->e_machine, makeArrayRef(ElfMachineType)); in printFileHeaders()
597 W.printNumber("Version", Header->e_version); in printFileHeaders()
598 W.printHex ("Entry", Header->e_entry); in printFileHeaders()
599 W.printHex ("ProgramHeaderOffset", Header->e_phoff); in printFileHeaders()
600 W.printHex ("SectionHeaderOffset", Header->e_shoff); in printFileHeaders()
602 W.printFlags("Flags", Header->e_flags, makeArrayRef(ElfHeaderMipsFlags), in printFileHeaders()
606 W.printFlags("Flags", Header->e_flags); in printFileHeaders()
607 W.printNumber("HeaderSize", Header->e_ehsize); in printFileHeaders()
608 W.printNumber("ProgramHeaderEntrySize", Header->e_phentsize); in printFileHeaders()
609 W.printNumber("ProgramHeaderCount", Header->e_phnum); in printFileHeaders()
610 W.printNumber("SectionHeaderEntrySize", Header->e_shentsize); in printFileHeaders()
611 W.printNumber("SectionHeaderCount", Header->e_shnum); in printFileHeaders()
612 W.printNumber("StringTableSectionIndex", Header->e_shstrndx); in printFileHeaders()
618 ListScope SectionsD(W, "Sections"); in printSections()
626 DictScope SectionD(W, "Section"); in printSections()
627 W.printNumber("Index", SectionIndex); in printSections()
628 W.printNumber("Name", Name, Sec.sh_name); in printSections()
629 W.printHex("Type", in printSections()
632 W.printFlags("Flags", Sec.sh_flags, makeArrayRef(ElfSectionFlags)); in printSections()
633 W.printHex("Address", Sec.sh_addr); in printSections()
634 W.printHex("Offset", Sec.sh_offset); in printSections()
635 W.printNumber("Size", Sec.sh_size); in printSections()
636 W.printNumber("Link", Sec.sh_link); in printSections()
637 W.printNumber("Info", Sec.sh_info); in printSections()
638 W.printNumber("AddressAlignment", Sec.sh_addralign); in printSections()
639 W.printNumber("EntrySize", Sec.sh_entsize); in printSections()
642 ListScope D(W, "Relocations"); in printSections()
647 ListScope D(W, "Symbols"); in printSections()
659 W.printBinaryBlock("SectionData", in printSections()
667 ListScope D(W, "Relocations"); in printRelocations()
678 W.startLine() << "Section (" << SectionNumber << ") " << Name << " {\n"; in printRelocations()
679 W.indent(); in printRelocations()
683 W.unindent(); in printRelocations()
684 W.startLine() << "}\n"; in printRelocations()
690 W.startLine() << "Dynamic Relocations {\n"; in printDynamicRelocations()
691 W.indent(); in printDynamicRelocations()
702 DictScope Group(W, "Relocation"); in printDynamicRelocations()
703 W.printHex("Offset", RelI->r_offset); in printDynamicRelocations()
704 W.printNumber("Type", RelocName, (int)RelI->getType(Obj->isMips64EL())); in printDynamicRelocations()
705 W.printString("Symbol", SymbolName.size() > 0 ? SymbolName : "-"); in printDynamicRelocations()
706 W.printHex("Addend", RelI->r_addend); in printDynamicRelocations()
709 raw_ostream& OS = W.startLine(); in printDynamicRelocations()
710 OS << W.hex(RelI->r_offset) in printDynamicRelocations()
713 << " " << W.hex(RelI->r_addend) in printDynamicRelocations()
717 W.unindent(); in printDynamicRelocations()
718 W.startLine() << "}\n"; in printDynamicRelocations()
771 DictScope Group(W, "Relocation"); in printRelocation()
772 W.printHex("Offset", Rel.r_offset); in printRelocation()
773 W.printNumber("Type", RelocName, (int)Rel.getType(Obj->isMips64EL())); in printRelocation()
774 W.printNumber("Symbol", TargetName.size() > 0 ? TargetName : "-", in printRelocation()
776 W.printHex("Addend", Rel.r_addend); in printRelocation()
778 raw_ostream& OS = W.startLine(); in printRelocation()
779 OS << W.hex(Rel.r_offset) << " " << RelocName << " " in printRelocation()
781 << W.hex(Rel.r_addend) << "\n"; in printRelocation()
787 ListScope Group(W, "Symbols"); in printSymbols()
794 ListScope Group(W, "DynamicSymbols"); in printDynamicSymbols()
808 DictScope D(W, "Symbol"); in printSymbol()
809 W.printNumber("Name", FullSymbolName, Symbol->st_name); in printSymbol()
810 W.printHex ("Value", Symbol->st_value); in printSymbol()
811 W.printNumber("Size", Symbol->st_size); in printSymbol()
812 W.printEnum ("Binding", Symbol->getBinding(), in printSymbol()
814 W.printEnum ("Type", Symbol->getType(), makeArrayRef(ElfSymbolTypes)); in printSymbol()
815 W.printNumber("Other", Symbol->st_other); in printSymbol()
816 W.printHex("Section", SectionName, SectionIndex); in printSymbol()
1042 W.startLine() << "UnwindInfo not implemented.\n"; in printUnwindInfo()
1049 ARM::EHABI::PrinterContext<ELFType<support::little, false>> Ctx(W, Obj); in printUnwindInfo()
1052 W.startLine() << "UnwindInfo not implemented.\n"; in printUnwindInfo()
1064 raw_ostream &OS = W.getOStream(); in printDynamicTable()
1065 W.startLine() << "DynamicSection [ (" << Total << " entries)\n"; in printDynamicTable()
1069 W.startLine() in printDynamicTable()
1073 W.startLine() in printDynamicTable()
1081 W.startLine() << "]\n"; in printDynamicTable()
1086 ListScope D(W, "NeededLibraries"); in printNeededLibraries()
1104 ListScope L(W, "ProgramHeaders"); in printProgramHeaders()
1109 DictScope P(W, "ProgramHeader"); in printProgramHeaders()
1110 W.printHex ("Type", in printProgramHeaders()
1113 W.printHex ("Offset", PI->p_offset); in printProgramHeaders()
1114 W.printHex ("VirtualAddress", PI->p_vaddr); in printProgramHeaders()
1115 W.printHex ("PhysicalAddress", PI->p_paddr); in printProgramHeaders()
1116 W.printNumber("FileSize", PI->p_filesz); in printProgramHeaders()
1117 W.printNumber("MemSize", PI->p_memsz); in printProgramHeaders()
1118 W.printFlags ("Flags", PI->p_flags, makeArrayRef(ElfSegmentFlags)); in printProgramHeaders()
1119 W.printNumber("Alignment", PI->p_align); in printProgramHeaders()
1125 DictScope D(W, "HashTable"); in printHashTable()
1129 W.printNumber("Num Buckets", HT->nbucket); in printHashTable()
1130 W.printNumber("Num Chains", HT->nchain); in printHashTable()
1131 W.printList("Buckets", HT->buckets()); in printHashTable()
1132 W.printList("Chains", HT->chains()); in printHashTable()
1137 W.startLine() << "Attributes not implemented.\n"; in printAttributes()
1143 W.startLine() << "Attributes not implemented.\n"; in printAttributes()
1147 DictScope BA(W, "BuildAttributes"); in printAttributes()
1162 W.printHex("FormatVersion", (*Contents)[0]); in printAttributes()
1166 ARMAttributeParser(W).Parse(*Contents); in printAttributes()
1178 MipsGOTParser(const ObjectFile *Obj, StreamWriter &W);
1189 StreamWriter &W; member in __anonaf7422cb0411::MipsGOTParser
1210 MipsGOTParser<ELFT>::MipsGOTParser(const ObjectFile *Obj, StreamWriter &W) in MipsGOTParser() argument
1211 : Obj(Obj), W(W) { in MipsGOTParser()
1238 W.startLine() << "Cannot find PLTGOT dynamic table tag.\n"; in parseGOT()
1242 W.startLine() << "Cannot find MIPS_LOCAL_GOTNO dynamic table tag.\n"; in parseGOT()
1246 W.startLine() << "Cannot find MIPS_GOTSYM dynamic table tag.\n"; in parseGOT()
1252 W.startLine() << "There is no .got section in the file.\n"; in parseGOT()
1258 W.startLine() << "The .got section is empty.\n"; in parseGOT()
1263 W.startLine() << "MIPS_LOCAL_GOTNO exceeds a number of GOT entries.\n"; in parseGOT()
1272 W.startLine() << "MIPS_GOTSYM exceeds a number of dynamic symbols.\n"; in parseGOT()
1279 W.startLine() << "Number of global GOT entries exceeds the size of GOT.\n"; in parseGOT()
1287 DictScope GS(W, "Primary GOT"); in parseGOT()
1289 W.printHex("Canonical gp value", GOTShdr->sh_addr + 0x7ff0); in parseGOT()
1291 ListScope RS(W, "Reserved entries"); in parseGOT()
1294 DictScope D(W, "Entry"); in parseGOT()
1296 W.printString("Purpose", StringRef("Lazy resolver")); in parseGOT()
1300 DictScope D(W, "Entry"); in parseGOT()
1302 W.printString("Purpose", StringRef("Module pointer (GNU extension)")); in parseGOT()
1306 ListScope LS(W, "Local entries"); in parseGOT()
1308 DictScope D(W, "Entry"); in parseGOT()
1313 ListScope GS(W, "Global entries"); in parseGOT()
1318 DictScope D(W, "Entry"); in parseGOT()
1324 W.printNumber("Number of TLS and multi-GOT entries", uint64_t(SpecGotNum)); in parseGOT()
1329 W.startLine() << "Cannot find MIPS_PLTGOT dynamic table tag.\n"; in parsePLT()
1333 W.startLine() << "Cannot find JMPREL dynamic table tag.\n"; in parsePLT()
1339 W.startLine() << "There is no .got.plt section in the file.\n"; in parsePLT()
1344 W.startLine() << "The .got.plt section is empty.\n"; in parsePLT()
1350 W.startLine() << "There is no .rel.plt section in the file.\n"; in parsePLT()
1358 DictScope GS(W, "PLT GOT"); in parsePLT()
1360 ListScope RS(W, "Reserved entries"); in parsePLT()
1366 ListScope GS(W, "Entries"); in parsePLT()
1407 W.printHex("Address", GotAddr + Offset); in printGotEntry()
1408 W.printNumber("Access", Offset - 0x7ff0); in printGotEntry()
1409 W.printHex("Initial", *It); in printGotEntry()
1418 W.printHex("Value", Sym->st_value); in printGlobalGotEntry()
1419 W.printEnum("Type", Sym->getType(), makeArrayRef(ElfSymbolTypes)); in printGlobalGotEntry()
1424 W.printHex("Section", SectionName, SectionIndex); in printGlobalGotEntry()
1427 W.printNumber("Name", FullSymbolName, Sym->st_name); in printGlobalGotEntry()
1433 DictScope D(W, "Entry"); in printPLTEntry()
1435 W.printHex("Address", PLTAddr + Offset); in printPLTEntry()
1436 W.printHex("Initial", *It); in printPLTEntry()
1437 W.printString("Purpose", Purpose); in printPLTEntry()
1443 DictScope D(W, "Entry"); in printPLTEntry()
1445 W.printHex("Address", PLTAddr + Offset); in printPLTEntry()
1446 W.printHex("Initial", *It); in printPLTEntry()
1447 W.printHex("Value", Sym->st_value); in printPLTEntry()
1448 W.printEnum("Type", Sym->getType(), makeArrayRef(ElfSymbolTypes)); in printPLTEntry()
1453 W.printHex("Section", SectionName, SectionIndex); in printPLTEntry()
1456 W.printNumber("Name", FullSymbolName, Sym->st_name); in printPLTEntry()
1461 W.startLine() << "MIPS PLT GOT is available for MIPS targets only.\n"; in printMipsPLTGOT()
1465 MipsGOTParser<ELFT> GOTParser(Obj, W); in printMipsPLTGOT()
1544 W.startLine() << "There is no .MIPS.abiflags section in the file.\n"; in printMipsABIFlags()
1549 W.startLine() << "The .MIPS.abiflags section is empty.\n"; in printMipsABIFlags()
1553 W.startLine() << "The .MIPS.abiflags section has a wrong size.\n"; in printMipsABIFlags()
1559 raw_ostream &OS = W.getOStream(); in printMipsABIFlags()
1560 DictScope GS(W, "MIPS ABI Flags"); in printMipsABIFlags()
1562 W.printNumber("Version", Flags->version); in printMipsABIFlags()
1563 W.startLine() << "ISA: "; in printMipsABIFlags()
1569 W.printEnum("ISA Extension", Flags->isa_ext, makeArrayRef(ElfMipsISAExtType)); in printMipsABIFlags()
1570 W.printFlags("ASEs", Flags->ases, makeArrayRef(ElfMipsASEFlags)); in printMipsABIFlags()
1571 W.printEnum("FP ABI", Flags->fp_abi, makeArrayRef(ElfMipsFpABIType)); in printMipsABIFlags()
1572 W.printNumber("GPR size", getMipsRegisterSize(Flags->gpr_size)); in printMipsABIFlags()
1573 W.printNumber("CPR1 size", getMipsRegisterSize(Flags->cpr1_size)); in printMipsABIFlags()
1574 W.printNumber("CPR2 size", getMipsRegisterSize(Flags->cpr2_size)); in printMipsABIFlags()
1575 W.printFlags("Flags 1", Flags->flags1, makeArrayRef(ElfMipsFlags1)); in printMipsABIFlags()
1576 W.printHex("Flags 2", Flags->flags2); in printMipsABIFlags()
1582 W.startLine() << "There is no .reginfo section in the file.\n"; in printMipsReginfo()
1587 W.startLine() << "The .reginfo section is empty.\n"; in printMipsReginfo()
1591 W.startLine() << "The .reginfo section has a wrong size.\n"; in printMipsReginfo()
1597 DictScope GS(W, "MIPS RegInfo"); in printMipsReginfo()
1598 W.printHex("GP", Reginfo->ri_gp_value); in printMipsReginfo()
1599 W.printHex("General Mask", Reginfo->ri_gprmask); in printMipsReginfo()
1600 W.printHex("Co-Proc Mask0", Reginfo->ri_cprmask[0]); in printMipsReginfo()
1601 W.printHex("Co-Proc Mask1", Reginfo->ri_cprmask[1]); in printMipsReginfo()
1602 W.printHex("Co-Proc Mask2", Reginfo->ri_cprmask[2]); in printMipsReginfo()
1603 W.printHex("Co-Proc Mask3", Reginfo->ri_cprmask[3]); in printMipsReginfo()