[Lldb-commits] [PATCH] D63399: DWARF: Make DIERefs always valid
Greg Clayton via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Mon Jun 17 09:10:50 PDT 2019
clayborg added a comment.
I am concerned that our mapping from DIERef to lldb::user_id_t won't work for all cases now that we are/have expanded the DIERef class (including as we add the DWO field). I voiced this concern in https://reviews.llvm.org/D63428. Let me know what you think.
================
Comment at: source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp:59
DWARFUnit *cu = m_debug_info.GetUnitAtOffset(DIERef::Section::DebugInfo, *cu_offset);
if (!cu)
----------------
Shouldn't we be using the section from the DIERef in "entry" instead of hard coding to "DIERef::Section::DebugInfo" here? If so we need a test to cover this case so we don't regress
================
Comment at: source/Plugins/SymbolFile/DWARF/DebugNamesDWARFIndex.cpp:70
if (llvm::Optional<uint64_t> die_offset = entry.getDIEUnitOffset())
return DIERef(DIERef::Section::DebugInfo, *cu_offset, die_bias + *die_offset);
----------------
Shouldn't we be using the section from the DIERef in "entry" instead of hard coding to "DIERef::Section::DebugInfo" here?
================
Comment at: source/Plugins/SymbolFile/DWARF/HashedNameToDIE.h:64
+ explicit operator DIERef() const {
+ return DIERef(DIERef::Section::DebugInfo, DW_INVALID_OFFSET, die_offset);
+ }
----------------
DIEInfo objects are only ever used in .debug_info?
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63399/new/
https://reviews.llvm.org/D63399
More information about the lldb-commits
mailing list