summaryrefslogtreecommitdiff
path: root/include/llvm/DebugInfo
diff options
context:
space:
mode:
authorAlexey Samsonov <samsonov@google.com>2013-08-27 09:20:22 +0000
committerAlexey Samsonov <samsonov@google.com>2013-08-27 09:20:22 +0000
commit63fd2af3892a81026f40374d08b5124e72ccff4e (patch)
tree8587e5f891d29f8cf006b2d3e39adebe47fa7a7b /include/llvm/DebugInfo
parent1567abe74f519e542786bdb82664f68b10afda0b (diff)
downloadllvm-63fd2af3892a81026f40374d08b5124e72ccff4e.tar.gz
llvm-63fd2af3892a81026f40374d08b5124e72ccff4e.tar.bz2
llvm-63fd2af3892a81026f40374d08b5124e72ccff4e.tar.xz
Add support for DebugFission to DWARF parser
Summary: 1) Make llvm-symbolizer properly symbolize files with split debug info (by using stanalone .dwo files). 2) Make DWARFCompileUnit parse and store corresponding .dwo file, if necessary. 3) Make bits of DWARF parsing more CompileUnit-oriented. Reviewers: echristo Reviewed By: echristo CC: bkramer, llvm-commits Differential Revision: http://llvm-reviews.chandlerc.com/D1164 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@189329 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/DebugInfo')
-rw-r--r--include/llvm/DebugInfo/DWARFFormValue.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/include/llvm/DebugInfo/DWARFFormValue.h b/include/llvm/DebugInfo/DWARFFormValue.h
index eaaccfb4f3..ad6f71d664 100644
--- a/include/llvm/DebugInfo/DWARFFormValue.h
+++ b/include/llvm/DebugInfo/DWARFFormValue.h
@@ -20,7 +20,7 @@ class raw_ostream;
class DWARFFormValue {
public:
struct ValueType {
- ValueType() : data(NULL) {
+ ValueType() : data(NULL), IsDWOIndex(false) {
uval = 0;
}
@@ -30,6 +30,7 @@ public:
const char* cstr;
};
const uint8_t* data;
+ bool IsDWOIndex;
};
enum {
@@ -63,11 +64,8 @@ public:
bool resolveCompileUnitReferences(const DWARFCompileUnit* cu);
uint64_t getUnsigned() const { return Value.uval; }
int64_t getSigned() const { return Value.sval; }
- const char *getAsCString(const DataExtractor *debug_str_data_ptr) const;
- const char *getIndirectCString(const DataExtractor *,
- const DataExtractor *) const;
- uint64_t getIndirectAddress(const DataExtractor *,
- const DWARFCompileUnit *) const;
+ const char *getAsCString(const DWARFCompileUnit *CU) const;
+ uint64_t getAsAddress(const DWARFCompileUnit *CU) const;
bool skipValue(DataExtractor debug_info_data, uint32_t *offset_ptr,
const DWARFCompileUnit *cu) const;
static bool skipValue(uint16_t form, DataExtractor debug_info_data,