summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2015-08-26 22:57:51 +0000
committerGreg Clayton <gclayton@apple.com>2015-08-26 22:57:51 +0000
commit6071e6fc9430add9873523733ab099b5578929e6 (patch)
tree6b00ad85e6488708ccf8ceebaae608390e7db328 /lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
parent8cd9d7acb25eec1f0c5fa190759213030f5e1ec8 (diff)
downloadbcm5719-llvm-6071e6fc9430add9873523733ab099b5578929e6.tar.gz
bcm5719-llvm-6071e6fc9430add9873523733ab099b5578929e6.zip
Major DWARF cleanup.
Added a new class called DWARFDIE that contains a DWARFCompileUnit and DWARFDebugInfoEntry so that these items always stay together. There were many places where we just handed out DWARFDebugInfoEntry pointers and then use them with a compile unit that may or may not be the correct one. Clients outside of DWARFCompileUnit and DWARFDebugInfoEntry should all be dealing with DWARFDIE instances instead of playing with DWARFCompileUnit/DWARFDebugInfoEntry pairs manually. This paves to the way for some modifications that are coming for DWO. llvm-svn: 246100
Diffstat (limited to 'lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h')
-rw-r--r--lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
index 278f6289935..60990c0f0f6 100644
--- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
+++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.h
@@ -14,7 +14,6 @@
#include "DWARFDataExtractor.h"
class DWARFCompileUnit;
-class SymbolFileDWARF;
class DWARFFormValue
{
@@ -81,7 +80,7 @@ public:
dw_form_t Form() const { return m_form; }
void SetForm(dw_form_t form) { m_form = form; }
const ValueType& Value() const { return m_value; }
- void Dump(lldb_private::Stream &s, SymbolFileDWARF* symbol_file) const;
+ void Dump(lldb_private::Stream &s) const;
bool ExtractValue(const lldb_private::DWARFDataExtractor& data,
lldb::offset_t* offset_ptr);
const uint8_t* BlockData() const;
@@ -92,16 +91,15 @@ public:
void SetUnsigned(uint64_t uval) { m_value.value.uval = uval; }
int64_t Signed() const { return m_value.value.sval; }
void SetSigned(int64_t sval) { m_value.value.sval = sval; }
- const char* AsCString(SymbolFileDWARF* symbol_file) const;
- dw_addr_t Address(SymbolFileDWARF* symbol_file) const;
+ const char* AsCString() const;
+ dw_addr_t Address() const;
bool SkipValue(const lldb_private::DWARFDataExtractor& debug_info_data, lldb::offset_t *offset_ptr) const;
static bool SkipValue(const dw_form_t form, const lldb_private::DWARFDataExtractor& debug_info_data, lldb::offset_t *offset_ptr, const DWARFCompileUnit* cu);
static bool IsBlockForm(const dw_form_t form);
static bool IsDataForm(const dw_form_t form);
static FixedFormSizes GetFixedFormSizesForAddressSize (uint8_t addr_size, bool is_dwarf64);
static int Compare (const DWARFFormValue& a,
- const DWARFFormValue& b,
- SymbolFileDWARF* symbol_file);
+ const DWARFFormValue& b);
protected:
const DWARFCompileUnit* m_cu; // Compile unit for this form
dw_form_t m_form; // Form for this value
OpenPOWER on IntegriCloud