diff options
| author | Dimitry Andric <dim@FreeBSD.org> | 2023-12-18 20:30:12 +0000 |
|---|---|---|
| committer | Dimitry Andric <dim@FreeBSD.org> | 2024-04-19 21:12:03 +0000 |
| commit | c9157d925c489f07ba9c0b2ce47e5149b75969a5 (patch) | |
| tree | 08bc4a3d9cad3f9ebffa558ddf140b9d9257b219 /contrib/llvm-project/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp | |
| parent | 2a66844f606a35d68ad8a8061f4bea204274b3bc (diff) | |
Diffstat (limited to 'contrib/llvm-project/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp')
| -rw-r--r-- | contrib/llvm-project/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/contrib/llvm-project/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp b/contrib/llvm-project/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp index 8d2028abfe9b..64e1a58aa71a 100644 --- a/contrib/llvm-project/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp +++ b/contrib/llvm-project/llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp @@ -61,6 +61,7 @@ LLVM_YAML_DECLARE_ENUM_TRAITS(CPUType) LLVM_YAML_DECLARE_ENUM_TRAITS(RegisterId) LLVM_YAML_DECLARE_ENUM_TRAITS(TrampolineType) LLVM_YAML_DECLARE_ENUM_TRAITS(ThunkOrdinal) +LLVM_YAML_DECLARE_ENUM_TRAITS(JumpTableEntrySize) LLVM_YAML_STRONG_TYPEDEF(StringRef, TypeName) @@ -207,6 +208,15 @@ void ScalarEnumerationTraits<FrameCookieKind>::enumeration( } } +void ScalarEnumerationTraits<JumpTableEntrySize>::enumeration( + IO &io, JumpTableEntrySize &FC) { + auto ThunkNames = getJumpTableEntrySizeNames(); + for (const auto &E : ThunkNames) { + io.enumCase(FC, E.Name.str().c_str(), + static_cast<JumpTableEntrySize>(E.Value)); + } +} + namespace llvm { namespace yaml { template <> struct MappingTraits<LocalVariableAddrRange> { @@ -586,6 +596,17 @@ template <> void SymbolRecordImpl<AnnotationSym>::map(IO &IO) { IO.mapRequired("Strings", Symbol.Strings); } +template <> void SymbolRecordImpl<JumpTableSym>::map(IO &IO) { + IO.mapRequired("BaseOffset", Symbol.BaseOffset); + IO.mapRequired("BaseSegment", Symbol.BaseSegment); + IO.mapRequired("SwitchType", Symbol.SwitchType); + IO.mapRequired("BranchOffset", Symbol.BranchOffset); + IO.mapRequired("TableOffset", Symbol.TableOffset); + IO.mapRequired("BranchSegment", Symbol.BranchSegment); + IO.mapRequired("TableSegment", Symbol.TableSegment); + IO.mapRequired("EntriesCount", Symbol.EntriesCount); +} + } // end namespace detail } // end namespace CodeViewYAML } // end namespace llvm |
