Changeset View
Changeset View
Standalone View
Standalone View
lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAbbrev.h
Show All 29 Lines | DWARFAbbreviationDeclarationSet() | ||||
: m_offset(DW_INVALID_OFFSET), m_idx_offset(0), m_decls() {} | : m_offset(DW_INVALID_OFFSET), m_idx_offset(0), m_decls() {} | ||||
DWARFAbbreviationDeclarationSet(dw_offset_t offset, uint32_t idx_offset) | DWARFAbbreviationDeclarationSet(dw_offset_t offset, uint32_t idx_offset) | ||||
: m_offset(offset), m_idx_offset(idx_offset), m_decls() {} | : m_offset(offset), m_idx_offset(idx_offset), m_decls() {} | ||||
void Clear(); | void Clear(); | ||||
dw_offset_t GetOffset() const { return m_offset; } | dw_offset_t GetOffset() const { return m_offset; } | ||||
void Dump(lldb_private::Stream *s) const; | void Dump(lldb_private::Stream *s) const; | ||||
bool Extract(const lldb_private::DWARFDataExtractor &data, | |||||
/// Extract all abbrev decls in a set. Returns llvm::ErrorSuccess() on | |||||
/// success, and an appropriate llvm::Error object otherwise. | |||||
llvm::Error extract(const lldb_private::DWARFDataExtractor &data, | |||||
lldb::offset_t *offset_ptr); | lldb::offset_t *offset_ptr); | ||||
// void Encode(BinaryStreamBuf& debug_abbrev_buf) const; | // void Encode(BinaryStreamBuf& debug_abbrev_buf) const; | ||||
dw_uleb128_t | dw_uleb128_t | ||||
AppendAbbrevDeclSequential(const DWARFAbbreviationDeclaration &abbrevDecl); | AppendAbbrevDeclSequential(const DWARFAbbreviationDeclaration &abbrevDecl); | ||||
void GetUnsupportedForms(std::set<dw_form_t> &invalid_forms) const; | void GetUnsupportedForms(std::set<dw_form_t> &invalid_forms) const; | ||||
const DWARFAbbreviationDeclaration * | const DWARFAbbreviationDeclaration * | ||||
GetAbbreviationDeclaration(dw_uleb128_t abbrCode) const; | GetAbbreviationDeclaration(dw_uleb128_t abbrCode) const; | ||||
Show All 11 Lines | typedef DWARFAbbreviationDeclarationCollMap::const_iterator | ||||
DWARFAbbreviationDeclarationCollMapConstIter; | DWARFAbbreviationDeclarationCollMapConstIter; | ||||
class DWARFDebugAbbrev { | class DWARFDebugAbbrev { | ||||
public: | public: | ||||
DWARFDebugAbbrev(); | DWARFDebugAbbrev(); | ||||
const DWARFAbbreviationDeclarationSet * | const DWARFAbbreviationDeclarationSet * | ||||
GetAbbreviationDeclarationSet(dw_offset_t cu_abbr_offset) const; | GetAbbreviationDeclarationSet(dw_offset_t cu_abbr_offset) const; | ||||
void Dump(lldb_private::Stream *s) const; | void Dump(lldb_private::Stream *s) const; | ||||
void Parse(const lldb_private::DWARFDataExtractor &data); | |||||
/// Extract all abbreviations for a particular compile unit. Returns | |||||
/// llvm::ErrorSuccess() on success, and an appropriate llvm::Error object | |||||
/// otherwise. | |||||
llvm::Error parse(const lldb_private::DWARFDataExtractor &data); | |||||
void GetUnsupportedForms(std::set<dw_form_t> &invalid_forms) const; | void GetUnsupportedForms(std::set<dw_form_t> &invalid_forms) const; | ||||
protected: | protected: | ||||
DWARFAbbreviationDeclarationCollMap m_abbrevCollMap; | DWARFAbbreviationDeclarationCollMap m_abbrevCollMap; | ||||
mutable DWARFAbbreviationDeclarationCollMapConstIter m_prev_abbr_offset_pos; | mutable DWARFAbbreviationDeclarationCollMapConstIter m_prev_abbr_offset_pos; | ||||
}; | }; | ||||
#endif // SymbolFileDWARF_DWARFDebugAbbrev_h_ | #endif // SymbolFileDWARF_DWARFDebugAbbrev_h_ |