[Lldb-commits] [lldb] 6e3ecd1 - [lldb] Fix dwo variant of TestLibCxxFunction
Shafik Yaghmour via lldb-commits
lldb-commits at lists.llvm.org
Thu Nov 14 09:55:37 PST 2019
Pavel,
Thank you for fixing this!
> On Nov 14, 2019, at 7:30 AM, Pavel Labath via lldb-commits <lldb-commits at lists.llvm.org> wrote:
>
>
> Author: Pavel Labath
> Date: 2019-11-14T16:29:36+01:00
> New Revision: 6e3ecd18847cb5c5bbe41d23428e1aa57ed1b339
>
> URL: https://github.com/llvm/llvm-project/commit/6e3ecd18847cb5c5bbe41d23428e1aa57ed1b339
> DIFF: https://github.com/llvm/llvm-project/commit/6e3ecd18847cb5c5bbe41d23428e1aa57ed1b339.diff
>
> LOG: [lldb] Fix dwo variant of TestLibCxxFunction
>
> The test was failing due to a bug in SymbolFileDWARF::FindFunctions --
> the function was searching the main dwarf unit for DW_TAG_subprograms,
> but the main unit is empty in case of split dwarf. The fix is simple --
> search the non-skeleton unit instead.
>
> This bug went unnoticed because this function is expensive, and so one
> generally avoids calling it.
>
> Added:
>
>
> Modified:
> lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
>
> Removed:
>
>
>
> ################################################################################
> diff --git a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
> index c0c10b21a747..10296527a114 100644
> --- a/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
> +++ b/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
> @@ -839,7 +839,8 @@ size_t SymbolFileDWARF::ParseFunctions(CompileUnit &comp_unit) {
>
> size_t functions_added = 0;
> std::vector<DWARFDIE> function_dies;
> - dwarf_cu->AppendDIEsWithTag(DW_TAG_subprogram, function_dies);
> + dwarf_cu->GetNonSkeletonUnit().AppendDIEsWithTag(DW_TAG_subprogram,
> + function_dies);
> for (const DWARFDIE &die : function_dies) {
> if (comp_unit.FindFunctionByUID(die.GetID()))
> continue;
>
>
>
> _______________________________________________
> lldb-commits mailing list
> lldb-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
More information about the lldb-commits
mailing list