[Lldb-commits] [PATCH] D71770: [lldb] Don't process symlinks deep inside DWARFUnit

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Thu Jan 9 07:15:25 PST 2020


labath updated this revision to Diff 237076.
labath added a comment.

Use a slightly different approach as the previous one didn't work on macos (the
reason for that is that each .o file gets a separate module -- the patch
populated the path map of the .o modules, but the remapping was being done by
the main module).

In this version I move the remapping code from SymbolFileDWARF into generic
code. I think this makes sense as the /proc/self/cwd trick is not really
specific to DWARF. It can be used e.g. with clang-cl and PDBs too (if
cross-compiling on a platform which supports symbolic links).

A small behavioral change here is that in order for a change in the setting
value to "kick in", one has to change it before the module gets created --
previously one could do it before debug info gets parsed. I don't think this is
particularly important as the only way to get reliable results was to change the
value before creating a target -- debug info parsing happens lazily, and a
pending breakpoing could cause it to get parsed immediately.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71770/new/

https://reviews.llvm.org/D71770

Files:
  lldb/include/lldb/Core/Module.h
  lldb/include/lldb/Core/ModuleList.h
  lldb/packages/Python/lldbsuite/test/functionalities/breakpoint/comp_dir_symlink/TestCompDirSymLink.py
  lldb/source/Core/CoreProperties.td
  lldb/source/Core/ModuleList.cpp
  lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
  lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
  lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
  lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
  lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h
  lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFProperties.td

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D71770.237076.patch
Type: text/x-patch
Size: 12509 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20200109/c8e5235e/attachment-0001.bin>


More information about the lldb-commits mailing list