Lines Matching refs:IO

19 #define ECase(X) IO.enumCase(Value, #X, COFF::X);
34 IO &IO, COFFYAML::COMDATType &Value) { in enumeration() argument
35 IO.enumCase(Value, "0", 0); in enumeration()
47 IO &IO, COFFYAML::WeakExternalCharacteristics &Value) { in enumeration() argument
48 IO.enumCase(Value, "0", 0); in enumeration()
56 IO &IO, COFFYAML::AuxSymbolType &Value) { in enumeration() argument
61 IO &IO, COFF::MachineTypes &Value) { in enumeration() argument
92 IO &IO, COFF::SymbolBaseType &Value) { in enumeration() argument
112 IO &IO, COFF::SymbolStorageClass &Value) { in enumeration() argument
143 IO &IO, COFF::SymbolComplexType &Value) { in enumeration() argument
151 IO &IO, COFF::RelocationTypeI386 &Value) { in enumeration() argument
166 IO &IO, COFF::RelocationTypeAMD64 &Value) { in enumeration() argument
187 IO &IO, COFF::RelocationTypesARM &Value) { in enumeration() argument
208 IO &IO, COFF::RelocationTypesARM64 &Value) { in enumeration() argument
230 IO &IO, COFF::WindowsSubsystem &Value) { in enumeration() argument
248 #define BCase(X) IO.bitSetCase(Value, #X, COFF::X);
250 IO &IO, COFF::Characteristics &Value) { in bitset() argument
269 IO &IO, COFF::SectionCharacteristics &Value) { in bitset() argument
295 IO &IO, COFF::DLLCharacteristics &Value) { in bitset() argument
313 NSectionSelectionType(IO &) in NSectionSelectionType()
315 NSectionSelectionType(IO &, uint8_t C) in NSectionSelectionType()
318 uint8_t denormalize(IO &) { return SelectionType; } in denormalize()
324 NWeakExternalCharacteristics(IO &) in NWeakExternalCharacteristics()
326 NWeakExternalCharacteristics(IO &, uint32_t C) in NWeakExternalCharacteristics()
329 uint32_t denormalize(IO &) { return Characteristics; } in denormalize()
335 NSectionCharacteristics(IO &) in NSectionCharacteristics()
337 NSectionCharacteristics(IO &, uint32_t C) in NSectionCharacteristics()
340 uint32_t denormalize(IO &) { return Characteristics; } in denormalize()
346 NAuxTokenType(IO &) in NAuxTokenType()
348 NAuxTokenType(IO &, uint8_t C) in NAuxTokenType()
351 uint32_t denormalize(IO &) { return AuxType; } in denormalize()
357 NStorageClass(IO &) : StorageClass(COFF::SymbolStorageClass(0)) {} in NStorageClass()
358 NStorageClass(IO &, uint8_t S) : StorageClass(COFF::SymbolStorageClass(S)) {} in NStorageClass()
360 uint8_t denormalize(IO &) { return StorageClass; } in denormalize()
366 NMachine(IO &) : Machine(COFF::MachineTypes(0)) {} in NMachine()
367 NMachine(IO &, uint16_t M) : Machine(COFF::MachineTypes(M)) {} in NMachine()
369 uint16_t denormalize(IO &) { return Machine; } in denormalize()
375 NHeaderCharacteristics(IO &) : Characteristics(COFF::Characteristics(0)) {} in NHeaderCharacteristics()
376 NHeaderCharacteristics(IO &, uint16_t C) in NHeaderCharacteristics()
379 uint16_t denormalize(IO &) { return Characteristics; } in denormalize()
386 NType(IO &) : Type(RelocType(0)) {} in NType()
387 NType(IO &, uint16_t T) : Type(RelocType(T)) {} in NType()
389 uint16_t denormalize(IO &) { return Type; } in denormalize()
395 NWindowsSubsystem(IO &) : Subsystem(COFF::WindowsSubsystem(0)) {} in NWindowsSubsystem()
396 NWindowsSubsystem(IO &, uint16_t C) : Subsystem(COFF::WindowsSubsystem(C)) {} in NWindowsSubsystem()
398 uint16_t denormalize(IO &) { return Subsystem; } in denormalize()
404 NDLLCharacteristics(IO &) : Characteristics(COFF::DLLCharacteristics(0)) {} in NDLLCharacteristics()
405 NDLLCharacteristics(IO &, uint16_t C) in NDLLCharacteristics()
408 uint16_t denormalize(IO &) { return Characteristics; } in denormalize()
415 void MappingTraits<COFFYAML::Relocation>::mapping(IO &IO, in mapping() argument
417 IO.mapRequired("VirtualAddress", Rel.VirtualAddress); in mapping()
418 IO.mapOptional("SymbolName", Rel.SymbolName, StringRef()); in mapping()
419 IO.mapOptional("SymbolTableIndex", Rel.SymbolTableIndex); in mapping()
421 COFF::header &H = *static_cast<COFF::header *>(IO.getContext()); in mapping()
424 IO, Rel.Type); in mapping()
425 IO.mapRequired("Type", NT->Type); in mapping()
428 IO, Rel.Type); in mapping()
429 IO.mapRequired("Type", NT->Type); in mapping()
432 IO, Rel.Type); in mapping()
433 IO.mapRequired("Type", NT->Type); in mapping()
436 IO, Rel.Type); in mapping()
437 IO.mapRequired("Type", NT->Type); in mapping()
439 IO.mapRequired("Type", Rel.Type); in mapping()
443 void MappingTraits<COFF::DataDirectory>::mapping(IO &IO, in mapping() argument
445 IO.mapRequired("RelativeVirtualAddress", DD.RelativeVirtualAddress); in mapping()
446 IO.mapRequired("Size", DD.Size); in mapping()
449 void MappingTraits<COFFYAML::PEHeader>::mapping(IO &IO, in mapping() argument
451 MappingNormalization<NWindowsSubsystem, uint16_t> NWS(IO, in mapping()
454 IO, PH.Header.DLLCharacteristics); in mapping()
456 IO.mapOptional("AddressOfEntryPoint", PH.Header.AddressOfEntryPoint); in mapping()
457 IO.mapOptional("ImageBase", PH.Header.ImageBase); in mapping()
458 IO.mapOptional("SectionAlignment", PH.Header.SectionAlignment, 1); in mapping()
459 IO.mapOptional("FileAlignment", PH.Header.FileAlignment, 1); in mapping()
460 IO.mapOptional("MajorOperatingSystemVersion", in mapping()
462 IO.mapOptional("MinorOperatingSystemVersion", in mapping()
464 IO.mapOptional("MajorImageVersion", PH.Header.MajorImageVersion); in mapping()
465 IO.mapOptional("MinorImageVersion", PH.Header.MinorImageVersion); in mapping()
466 IO.mapOptional("MajorSubsystemVersion", PH.Header.MajorSubsystemVersion); in mapping()
467 IO.mapOptional("MinorSubsystemVersion", PH.Header.MinorSubsystemVersion); in mapping()
468 IO.mapOptional("Subsystem", NWS->Subsystem); in mapping()
469 IO.mapOptional("DLLCharacteristics", NDC->Characteristics); in mapping()
470 IO.mapOptional("SizeOfStackReserve", PH.Header.SizeOfStackReserve); in mapping()
471 IO.mapOptional("SizeOfStackCommit", PH.Header.SizeOfStackCommit); in mapping()
472 IO.mapOptional("SizeOfHeapReserve", PH.Header.SizeOfHeapReserve); in mapping()
473 IO.mapOptional("SizeOfHeapCommit", PH.Header.SizeOfHeapCommit); in mapping()
475 IO.mapOptional("NumberOfRvaAndSize", PH.Header.NumberOfRvaAndSize, in mapping()
477 IO.mapOptional("ExportTable", PH.DataDirectories[COFF::EXPORT_TABLE]); in mapping()
478 IO.mapOptional("ImportTable", PH.DataDirectories[COFF::IMPORT_TABLE]); in mapping()
479 IO.mapOptional("ResourceTable", PH.DataDirectories[COFF::RESOURCE_TABLE]); in mapping()
480 IO.mapOptional("ExceptionTable", PH.DataDirectories[COFF::EXCEPTION_TABLE]); in mapping()
481 IO.mapOptional("CertificateTable", PH.DataDirectories[COFF::CERTIFICATE_TABLE]); in mapping()
482 IO.mapOptional("BaseRelocationTable", in mapping()
484 IO.mapOptional("Debug", PH.DataDirectories[COFF::DEBUG_DIRECTORY]); in mapping()
485 IO.mapOptional("Architecture", PH.DataDirectories[COFF::ARCHITECTURE]); in mapping()
486 IO.mapOptional("GlobalPtr", PH.DataDirectories[COFF::GLOBAL_PTR]); in mapping()
487 IO.mapOptional("TlsTable", PH.DataDirectories[COFF::TLS_TABLE]); in mapping()
488 IO.mapOptional("LoadConfigTable", in mapping()
490 IO.mapOptional("BoundImport", PH.DataDirectories[COFF::BOUND_IMPORT]); in mapping()
491 IO.mapOptional("IAT", PH.DataDirectories[COFF::IAT]); in mapping()
492 IO.mapOptional("DelayImportDescriptor", in mapping()
494 IO.mapOptional("ClrRuntimeHeader", in mapping()
498 void MappingTraits<COFF::header>::mapping(IO &IO, COFF::header &H) { in mapping() argument
499 MappingNormalization<NMachine, uint16_t> NM(IO, H.Machine); in mapping()
500 MappingNormalization<NHeaderCharacteristics, uint16_t> NC(IO, in mapping()
503 IO.mapRequired("Machine", NM->Machine); in mapping()
504 IO.mapOptional("Characteristics", NC->Characteristics); in mapping()
505 IO.setContext(static_cast<void *>(&H)); in mapping()
509 IO &IO, COFF::AuxiliaryFunctionDefinition &AFD) { in mapping() argument
510 IO.mapRequired("TagIndex", AFD.TagIndex); in mapping()
511 IO.mapRequired("TotalSize", AFD.TotalSize); in mapping()
512 IO.mapRequired("PointerToLinenumber", AFD.PointerToLinenumber); in mapping()
513 IO.mapRequired("PointerToNextFunction", AFD.PointerToNextFunction); in mapping()
517 IO &IO, COFF::AuxiliarybfAndefSymbol &AAS) { in mapping() argument
518 IO.mapRequired("Linenumber", AAS.Linenumber); in mapping()
519 IO.mapRequired("PointerToNextFunction", AAS.PointerToNextFunction); in mapping()
523 IO &IO, COFF::AuxiliaryWeakExternal &AWE) { in mapping() argument
525 IO, AWE.Characteristics); in mapping()
526 IO.mapRequired("TagIndex", AWE.TagIndex); in mapping()
527 IO.mapRequired("Characteristics", NWEC->Characteristics); in mapping()
531 IO &IO, COFF::AuxiliarySectionDefinition &ASD) { in mapping() argument
533 IO, ASD.Selection); in mapping()
535 IO.mapRequired("Length", ASD.Length); in mapping()
536 IO.mapRequired("NumberOfRelocations", ASD.NumberOfRelocations); in mapping()
537 IO.mapRequired("NumberOfLinenumbers", ASD.NumberOfLinenumbers); in mapping()
538 IO.mapRequired("CheckSum", ASD.CheckSum); in mapping()
539 IO.mapRequired("Number", ASD.Number); in mapping()
540 IO.mapOptional("Selection", NSST->SelectionType, COFFYAML::COMDATType(0)); in mapping()
544 IO &IO, COFF::AuxiliaryCLRToken &ACT) { in mapping() argument
545 MappingNormalization<NAuxTokenType, uint8_t> NATT(IO, ACT.AuxType); in mapping()
546 IO.mapRequired("AuxType", NATT->AuxType); in mapping()
547 IO.mapRequired("SymbolTableIndex", ACT.SymbolTableIndex); in mapping()
551 IO &IO, object::coff_load_config_code_integrity &S) { in mapping() argument
552 IO.mapOptional("Flags", S.Flags); in mapping()
553 IO.mapOptional("Catalog", S.Catalog); in mapping()
554 IO.mapOptional("CatalogOffset", S.CatalogOffset); in mapping()
558 void mapLoadConfigMember(IO &IO, T &LoadConfig, const char *Name, M &Member) { in mapLoadConfigMember() argument
563 IO.mapOptional(Name, Member); in mapLoadConfigMember()
566 template <typename T> void mapLoadConfig(IO &IO, T &LoadConfig) { in mapLoadConfig() argument
567 IO.mapOptional("Size", LoadConfig.Size, in mapLoadConfig()
571 IO.setError("Size must be at least " + Twine(sizeof(LoadConfig.Size))); in mapLoadConfig()
575 #define MCase(X) mapLoadConfigMember(IO, LoadConfig, #X, LoadConfig.X) in mapLoadConfig()
625 IO &IO, object::coff_load_configuration32 &S) { in mapping() argument
626 mapLoadConfig(IO, S); in mapping()
630 IO &IO, object::coff_load_configuration64 &S) { in mapping() argument
631 mapLoadConfig(IO, S); in mapping()
635 IO &IO, COFFYAML::SectionDataEntry &E) { in mapping() argument
636 IO.mapOptional("UInt32", E.UInt32); in mapping()
637 IO.mapOptional("Binary", E.Binary); in mapping()
639 COFF::header &H = *static_cast<COFF::header *>(IO.getContext()); in mapping()
641 IO.mapOptional("LoadConfig", E.LoadConfig64); in mapping()
643 IO.mapOptional("LoadConfig", E.LoadConfig32); in mapping()
646 void MappingTraits<COFFYAML::Symbol>::mapping(IO &IO, COFFYAML::Symbol &S) { in mapping() argument
647 MappingNormalization<NStorageClass, uint8_t> NS(IO, S.Header.StorageClass); in mapping()
649 IO.mapRequired("Name", S.Name); in mapping()
650 IO.mapRequired("Value", S.Header.Value); in mapping()
651 IO.mapRequired("SectionNumber", S.Header.SectionNumber); in mapping()
652 IO.mapRequired("SimpleType", S.SimpleType); in mapping()
653 IO.mapRequired("ComplexType", S.ComplexType); in mapping()
654 IO.mapRequired("StorageClass", NS->StorageClass); in mapping()
655 IO.mapOptional("FunctionDefinition", S.FunctionDefinition); in mapping()
656 IO.mapOptional("bfAndefSymbol", S.bfAndefSymbol); in mapping()
657 IO.mapOptional("WeakExternal", S.WeakExternal); in mapping()
658 IO.mapOptional("File", S.File, StringRef()); in mapping()
659 IO.mapOptional("SectionDefinition", S.SectionDefinition); in mapping()
660 IO.mapOptional("CLRToken", S.CLRToken); in mapping()
663 void MappingTraits<COFFYAML::Section>::mapping(IO &IO, COFFYAML::Section &Sec) { in mapping() argument
665 IO, Sec.Header.Characteristics); in mapping()
666 IO.mapRequired("Name", Sec.Name); in mapping()
667 IO.mapRequired("Characteristics", NC->Characteristics); in mapping()
668 IO.mapOptional("VirtualAddress", Sec.Header.VirtualAddress, 0U); in mapping()
669 IO.mapOptional("VirtualSize", Sec.Header.VirtualSize, 0U); in mapping()
670 IO.mapOptional("Alignment", Sec.Alignment, 0U); in mapping()
675 IO.mapOptional("SectionData", Sec.SectionData); in mapping()
677 IO.mapOptional("Subsections", Sec.DebugS); in mapping()
679 IO.mapOptional("Types", Sec.DebugT); in mapping()
681 IO.mapOptional("PrecompTypes", Sec.DebugP); in mapping()
683 IO.mapOptional("GlobalHashes", Sec.DebugH); in mapping()
685 IO.mapOptional("StructuredData", Sec.StructuredData); in mapping()
688 IO.setError("StructuredData and SectionData can't be used together"); in mapping()
692 IO.mapOptional("SizeOfRawData", Sec.Header.SizeOfRawData, 0U); in mapping()
695 IO.setError("StructuredData and SizeOfRawData can't be used together"); in mapping()
699 IO.mapOptional("Relocations", Sec.Relocations); in mapping()
702 void MappingTraits<COFFYAML::Object>::mapping(IO &IO, COFFYAML::Object &Obj) { in mapping() argument
703 IO.mapTag("!COFF", true); in mapping()
704 IO.mapOptional("OptionalHeader", Obj.OptionalHeader); in mapping()
705 IO.mapRequired("header", Obj.Header); in mapping()
706 IO.mapRequired("sections", Obj.Sections); in mapping()
707 IO.mapRequired("symbols", Obj.Symbols); in mapping()