[Lldb-commits] [PATCH] D70106: Performance: Add a set of visited SymbolFiles to other the FindFiles variant.

Adrian Prantl via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Nov 11 17:31:58 PST 2019


aprantl created this revision.
aprantl added reviewers: JDevlieghere, jasonmolenda.
Herald added a reviewer: shafik.

This is basically the same bug as in r260434 again. SymbolFileDWARF::FindTypes has exponential worst-case when digging through dependency DAG of .pcms because each object file and pcm may depend on an already-visited .pcm, which may again have dependencies. Fixed here by carrying a set of already visited SymbolFiles around.

rdar://problem/56993424


https://reviews.llvm.org/D70106

Files:
  lldb/include/lldb/Core/Module.h
  lldb/include/lldb/Symbol/SymbolFile.h
  lldb/source/Core/Module.cpp
  lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
  lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
  lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
  lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
  lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
  lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
  lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.h
  lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp
  lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.h
  lldb/source/Symbol/SymbolFile.cpp
  lldb/tools/lldb-test/lldb-test.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D70106.228787.patch
Type: text/x-patch
Size: 11296 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20191112/9ef68b42/attachment.bin>


More information about the lldb-commits mailing list