Fix DWO breakage in r264909
authorPavel Labath <labath@google.com>
Thu, 31 Mar 2016 13:30:04 +0000 (13:30 +0000)
committerPavel Labath <labath@google.com>
Thu, 31 Mar 2016 13:30:04 +0000 (13:30 +0000)
commit63168e08bdd71641d75cb03300730a852c6540a4
tree8ec72cbcded65d3e15e8fb0b9105f6df925325d7
parent2e9f69d933308b781ba333989e4045ca10216b0d
Fix DWO breakage in r264909

Summary:
In case of Dwo, DIERef stores a compile unit offset in the main object file, and not in the dwo.
The implementation of SymbolFileDWARFDwo::GetDIE inherited from SymbolFileDWARF tried to lookup
the compilation unit in the DWO based on the main object file offset (and failed). I change the
implementation to verify the DIERef indeed references compile unit belonging to this dwo and then
lookup the die based on the die offset alone.

Includes a couple of fixes for mismatched struct/class tags.

Reviewers: tberghammer, clayborg

Subscribers: lldb-commits

Differential Revision: http://reviews.llvm.org/D18646

llvm-svn: 265011
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.cpp
lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDwo.h