[all-commits] [llvm/llvm-project] 8a4672: Defer source path remap tilde expansion until sour...
Jason Molenda via All-commits
all-commits at lists.llvm.org
Thu May 26 11:12:52 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 8a467284d5608522fdf80cb78056d42d28f5ebb5
https://github.com/llvm/llvm-project/commit/8a467284d5608522fdf80cb78056d42d28f5ebb5
Author: Jason Molenda <jason at molenda.com>
Date: 2022-05-26 (Thu, 26 May 2022)
Changed paths:
M lldb/source/Core/SourceManager.cpp
M lldb/source/Plugins/SymbolVendor/MacOSX/SymbolVendorMacOSX.cpp
Log Message:
-----------
Defer source path remap tilde expansion until source file use
When reading source path remappings out of a dSYM, lldb currently
does tilde expansion -- expanding the tilde-username and checking
that the destination pathname exists, for each dSYM with the path
remappings. This cost happens during lldb's initial process launch
/ load, an especially perf-sensitive time. Inside Apple, we have
dSYMs with source path remappings pointing to NFS directories where
these extra stats for every dSYM can be very expensive if the network
is slow.
This patch instead keeps the source path mapping in the original
tilde-username terms and does the tilde expansion when we need
to read a specific source file from one of the modules. We'll
be stat'ing all of those inodes to load the source file anyway,
so the fact that we do the tilde expansion on every source file
we load, it doesn't cost us significantly.
Differential Revision: https://reviews.llvm.org/D126435
rdar://77091379
(cherry picked from commit c274b6e5830ea88d3f55d6dc1d2b99e38cf6595e)
Commit: bd67468645c08a96aec7839c30385956edd88021
https://github.com/llvm/llvm-project/commit/bd67468645c08a96aec7839c30385956edd88021
Author: Jason Molenda <jason at molenda.com>
Date: 2022-05-26 (Thu, 26 May 2022)
Changed paths:
M lldb/source/Core/SourceManager.cpp
Log Message:
-----------
Check that a FileSpec has a Directory component before using
A follow on to my patch for https://reviews.llvm.org/D126435
hit by an x86_64 linux bot; I assumed that a FileSpec had a
directory component and checked if the first character was a
'~'. This was not a valid assumption.
Compare: https://github.com/llvm/llvm-project/compare/ce54b22657f0...bd67468645c0
More information about the All-commits
mailing list