diff options
Diffstat (limited to 'llvm/lib/DebugInfo/DWARFDebugLoc.h')
-rw-r--r-- | llvm/lib/DebugInfo/DWARFDebugLoc.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/llvm/lib/DebugInfo/DWARFDebugLoc.h b/llvm/lib/DebugInfo/DWARFDebugLoc.h index d31aaaa1273..663acbb42f8 100644 --- a/llvm/lib/DebugInfo/DWARFDebugLoc.h +++ b/llvm/lib/DebugInfo/DWARFDebugLoc.h @@ -55,6 +55,27 @@ public: /// specified address size to interpret the address ranges. void parse(DataExtractor data, unsigned AddressSize); }; + +class DWARFDebugLocDWO { + struct Entry { + uint64_t Start; + uint32_t Length; + SmallVector<unsigned char, 4> Loc; + }; + + struct LocationList { + unsigned Offset; + SmallVector<Entry, 2> Entries; + }; + + typedef SmallVector<LocationList, 4> LocationLists; + + LocationLists Locations; + +public: + void parse(DataExtractor data); + void dump(raw_ostream &OS) const; +}; } #endif |