1919#include " llvm/ADT/StringRef.h"
2020#include " llvm/BinaryFormat/Dwarf.h"
2121#include " llvm/ObjectYAML/YAML.h"
22+ #include " llvm/Support/Compiler.h"
2223#include " llvm/Support/YAMLTraits.h"
2324#include < cstdint>
2425#include < optional>
@@ -255,16 +256,16 @@ struct Data {
255256 std::optional<std::vector<ListTable<LoclistEntry>>> DebugLoclists;
256257 std::optional<DebugNamesSection> DebugNames;
257258
258- bool isEmpty () const ;
259+ LLVM_ABI bool isEmpty () const ;
259260
260- SetVector<StringRef> getNonEmptySectionNames () const ;
261+ LLVM_ABI SetVector<StringRef> getNonEmptySectionNames () const ;
261262
262263 struct AbbrevTableInfo {
263264 uint64_t Index;
264265 uint64_t Offset;
265266 };
266- Expected<AbbrevTableInfo> getAbbrevTableInfoByID (uint64_t ID) const ;
267- StringRef getAbbrevTableContentByIndex (uint64_t Index) const ;
267+ LLVM_ABI Expected<AbbrevTableInfo> getAbbrevTableInfoByID (uint64_t ID) const ;
268+ LLVM_ABI StringRef getAbbrevTableContentByIndex (uint64_t Index) const ;
268269
269270private:
270271 mutable std::unordered_map<uint64_t , AbbrevTableInfo> AbbrevTableInfoMap;
@@ -310,88 +311,90 @@ namespace llvm {
310311namespace yaml {
311312
312313template <> struct MappingTraits <DWARFYAML::Data> {
313- static void mapping (IO &IO, DWARFYAML::Data &DWARF);
314+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::Data &DWARF);
314315};
315316
316317template <> struct MappingTraits <DWARFYAML::AbbrevTable> {
317- static void mapping (IO &IO, DWARFYAML::AbbrevTable &AbbrevTable);
318+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::AbbrevTable &AbbrevTable);
318319};
319320
320321template <> struct MappingTraits <DWARFYAML::Abbrev> {
321- static void mapping (IO &IO, DWARFYAML::Abbrev &Abbrev);
322+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::Abbrev &Abbrev);
322323};
323324
324325template <> struct MappingTraits <DWARFYAML::AttributeAbbrev> {
325- static void mapping (IO &IO, DWARFYAML::AttributeAbbrev &AttAbbrev);
326+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::AttributeAbbrev &AttAbbrev);
326327};
327328
328329template <> struct MappingTraits <DWARFYAML::ARangeDescriptor> {
329- static void mapping (IO &IO, DWARFYAML::ARangeDescriptor &Descriptor);
330+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::ARangeDescriptor &Descriptor);
330331};
331332
332333template <> struct MappingTraits <DWARFYAML::ARange> {
333- static void mapping (IO &IO, DWARFYAML::ARange &ARange);
334+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::ARange &ARange);
334335};
335336
336337template <> struct MappingTraits <DWARFYAML::RangeEntry> {
337- static void mapping (IO &IO, DWARFYAML::RangeEntry &Entry);
338+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::RangeEntry &Entry);
338339};
339340
340341template <> struct MappingTraits <DWARFYAML::Ranges> {
341- static void mapping (IO &IO, DWARFYAML::Ranges &Ranges);
342+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::Ranges &Ranges);
342343};
343344
344345template <> struct MappingTraits <DWARFYAML::PubEntry> {
345- static void mapping (IO &IO, DWARFYAML::PubEntry &Entry);
346+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::PubEntry &Entry);
346347};
347348
348349template <> struct MappingTraits <DWARFYAML::PubSection> {
349- static void mapping (IO &IO, DWARFYAML::PubSection &Section);
350+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::PubSection &Section);
350351};
351352
352353template <> struct MappingTraits <DWARFYAML::Unit> {
353- static void mapping (IO &IO, DWARFYAML::Unit &Unit);
354+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::Unit &Unit);
354355};
355356
356357template <> struct MappingTraits <DWARFYAML::DebugNamesSection> {
357- static void mapping (IO &IO, DWARFYAML::DebugNamesSection &);
358+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::DebugNamesSection &);
358359};
359360template <> struct MappingTraits <DWARFYAML::DebugNameEntry> {
360- static void mapping (IO &IO, DWARFYAML::DebugNameEntry &);
361+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::DebugNameEntry &);
361362};
362363template <> struct MappingTraits <DWARFYAML::DebugNameAbbreviation> {
363- static void mapping (IO &IO, DWARFYAML::DebugNameAbbreviation &);
364+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::DebugNameAbbreviation &);
364365};
365366template <> struct MappingTraits <DWARFYAML::IdxForm> {
366- static void mapping (IO &IO, DWARFYAML::IdxForm &);
367+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::IdxForm &);
367368};
368369
369370template <> struct MappingTraits <DWARFYAML::Entry> {
370- static void mapping (IO &IO, DWARFYAML::Entry &Entry);
371+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::Entry &Entry);
371372};
372373
373374template <> struct MappingTraits <DWARFYAML::FormValue> {
374- static void mapping (IO &IO, DWARFYAML::FormValue &FormValue);
375+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::FormValue &FormValue);
375376};
376377
377378template <> struct MappingTraits <DWARFYAML::File> {
378- static void mapping (IO &IO, DWARFYAML::File &File);
379+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::File &File);
379380};
380381
381382template <> struct MappingTraits <DWARFYAML::LineTableOpcode> {
382- static void mapping (IO &IO, DWARFYAML::LineTableOpcode &LineTableOpcode);
383+ LLVM_ABI static void mapping (IO &IO,
384+ DWARFYAML::LineTableOpcode &LineTableOpcode);
383385};
384386
385387template <> struct MappingTraits <DWARFYAML::LineTable> {
386- static void mapping (IO &IO, DWARFYAML::LineTable &LineTable);
388+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::LineTable &LineTable);
387389};
388390
389391template <> struct MappingTraits <DWARFYAML::SegAddrPair> {
390- static void mapping (IO &IO, DWARFYAML::SegAddrPair &SegAddrPair);
392+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::SegAddrPair &SegAddrPair);
391393};
392394
393395template <> struct MappingTraits <DWARFYAML::DWARFOperation> {
394- static void mapping (IO &IO, DWARFYAML::DWARFOperation &DWARFOperation);
396+ LLVM_ABI static void mapping (IO &IO,
397+ DWARFYAML::DWARFOperation &DWARFOperation);
395398};
396399
397400template <typename EntryType>
@@ -407,19 +410,20 @@ struct MappingTraits<DWARFYAML::ListEntries<EntryType>> {
407410};
408411
409412template <> struct MappingTraits <DWARFYAML::RnglistEntry> {
410- static void mapping (IO &IO, DWARFYAML::RnglistEntry &RnglistEntry);
413+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::RnglistEntry &RnglistEntry);
411414};
412415
413416template <> struct MappingTraits <DWARFYAML::LoclistEntry> {
414- static void mapping (IO &IO, DWARFYAML::LoclistEntry &LoclistEntry);
417+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::LoclistEntry &LoclistEntry);
415418};
416419
417420template <> struct MappingTraits <DWARFYAML::AddrTableEntry> {
418- static void mapping (IO &IO, DWARFYAML::AddrTableEntry &AddrTable);
421+ LLVM_ABI static void mapping (IO &IO, DWARFYAML::AddrTableEntry &AddrTable);
419422};
420423
421424template <> struct MappingTraits <DWARFYAML::StringOffsetsTable> {
422- static void mapping (IO &IO, DWARFYAML::StringOffsetsTable &StrOffsetsTable);
425+ LLVM_ABI static void mapping (IO &IO,
426+ DWARFYAML::StringOffsetsTable &StrOffsetsTable);
423427};
424428
425429template <> struct ScalarEnumerationTraits <dwarf::DwarfFormat> {
0 commit comments