jankratochvil added a comment. In D65561#1614293 <https://reviews.llvm.org/D65561#1614293>, @labath wrote:
> That would seem to at odds with your " .gnu_debuglink is considered as a > flag" assertion, but I am not sure how you came to believe that. I see I remembered it wrongly, already the initial build-id implementation for GDB ignored `.gnu_debuglink` <https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=77069918ac29da24f1ae0e388cef2ea5045397fd>. > That said, I agree the extra filesystem accesses are bad, and they are a > completely unintended side-effect of this patch. If that is the only issue, > then I think this can be easily fixed by first checking whether the main > object file contains any debug info, and skipping the rest of the lookup in > that case. Yes, this is what GDB does: /* If the file has its own symbol tables it has no separate debug info. `.dynsym'/`.symtab' go to MSYMBOLS, `.debug_info' goes to SYMTABS/PSYMTABS. `.gnu_debuglink' may no longer be present with `.note.gnu.build-id'. ... else if (!objfile_has_partial_symbols (objfile) std::string debugfile = find_separate_debug_file_by_buildid (objfile); CHANGES SINCE LAST ACTION https://reviews.llvm.org/D65561/new/ https://reviews.llvm.org/D65561 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits