[all-commits] [llvm/llvm-project] 63bfb3: [lldb/Symbol] Reimplement Symbols::FindSymbolFileI...

Jonas Devlieghere via All-commits all-commits at lists.llvm.org
Fri Apr 3 09:29:28 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 63bfb3a81ba2aef8d0444b58aafc868af38a623c
      https://github.com/llvm/llvm-project/commit/63bfb3a81ba2aef8d0444b58aafc868af38a623c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2020-04-03 (Fri, 03 Apr 2020)

  Changed paths:
    M lldb/source/Symbol/LocateSymbolFileMacOSX.cpp

  Log Message:
  -----------
  [lldb/Symbol] Reimplement Symbols::FindSymbolFileInBundle to use the VFS

This reimplements Symbols::FindSymbolFileInBundle to use the VFS-aware
recursive directory iterator. This is needed for reproducer replay.

Differential revision: https://reviews.llvm.org/D77337


  Commit: d144087c963d8189bb4aeaa7800dcb9f93ac84db
      https://github.com/llvm/llvm-project/commit/d144087c963d8189bb4aeaa7800dcb9f93ac84db
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2020-04-03 (Fri, 03 Apr 2020)

  Changed paths:
    M lldb/source/Host/common/FileSystem.cpp
    M lldb/unittests/Host/FileSystemTest.cpp

  Log Message:
  -----------
  [lldb/Support] Treat empty FileSpec as an invalid file.

LLDB relies on empty FileSpecs being invalid files, for example, they
don't exists. Currently this assumption does not always hold during
reproducer replay, because we pass the result of GetPath to the VFS.
This is an empty string, which the VFS converts to an absolute directory
by prepending the current working directory, before looking it up in the
YAML mapping. This means that an empty FileSpec will exist when the
current working directory does. This breaks at least one test
(TestAddDsymCommand.py) when ran from replay.

This patch special cases empty FileSpecs and returns a sensible result
before calling GetPath and forwarding the call.

Differential revision: https://reviews.llvm.org/D77351


Compare: https://github.com/llvm/llvm-project/compare/43d2fc7ed74e...d144087c963d


More information about the All-commits mailing list