[Lldb-commits] [lldb] ec6a34e - [lldb] Pass important options to dsymForUUID (#72669)

via lldb-commits lldb-commits at lists.llvm.org
Fri Nov 17 08:00:13 PST 2023


Author: Jonas Devlieghere
Date: 2023-11-17T08:00:07-08:00
New Revision: ec6a34e2a781fcfc6fe1d30e7cd358fb779157cf

URL: https://github.com/llvm/llvm-project/commit/ec6a34e2a781fcfc6fe1d30e7cd358fb779157cf
DIFF: https://github.com/llvm/llvm-project/commit/ec6a34e2a781fcfc6fe1d30e7cd358fb779157cf.diff

LOG: [lldb] Pass important options to dsymForUUID (#72669)

On macOS, we usually use the DebugSymbols framework to find dSYMs, but
we have a few places (including crashlog.py) that calls out directly to
dsymForUUID. Currently, this invocation is missing two important
options:

* `--ignoreNegativeCache`: Poor network connectivity or lack of VPN can
lead to a negative cache hit. Avoiding those issues is worth the penalty
of skipping these caches.
* `--copyExecutable`: Ensure we copy the executable as it might not be
available at its original location.

rdar://118480731

Added: 
    

Modified: 
    lldb/examples/python/crashlog.py

Removed: 
    


################################################################################
diff  --git a/lldb/examples/python/crashlog.py b/lldb/examples/python/crashlog.py
index cb8008419404c23..9e4f94264037aea 100755
--- a/lldb/examples/python/crashlog.py
+++ b/lldb/examples/python/crashlog.py
@@ -356,7 +356,11 @@ def locate_module_and_debug_symbols(self):
             # Keep track of unresolved source paths.
             unavailable_source_paths = set()
             if os.path.exists(self.dsymForUUIDBinary):
-                dsym_for_uuid_command = "%s %s" % (self.dsymForUUIDBinary, uuid_str)
+                dsym_for_uuid_command = (
+                    "{} --copyExecutable --ignoreNegativeCache {}".format(
+                        self.dsymForUUIDBinary, uuid_str
+                    )
+                )
                 s = subprocess.check_output(dsym_for_uuid_command, shell=True)
                 if s:
                     try:


        


More information about the lldb-commits mailing list