13#ifndef LLVM_OBJECTYAML_COFFYAML_H
14#define LLVM_OBJECTYAML_COFFYAML_H
84 std::vector<CodeViewYAML::YAMLDebugSubsection>
DebugS;
85 std::vector<CodeViewYAML::LeafRecord>
DebugT;
86 std::vector<CodeViewYAML::LeafRecord>
DebugP;
87 std::optional<CodeViewYAML::DebugHSection>
DebugH;
112 std::optional<COFF::DataDirectory>
#define LLVM_YAML_IS_SEQUENCE_VECTOR(type)
Utility for declaring that a std::vector of a particular type should be considered a YAML sequence.
#define LLVM_YAML_STRONG_TYPEDEF(_base, _type)
YAML I/O does conversion based on types. But often native data types are just a typedef of built in i...
StringRef - Represent a constant reference to a string, i.e.
LLVM Value Representation.
This class implements an extremely fast bulk output stream that can only output to a stream.
Specialized YAMLIO scalar type for representing a binary blob.
Characteristics operator|(Characteristics a, Characteristics b)
SymbolStorageClass
Storage class tells where and what the symbol represents.
@ IMAGE_SYM_TYPE_NULL
No type information or unknown base type.
@ IMAGE_SYM_DTYPE_NULL
No complex type; simple scalar variable.
This is an optimization pass for GlobalISel generic memory operations.
std::optional< PEHeader > OptionalHeader
std::vector< Section > Sections
std::vector< Symbol > Symbols
std::optional< uint32_t > SymbolTableIndex
std::optional< object::coff_load_configuration64 > LoadConfig64
std::optional< object::coff_load_configuration32 > LoadConfig32
void writeAsBinary(raw_ostream &OS) const
std::optional< uint32_t > UInt32
std::vector< CodeViewYAML::YAMLDebugSubsection > DebugS
std::vector< SectionDataEntry > StructuredData
std::vector< CodeViewYAML::LeafRecord > DebugT
yaml::BinaryRef SectionData
std::optional< CodeViewYAML::DebugHSection > DebugH
std::vector< CodeViewYAML::LeafRecord > DebugP
std::vector< Relocation > Relocations
std::optional< COFF::AuxiliaryWeakExternal > WeakExternal
std::optional< COFF::AuxiliarybfAndefSymbol > bfAndefSymbol
COFF::SymbolComplexType ComplexType
std::optional< COFF::AuxiliarySectionDefinition > SectionDefinition
std::optional< COFF::AuxiliaryFunctionDefinition > FunctionDefinition
COFF::SymbolBaseType SimpleType
std::optional< COFF::AuxiliaryCLRToken > CLRToken
32-bit load config (IMAGE_LOAD_CONFIG_DIRECTORY32)
64-bit load config (IMAGE_LOAD_CONFIG_DIRECTORY64)
static void mapping(IO &IO, COFFYAML::Object &Obj)
static void mapping(IO &IO, COFFYAML::Relocation &Rel)
static void mapping(IO &IO, COFFYAML::SectionDataEntry &Sec)
static void mapping(IO &IO, COFFYAML::Section &Sec)
static void mapping(IO &IO, COFFYAML::Symbol &S)
static void mapping(IO &IO, COFF::AuxiliaryCLRToken &ACT)
static void mapping(IO &IO, COFF::AuxiliaryFunctionDefinition &AFD)
static void mapping(IO &IO, COFF::AuxiliarySectionDefinition &ASD)
static void mapping(IO &IO, COFF::AuxiliaryWeakExternal &AWE)
static void mapping(IO &IO, COFF::AuxiliarybfAndefSymbol &AAS)
static void mapping(IO &IO, COFF::DataDirectory &DD)
static void mapping(IO &IO, object::coff_load_config_code_integrity &ACT)
static void mapping(IO &IO, object::coff_load_configuration32 &ACT)
static void mapping(IO &IO, object::coff_load_configuration64 &ACT)
This class should be specialized by any type that needs to be converted to/from a YAML mapping.
static void bitset(IO &IO, COFF::Characteristics &Value)
static void bitset(IO &IO, COFF::DLLCharacteristics &Value)
static void bitset(IO &IO, COFF::SectionCharacteristics &Value)
This class should be specialized by any integer type that is a union of bit values and the YAML repre...
static void enumeration(IO &IO, COFFYAML::AuxSymbolType &Value)
static void enumeration(IO &IO, COFFYAML::COMDATType &Value)
static void enumeration(IO &IO, COFFYAML::WeakExternalCharacteristics &Value)
static void enumeration(IO &IO, COFF::MachineTypes &Value)
static void enumeration(IO &IO, COFF::RelocationTypeAMD64 &Value)
static void enumeration(IO &IO, COFF::RelocationTypeI386 &Value)
static void enumeration(IO &IO, COFF::RelocationTypesARM64 &Value)
static void enumeration(IO &IO, COFF::RelocationTypesARM &Value)
static void enumeration(IO &IO, COFF::RelocationTypesMips &Value)
static void enumeration(IO &IO, COFF::SymbolBaseType &Value)
static void enumeration(IO &IO, COFF::SymbolComplexType &Value)
static void enumeration(IO &IO, COFF::SymbolStorageClass &Value)
static void enumeration(IO &IO, COFF::WindowsSubsystem &Value)
This class should be specialized by any integral type that converts to/from a YAML scalar where there...