Lines Matching refs:IO

46     IO &IO, ELFYAML::ELF_ET &Value) {  in enumeration()  argument
47 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
54 IO.enumFallback<Hex16>(Value); in enumeration()
58 IO &IO, ELFYAML::ELF_PT &Value) { in enumeration() argument
59 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
73 IO.enumFallback<Hex32>(Value); in enumeration()
77 IO &IO, ELFYAML::ELF_NT &Value) { in enumeration() argument
78 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
185 IO.enumFallback<Hex32>(Value); in enumeration()
189 IO &IO, ELFYAML::ELF_EM &Value) { in enumeration() argument
190 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
355 IO.enumFallback<Hex16>(Value); in enumeration()
359 IO &IO, ELFYAML::ELF_ELFCLASS &Value) { in enumeration() argument
360 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
369 IO &IO, ELFYAML::ELF_ELFDATA &Value) { in enumeration() argument
370 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
380 IO &IO, ELFYAML::ELF_ELFOSABI &Value) { in enumeration() argument
381 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
408 IO.enumFallback<Hex8>(Value); in enumeration()
411 void ScalarBitSetTraits<ELFYAML::ELF_EF>::bitset(IO &IO, in bitset() argument
413 const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext()); in bitset()
415 #define BCase(X) IO.bitSetCase(Value, #X, ELF::X) in bitset()
416 #define BCaseMask(X, M) IO.maskedBitSetCase(Value, #X, ELF::X, ELF::M) in bitset()
631 IO &IO, ELFYAML::ELF_SHT &Value) { in enumeration() argument
632 const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext()); in enumeration()
634 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
704 IO.enumFallback<Hex32>(Value); in enumeration()
707 void ScalarBitSetTraits<ELFYAML::ELF_PF>::bitset(IO &IO, in bitset() argument
709 #define BCase(X) IO.bitSetCase(Value, #X, ELF::X) in bitset()
715 void ScalarBitSetTraits<ELFYAML::ELF_SHF>::bitset(IO &IO, in bitset() argument
717 const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext()); in bitset()
718 #define BCase(X) IO.bitSetCase(Value, #X, ELF::X) in bitset()
767 IO &IO, ELFYAML::ELF_SHN &Value) { in enumeration() argument
768 const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext()); in enumeration()
770 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
783 if (!IO.outputting() || Object->getMachine() == ELF::EM_MIPS) { in enumeration()
797 IO.enumFallback<Hex16>(Value); in enumeration()
801 IO &IO, ELFYAML::ELF_STB &Value) { in enumeration() argument
802 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
808 IO.enumFallback<Hex8>(Value); in enumeration()
812 IO &IO, ELFYAML::ELF_STT &Value) { in enumeration() argument
813 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
823 IO.enumFallback<Hex8>(Value); in enumeration()
828 IO &IO, ELFYAML::ELF_RSS &Value) { in enumeration() argument
829 #define ECase(X) IO.enumCase(Value, #X, ELF::X) in enumeration()
838 IO &IO, ELFYAML::ELF_REL &Value) { in enumeration() argument
839 const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext()); in enumeration()
841 #define ELF_RELOC(X, Y) IO.enumCase(Value, #X, ELF::X); in enumeration()
900 IO.enumFallback<Hex32>(Value); in enumeration()
904 IO &IO, ELFYAML::ELF_DYNTAG &Value) { in enumeration() argument
905 const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext()); in enumeration()
918 #define DYNAMIC_TAG(X, Y) IO.enumCase(Value, STRINGIFY(DT_##X), ELF::DT_##X); in enumeration()
975 IO.enumFallback<Hex64>(Value); in enumeration()
979 IO &IO, ELFYAML::MIPS_AFL_REG &Value) { in enumeration() argument
980 #define ECase(X) IO.enumCase(Value, #X, Mips::AFL_##X) in enumeration()
989 IO &IO, ELFYAML::MIPS_ABI_FP &Value) { in enumeration() argument
990 #define ECase(X) IO.enumCase(Value, #X, Mips::Val_GNU_MIPS_ABI_##X) in enumeration()
1003 IO &IO, ELFYAML::MIPS_AFL_EXT &Value) { in enumeration() argument
1004 #define ECase(X) IO.enumCase(Value, #X, Mips::AFL_##X) in enumeration()
1029 IO &IO, ELFYAML::MIPS_ISA &Value) { in enumeration() argument
1030 IO.enumCase(Value, "MIPS1", 1); in enumeration()
1031 IO.enumCase(Value, "MIPS2", 2); in enumeration()
1032 IO.enumCase(Value, "MIPS3", 3); in enumeration()
1033 IO.enumCase(Value, "MIPS4", 4); in enumeration()
1034 IO.enumCase(Value, "MIPS5", 5); in enumeration()
1035 IO.enumCase(Value, "MIPS32", 32); in enumeration()
1036 IO.enumCase(Value, "MIPS64", 64); in enumeration()
1037 IO.enumFallback<Hex32>(Value); in enumeration()
1041 IO &IO, ELFYAML::MIPS_AFL_ASE &Value) { in bitset() argument
1042 #define BCase(X) IO.bitSetCase(Value, #X, Mips::AFL_ASE_##X) in bitset()
1062 IO &IO, ELFYAML::MIPS_AFL_FLAGS1 &Value) { in bitset() argument
1063 #define BCase(X) IO.bitSetCase(Value, #X, Mips::AFL_FLAGS1_##X) in bitset()
1069 IO &IO, ELFYAML::SectionHeader &SHdr) { in mapping() argument
1070 IO.mapRequired("Name", SHdr.Name); in mapping()
1073 void MappingTraits<ELFYAML::FileHeader>::mapping(IO &IO, in mapping() argument
1075 IO.mapRequired("Class", FileHdr.Class); in mapping()
1076 IO.mapRequired("Data", FileHdr.Data); in mapping()
1077 IO.mapOptional("OSABI", FileHdr.OSABI, ELFYAML::ELF_ELFOSABI(0)); in mapping()
1078 IO.mapOptional("ABIVersion", FileHdr.ABIVersion, Hex8(0)); in mapping()
1079 IO.mapRequired("Type", FileHdr.Type); in mapping()
1080 IO.mapOptional("Machine", FileHdr.Machine); in mapping()
1081 IO.mapOptional("Flags", FileHdr.Flags, ELFYAML::ELF_EF(0)); in mapping()
1082 IO.mapOptional("Entry", FileHdr.Entry, Hex64(0)); in mapping()
1083 IO.mapOptional("SectionHeaderStringTable", FileHdr.SectionHeaderStringTable); in mapping()
1086 assert(!IO.outputting() || in mapping()
1088 IO.mapOptional("EPhOff", FileHdr.EPhOff); in mapping()
1089 IO.mapOptional("EPhEntSize", FileHdr.EPhEntSize); in mapping()
1090 IO.mapOptional("EPhNum", FileHdr.EPhNum); in mapping()
1091 IO.mapOptional("EShEntSize", FileHdr.EShEntSize); in mapping()
1092 IO.mapOptional("EShOff", FileHdr.EShOff); in mapping()
1093 IO.mapOptional("EShNum", FileHdr.EShNum); in mapping()
1094 IO.mapOptional("EShStrNdx", FileHdr.EShStrNdx); in mapping()
1098 IO &IO, ELFYAML::ProgramHeader &Phdr) { in mapping() argument
1099 IO.mapRequired("Type", Phdr.Type); in mapping()
1100 IO.mapOptional("Flags", Phdr.Flags, ELFYAML::ELF_PF(0)); in mapping()
1101 IO.mapOptional("FirstSec", Phdr.FirstSec); in mapping()
1102 IO.mapOptional("LastSec", Phdr.LastSec); in mapping()
1103 IO.mapOptional("VAddr", Phdr.VAddr, Hex64(0)); in mapping()
1104 IO.mapOptional("PAddr", Phdr.PAddr, Phdr.VAddr); in mapping()
1105 IO.mapOptional("Align", Phdr.Align); in mapping()
1106 IO.mapOptional("FileSize", Phdr.FileSize); in mapping()
1107 IO.mapOptional("MemSize", Phdr.MemSize); in mapping()
1108 IO.mapOptional("Offset", Phdr.Offset); in mapping()
1112 IO &IO, ELFYAML::ProgramHeader &FileHdr) { in validate() argument
1157 NormalizedOther(IO &IO) : YamlIO(IO) {} in NormalizedOther()
1158 NormalizedOther(IO &IO, Optional<uint8_t> Original) : YamlIO(IO) { in NormalizedOther()
1198 Optional<uint8_t> denormalize(IO &) { in denormalize()
1245 IO &YamlIO;
1284 void MappingTraits<ELFYAML::Symbol>::mapping(IO &IO, ELFYAML::Symbol &Symbol) { in mapping() argument
1285 IO.mapOptional("Name", Symbol.Name, StringRef()); in mapping()
1286 IO.mapOptional("StName", Symbol.StName); in mapping()
1287 IO.mapOptional("Type", Symbol.Type, ELFYAML::ELF_STT(0)); in mapping()
1288 IO.mapOptional("Section", Symbol.Section); in mapping()
1289 IO.mapOptional("Index", Symbol.Index); in mapping()
1290 IO.mapOptional("Binding", Symbol.Binding, ELFYAML::ELF_STB(0)); in mapping()
1291 IO.mapOptional("Value", Symbol.Value); in mapping()
1292 IO.mapOptional("Size", Symbol.Size); in mapping()
1299 MappingNormalization<NormalizedOther, Optional<uint8_t>> Keys(IO, in mapping()
1301 IO.mapOptional("Other", Keys->Other); in mapping()
1304 std::string MappingTraits<ELFYAML::Symbol>::validate(IO &IO, in validate() argument
1311 static void commonSectionMapping(IO &IO, ELFYAML::Section &Section) { in commonSectionMapping() argument
1312 IO.mapOptional("Name", Section.Name, StringRef()); in commonSectionMapping()
1313 IO.mapRequired("Type", Section.Type); in commonSectionMapping()
1314 IO.mapOptional("Flags", Section.Flags); in commonSectionMapping()
1315 IO.mapOptional("Address", Section.Address); in commonSectionMapping()
1316 IO.mapOptional("Link", Section.Link); in commonSectionMapping()
1317 IO.mapOptional("AddressAlign", Section.AddressAlign, Hex64(0)); in commonSectionMapping()
1318 IO.mapOptional("EntSize", Section.EntSize); in commonSectionMapping()
1319 IO.mapOptional("Offset", Section.Offset); in commonSectionMapping()
1321 IO.mapOptional("Content", Section.Content); in commonSectionMapping()
1322 IO.mapOptional("Size", Section.Size); in commonSectionMapping()
1327 assert(!IO.outputting() || in commonSectionMapping()
1330 IO.mapOptional("ShAddrAlign", Section.ShAddrAlign); in commonSectionMapping()
1331 IO.mapOptional("ShName", Section.ShName); in commonSectionMapping()
1332 IO.mapOptional("ShOffset", Section.ShOffset); in commonSectionMapping()
1333 IO.mapOptional("ShSize", Section.ShSize); in commonSectionMapping()
1334 IO.mapOptional("ShFlags", Section.ShFlags); in commonSectionMapping()
1335 IO.mapOptional("ShType", Section.ShType); in commonSectionMapping()
1338 static void sectionMapping(IO &IO, ELFYAML::DynamicSection &Section) { in sectionMapping() argument
1339 commonSectionMapping(IO, Section); in sectionMapping()
1340 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1343 static void sectionMapping(IO &IO, ELFYAML::RawContentSection &Section) { in sectionMapping() argument
1344 commonSectionMapping(IO, Section); in sectionMapping()
1348 assert(!IO.outputting() || !Section.ContentBuf); in sectionMapping()
1349 IO.mapOptional("ContentArray", Section.ContentBuf); in sectionMapping()
1352 IO.setError("Content and ContentArray can't be used together"); in sectionMapping()
1356 IO.mapOptional("Info", Section.Info); in sectionMapping()
1359 static void sectionMapping(IO &IO, ELFYAML::BBAddrMapSection &Section) { in sectionMapping() argument
1360 commonSectionMapping(IO, Section); in sectionMapping()
1361 IO.mapOptional("Content", Section.Content); in sectionMapping()
1362 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1365 static void sectionMapping(IO &IO, ELFYAML::StackSizesSection &Section) { in sectionMapping() argument
1366 commonSectionMapping(IO, Section); in sectionMapping()
1367 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1370 static void sectionMapping(IO &IO, ELFYAML::HashSection &Section) { in sectionMapping() argument
1371 commonSectionMapping(IO, Section); in sectionMapping()
1372 IO.mapOptional("Bucket", Section.Bucket); in sectionMapping()
1373 IO.mapOptional("Chain", Section.Chain); in sectionMapping()
1377 assert(!IO.outputting() || (!Section.NBucket && !Section.NChain)); in sectionMapping()
1378 IO.mapOptional("NChain", Section.NChain); in sectionMapping()
1379 IO.mapOptional("NBucket", Section.NBucket); in sectionMapping()
1382 static void sectionMapping(IO &IO, ELFYAML::NoteSection &Section) { in sectionMapping() argument
1383 commonSectionMapping(IO, Section); in sectionMapping()
1384 IO.mapOptional("Notes", Section.Notes); in sectionMapping()
1388 static void sectionMapping(IO &IO, ELFYAML::GnuHashSection &Section) { in sectionMapping() argument
1389 commonSectionMapping(IO, Section); in sectionMapping()
1390 IO.mapOptional("Header", Section.Header); in sectionMapping()
1391 IO.mapOptional("BloomFilter", Section.BloomFilter); in sectionMapping()
1392 IO.mapOptional("HashBuckets", Section.HashBuckets); in sectionMapping()
1393 IO.mapOptional("HashValues", Section.HashValues); in sectionMapping()
1395 static void sectionMapping(IO &IO, ELFYAML::NoBitsSection &Section) { in sectionMapping() argument
1396 commonSectionMapping(IO, Section); in sectionMapping()
1399 static void sectionMapping(IO &IO, ELFYAML::VerdefSection &Section) { in sectionMapping() argument
1400 commonSectionMapping(IO, Section); in sectionMapping()
1401 IO.mapOptional("Info", Section.Info); in sectionMapping()
1402 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1405 static void sectionMapping(IO &IO, ELFYAML::SymverSection &Section) { in sectionMapping() argument
1406 commonSectionMapping(IO, Section); in sectionMapping()
1407 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1410 static void sectionMapping(IO &IO, ELFYAML::VerneedSection &Section) { in sectionMapping() argument
1411 commonSectionMapping(IO, Section); in sectionMapping()
1412 IO.mapOptional("Info", Section.Info); in sectionMapping()
1413 IO.mapOptional("Dependencies", Section.VerneedV); in sectionMapping()
1416 static void sectionMapping(IO &IO, ELFYAML::RelocationSection &Section) { in sectionMapping() argument
1417 commonSectionMapping(IO, Section); in sectionMapping()
1418 IO.mapOptional("Info", Section.RelocatableSec, StringRef()); in sectionMapping()
1419 IO.mapOptional("Relocations", Section.Relocations); in sectionMapping()
1422 static void sectionMapping(IO &IO, ELFYAML::RelrSection &Section) { in sectionMapping() argument
1423 commonSectionMapping(IO, Section); in sectionMapping()
1424 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1427 static void groupSectionMapping(IO &IO, ELFYAML::GroupSection &Group) { in groupSectionMapping() argument
1428 commonSectionMapping(IO, Group); in groupSectionMapping()
1429 IO.mapOptional("Info", Group.Signature); in groupSectionMapping()
1430 IO.mapOptional("Members", Group.Members); in groupSectionMapping()
1433 static void sectionMapping(IO &IO, ELFYAML::SymtabShndxSection &Section) { in sectionMapping() argument
1434 commonSectionMapping(IO, Section); in sectionMapping()
1435 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1438 static void sectionMapping(IO &IO, ELFYAML::AddrsigSection &Section) { in sectionMapping() argument
1439 commonSectionMapping(IO, Section); in sectionMapping()
1440 IO.mapOptional("Symbols", Section.Symbols); in sectionMapping()
1443 static void fillMapping(IO &IO, ELFYAML::Fill &Fill) { in fillMapping() argument
1444 IO.mapOptional("Name", Fill.Name, StringRef()); in fillMapping()
1445 IO.mapOptional("Pattern", Fill.Pattern); in fillMapping()
1446 IO.mapOptional("Offset", Fill.Offset); in fillMapping()
1447 IO.mapRequired("Size", Fill.Size); in fillMapping()
1450 static void sectionHeaderTableMapping(IO &IO, in sectionHeaderTableMapping() argument
1452 IO.mapOptional("Offset", SHT.Offset); in sectionHeaderTableMapping()
1453 IO.mapOptional("Sections", SHT.Sections); in sectionHeaderTableMapping()
1454 IO.mapOptional("Excluded", SHT.Excluded); in sectionHeaderTableMapping()
1455 IO.mapOptional("NoHeaders", SHT.NoHeaders); in sectionHeaderTableMapping()
1458 static void sectionMapping(IO &IO, ELFYAML::LinkerOptionsSection &Section) { in sectionMapping() argument
1459 commonSectionMapping(IO, Section); in sectionMapping()
1460 IO.mapOptional("Options", Section.Options); in sectionMapping()
1463 static void sectionMapping(IO &IO, in sectionMapping() argument
1465 commonSectionMapping(IO, Section); in sectionMapping()
1466 IO.mapOptional("Libraries", Section.Libs); in sectionMapping()
1469 static void sectionMapping(IO &IO, ELFYAML::CallGraphProfileSection &Section) { in sectionMapping() argument
1470 commonSectionMapping(IO, Section); in sectionMapping()
1471 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1475 IO &IO, ELFYAML::SectionOrType &sectionOrType) { in mapping() argument
1476 IO.mapRequired("SectionOrType", sectionOrType.sectionNameOrType); in mapping()
1479 static void sectionMapping(IO &IO, ELFYAML::ARMIndexTableSection &Section) { in sectionMapping() argument
1480 commonSectionMapping(IO, Section); in sectionMapping()
1481 IO.mapOptional("Entries", Section.Entries); in sectionMapping()
1484 static void sectionMapping(IO &IO, ELFYAML::MipsABIFlags &Section) { in sectionMapping() argument
1485 commonSectionMapping(IO, Section); in sectionMapping()
1486 IO.mapOptional("Version", Section.Version, Hex16(0)); in sectionMapping()
1487 IO.mapRequired("ISA", Section.ISALevel); in sectionMapping()
1488 IO.mapOptional("ISARevision", Section.ISARevision, Hex8(0)); in sectionMapping()
1489 IO.mapOptional("ISAExtension", Section.ISAExtension, in sectionMapping()
1491 IO.mapOptional("ASEs", Section.ASEs, ELFYAML::MIPS_AFL_ASE(0)); in sectionMapping()
1492 IO.mapOptional("FpABI", Section.FpABI, in sectionMapping()
1494 IO.mapOptional("GPRSize", Section.GPRSize, in sectionMapping()
1496 IO.mapOptional("CPR1Size", Section.CPR1Size, in sectionMapping()
1498 IO.mapOptional("CPR2Size", Section.CPR2Size, in sectionMapping()
1500 IO.mapOptional("Flags1", Section.Flags1, ELFYAML::MIPS_AFL_FLAGS1(0)); in sectionMapping()
1501 IO.mapOptional("Flags2", Section.Flags2, Hex32(0)); in sectionMapping()
1504 static StringRef getStringValue(IO &IO, const char *Key) { in getStringValue() argument
1506 IO.mapRequired(Key, Val); in getStringValue()
1510 static void setStringValue(IO &IO, const char *Key, StringRef Val) { in setStringValue() argument
1511 IO.mapRequired(Key, Val); in setStringValue()
1520 IO &IO, std::unique_ptr<ELFYAML::Chunk> &Section) { in mapping() argument
1523 if (IO.outputting()) { in mapping()
1531 TypeStr = getStringValue(IO, "Type"); in mapping()
1533 IO.mapRequired("Type", Type); in mapping()
1537 assert(!IO.outputting()); // We don't dump fills currently. in mapping()
1539 fillMapping(IO, *cast<ELFYAML::Fill>(Section.get())); in mapping()
1544 if (IO.outputting()) in mapping()
1545 setStringValue(IO, "Type", TypeStr); in mapping()
1550 IO, *cast<ELFYAML::SectionHeaderTable>(Section.get())); in mapping()
1554 const auto &Obj = *static_cast<ELFYAML::Object *>(IO.getContext()); in mapping()
1556 if (!IO.outputting()) in mapping()
1558 sectionMapping(IO, *cast<ELFYAML::MipsABIFlags>(Section.get())); in mapping()
1563 if (!IO.outputting()) in mapping()
1565 sectionMapping(IO, *cast<ELFYAML::ARMIndexTableSection>(Section.get())); in mapping()
1571 if (!IO.outputting()) in mapping()
1573 sectionMapping(IO, *cast<ELFYAML::DynamicSection>(Section.get())); in mapping()
1577 if (!IO.outputting()) in mapping()
1579 sectionMapping(IO, *cast<ELFYAML::RelocationSection>(Section.get())); in mapping()
1582 if (!IO.outputting()) in mapping()
1584 sectionMapping(IO, *cast<ELFYAML::RelrSection>(Section.get())); in mapping()
1587 if (!IO.outputting()) in mapping()
1589 groupSectionMapping(IO, *cast<ELFYAML::GroupSection>(Section.get())); in mapping()
1592 if (!IO.outputting()) in mapping()
1594 sectionMapping(IO, *cast<ELFYAML::NoBitsSection>(Section.get())); in mapping()
1597 if (!IO.outputting()) in mapping()
1599 sectionMapping(IO, *cast<ELFYAML::HashSection>(Section.get())); in mapping()
1602 if (!IO.outputting()) in mapping()
1604 sectionMapping(IO, *cast<ELFYAML::NoteSection>(Section.get())); in mapping()
1607 if (!IO.outputting()) in mapping()
1609 sectionMapping(IO, *cast<ELFYAML::GnuHashSection>(Section.get())); in mapping()
1612 if (!IO.outputting()) in mapping()
1614 sectionMapping(IO, *cast<ELFYAML::VerdefSection>(Section.get())); in mapping()
1617 if (!IO.outputting()) in mapping()
1619 sectionMapping(IO, *cast<ELFYAML::SymverSection>(Section.get())); in mapping()
1622 if (!IO.outputting()) in mapping()
1624 sectionMapping(IO, *cast<ELFYAML::VerneedSection>(Section.get())); in mapping()
1627 if (!IO.outputting()) in mapping()
1629 sectionMapping(IO, *cast<ELFYAML::SymtabShndxSection>(Section.get())); in mapping()
1632 if (!IO.outputting()) in mapping()
1634 sectionMapping(IO, *cast<ELFYAML::AddrsigSection>(Section.get())); in mapping()
1637 if (!IO.outputting()) in mapping()
1639 sectionMapping(IO, *cast<ELFYAML::LinkerOptionsSection>(Section.get())); in mapping()
1642 if (!IO.outputting()) in mapping()
1644 sectionMapping(IO, in mapping()
1648 if (!IO.outputting()) in mapping()
1650 sectionMapping(IO, *cast<ELFYAML::CallGraphProfileSection>(Section.get())); in mapping()
1654 if (!IO.outputting()) in mapping()
1656 sectionMapping(IO, *cast<ELFYAML::BBAddrMapSection>(Section.get())); in mapping()
1659 if (!IO.outputting()) { in mapping()
1661 IO.mapOptional("Name", Name, StringRef()); in mapping()
1671 sectionMapping(IO, *S); in mapping()
1673 sectionMapping(IO, *cast<ELFYAML::StackSizesSection>(Section.get())); in mapping()
1678 IO &io, std::unique_ptr<ELFYAML::Chunk> &C) { in validate()
1750 NormalizedMips64RelType(IO &) in NormalizedMips64RelType()
1755 NormalizedMips64RelType(IO &, ELFYAML::ELF_REL Original) in NormalizedMips64RelType()
1759 ELFYAML::ELF_REL denormalize(IO &) { in denormalize()
1773 IO &IO, ELFYAML::StackSizeEntry &E) { in mapping() argument
1774 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1775 IO.mapOptional("Address", E.Address, Hex64(0)); in mapping()
1776 IO.mapRequired("Size", E.Size); in mapping()
1780 IO &IO, ELFYAML::BBAddrMapEntry &E) { in mapping() argument
1781 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1782 IO.mapRequired("Version", E.Version); in mapping()
1783 IO.mapOptional("Feature", E.Feature, Hex8(0)); in mapping()
1784 IO.mapOptional("Address", E.Address, Hex64(0)); in mapping()
1785 IO.mapOptional("NumBlocks", E.NumBlocks); in mapping()
1786 IO.mapOptional("BBEntries", E.BBEntries); in mapping()
1790 IO &IO, ELFYAML::BBAddrMapEntry::BBEntry &E) { in mapping() argument
1791 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1792 IO.mapRequired("AddressOffset", E.AddressOffset); in mapping()
1793 IO.mapRequired("Size", E.Size); in mapping()
1794 IO.mapRequired("Metadata", E.Metadata); in mapping()
1797 void MappingTraits<ELFYAML::GnuHashHeader>::mapping(IO &IO, in mapping() argument
1799 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1800 IO.mapOptional("NBuckets", E.NBuckets); in mapping()
1801 IO.mapRequired("SymNdx", E.SymNdx); in mapping()
1802 IO.mapOptional("MaskWords", E.MaskWords); in mapping()
1803 IO.mapRequired("Shift2", E.Shift2); in mapping()
1806 void MappingTraits<ELFYAML::DynamicEntry>::mapping(IO &IO, in mapping() argument
1808 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1810 IO.mapRequired("Tag", Rel.Tag); in mapping()
1811 IO.mapRequired("Value", Rel.Val); in mapping()
1814 void MappingTraits<ELFYAML::NoteEntry>::mapping(IO &IO, ELFYAML::NoteEntry &N) { in mapping() argument
1815 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1817 IO.mapOptional("Name", N.Name); in mapping()
1818 IO.mapOptional("Desc", N.Desc); in mapping()
1819 IO.mapRequired("Type", N.Type); in mapping()
1822 void MappingTraits<ELFYAML::VerdefEntry>::mapping(IO &IO, in mapping() argument
1824 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1826 IO.mapOptional("Version", E.Version); in mapping()
1827 IO.mapOptional("Flags", E.Flags); in mapping()
1828 IO.mapOptional("VersionNdx", E.VersionNdx); in mapping()
1829 IO.mapOptional("Hash", E.Hash); in mapping()
1830 IO.mapRequired("Names", E.VerNames); in mapping()
1833 void MappingTraits<ELFYAML::VerneedEntry>::mapping(IO &IO, in mapping() argument
1835 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1837 IO.mapRequired("Version", E.Version); in mapping()
1838 IO.mapRequired("File", E.File); in mapping()
1839 IO.mapRequired("Entries", E.AuxV); in mapping()
1842 void MappingTraits<ELFYAML::VernauxEntry>::mapping(IO &IO, in mapping() argument
1844 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1846 IO.mapRequired("Name", E.Name); in mapping()
1847 IO.mapRequired("Hash", E.Hash); in mapping()
1848 IO.mapRequired("Flags", E.Flags); in mapping()
1849 IO.mapRequired("Other", E.Other); in mapping()
1852 void MappingTraits<ELFYAML::Relocation>::mapping(IO &IO, in mapping() argument
1854 const auto *Object = static_cast<ELFYAML::Object *>(IO.getContext()); in mapping()
1857 IO.mapOptional("Offset", Rel.Offset, (Hex64)0); in mapping()
1858 IO.mapOptional("Symbol", Rel.Symbol); in mapping()
1863 IO, Rel.Type); in mapping()
1864 IO.mapRequired("Type", Key->Type); in mapping()
1865 IO.mapOptional("Type2", Key->Type2, ELFYAML::ELF_REL(ELF::R_MIPS_NONE)); in mapping()
1866 IO.mapOptional("Type3", Key->Type3, ELFYAML::ELF_REL(ELF::R_MIPS_NONE)); in mapping()
1867 IO.mapOptional("SpecSym", Key->SpecSym, ELFYAML::ELF_RSS(ELF::RSS_UNDEF)); in mapping()
1869 IO.mapRequired("Type", Rel.Type); in mapping()
1871 IO.mapOptional("Addend", Rel.Addend, (ELFYAML::YAMLIntUInt)0); in mapping()
1875 IO &IO, ELFYAML::ARMIndexTableEntry &E) { in mapping() argument
1876 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1877 IO.mapRequired("Offset", E.Offset); in mapping()
1880 if (IO.outputting() && (uint32_t)E.Value == ARM::EHABI::EXIDX_CANTUNWIND) in mapping()
1881 IO.mapRequired("Value", CantUnwind); in mapping()
1882 else if (!IO.outputting() && getStringValue(IO, "Value") == CantUnwind) in mapping()
1885 IO.mapRequired("Value", E.Value); in mapping()
1888 void MappingTraits<ELFYAML::Object>::mapping(IO &IO, ELFYAML::Object &Object) { in mapping() argument
1889 assert(!IO.getContext() && "The IO context is initialized already"); in mapping()
1890 IO.setContext(&Object); in mapping()
1891 IO.mapTag("!ELF", true); in mapping()
1892 IO.mapRequired("FileHeader", Object.Header); in mapping()
1893 IO.mapOptional("ProgramHeaders", Object.ProgramHeaders); in mapping()
1894 IO.mapOptional("Sections", Object.Chunks); in mapping()
1895 IO.mapOptional("Symbols", Object.Symbols); in mapping()
1896 IO.mapOptional("DynamicSymbols", Object.DynamicSymbols); in mapping()
1897 IO.mapOptional("DWARF", Object.DWARF); in mapping()
1904 IO.setContext(nullptr); in mapping()
1907 void MappingTraits<ELFYAML::LinkerOption>::mapping(IO &IO, in mapping() argument
1909 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1910 IO.mapRequired("Name", Opt.Key); in mapping()
1911 IO.mapRequired("Value", Opt.Value); in mapping()
1915 IO &IO, ELFYAML::CallGraphEntryWeight &E) { in mapping() argument
1916 assert(IO.getContext() && "The IO context is not initialized"); in mapping()
1917 IO.mapRequired("Weight", E.Weight); in mapping()