jankratochvil created this revision. jankratochvil added reviewers: labath, clayborg. jankratochvil added a project: LLDB. Herald added a reviewer: shafik.
Reasons are the same as: D74637 <https://reviews.llvm.org/D74637> Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D74690 Files: lldb/source/Plugins/SymbolFile/DWARF/DIERef.h lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h Index: lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h =================================================================== --- lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h +++ lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h @@ -322,7 +322,7 @@ typedef llvm::DenseMap<const DWARFDebugInfoEntry *, lldb::opaque_compiler_type_t> DIEToClangType; - typedef llvm::DenseMap<lldb::opaque_compiler_type_t, lldb::user_id_t> + typedef llvm::DenseMap<lldb::opaque_compiler_type_t, DIERef> ClangTypeToDIE; DISALLOW_COPY_AND_ASSIGN(SymbolFileDWARF); Index: lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp =================================================================== --- lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp +++ lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp @@ -1723,7 +1723,7 @@ clang_type.GetOpaqueQualType(); dwarf->GetForwardDeclClangTypeToDie() [ClangUtil::RemoveFastQualifiers(clang_type).GetOpaqueQualType()] = - die.GetID(); + *die.GetDIERef(); m_ast.SetHasExternalStorage(clang_type.GetOpaqueQualType(), true); } } Index: lldb/source/Plugins/SymbolFile/DWARF/DIERef.h =================================================================== --- lldb/source/Plugins/SymbolFile/DWARF/DIERef.h +++ lldb/source/Plugins/SymbolFile/DWARF/DIERef.h @@ -34,6 +34,8 @@ assert(this->dwo_num() == dwo_num && "Dwo number out of range?"); } + DIERef() {} + llvm::Optional<uint32_t> dwo_num() const { if (m_dwo_num_valid) return m_dwo_num; @@ -58,7 +60,7 @@ uint32_t m_dwo_num : 30; uint32_t m_dwo_num_valid : 1; uint32_t m_section : 1; - dw_offset_t m_die_offset; + dw_offset_t m_die_offset = DW_INVALID_OFFSET; }; static_assert(sizeof(DIERef) == 8, "");
Index: lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h =================================================================== --- lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h +++ lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h @@ -322,7 +322,7 @@ typedef llvm::DenseMap<const DWARFDebugInfoEntry *, lldb::opaque_compiler_type_t> DIEToClangType; - typedef llvm::DenseMap<lldb::opaque_compiler_type_t, lldb::user_id_t> + typedef llvm::DenseMap<lldb::opaque_compiler_type_t, DIERef> ClangTypeToDIE; DISALLOW_COPY_AND_ASSIGN(SymbolFileDWARF); Index: lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp =================================================================== --- lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp +++ lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp @@ -1723,7 +1723,7 @@ clang_type.GetOpaqueQualType(); dwarf->GetForwardDeclClangTypeToDie() [ClangUtil::RemoveFastQualifiers(clang_type).GetOpaqueQualType()] = - die.GetID(); + *die.GetDIERef(); m_ast.SetHasExternalStorage(clang_type.GetOpaqueQualType(), true); } } Index: lldb/source/Plugins/SymbolFile/DWARF/DIERef.h =================================================================== --- lldb/source/Plugins/SymbolFile/DWARF/DIERef.h +++ lldb/source/Plugins/SymbolFile/DWARF/DIERef.h @@ -34,6 +34,8 @@ assert(this->dwo_num() == dwo_num && "Dwo number out of range?"); } + DIERef() {} + llvm::Optional<uint32_t> dwo_num() const { if (m_dwo_num_valid) return m_dwo_num; @@ -58,7 +60,7 @@ uint32_t m_dwo_num : 30; uint32_t m_dwo_num_valid : 1; uint32_t m_section : 1; - dw_offset_t m_die_offset; + dw_offset_t m_die_offset = DW_INVALID_OFFSET; }; static_assert(sizeof(DIERef) == 8, "");
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits