[Lldb-commits] [lldb] [lldb] Avoid force loading symbols in statistics collection (PR #136236)
via lldb-commits
lldb-commits at lists.llvm.org
Fri Apr 18 14:42:12 PDT 2025
================
@@ -749,10 +749,20 @@ TEST_F(SymtabTest, TestSymtabCreatedOnDemand) {
ASSERT_THAT_EXPECTED(ExpectedFile, llvm::Succeeded());
auto module_sp = std::make_shared<Module>(ExpectedFile->moduleSpec());
- // The symbol table should not be loaded by default.
+ // The symbol file should not be created by default.
Symtab *module_symtab = module_sp->GetSymtab(/*can_create=*/false);
ASSERT_EQ(module_symtab, nullptr);
+ // Even if the symbol file is created, the symbol table should not be created by default.
+
+ // TODO:
+ // I need to create a symbol file here, but without causing it to parse the symbol table.
+ // See next line as a failed attempt.
+
+ // module_sp->GetSymbolFile(/*can_create=*/true); // Cannot do this because it will parse the symbol table.
----------------
jimingham wrote:
I don't actually think this is relevant to this question, but reading the dependencies of a binary on Darwin isn't a function of the dynamic loader, but of the object file reader. mach-o binaries store their dependencies in "load commands" in the binary, which the MachO object file reader parser, except when you run `target create -dfalse`. Anyway, it doesn't have anything to do with the symbol table either...
https://github.com/llvm/llvm-project/pull/136236
More information about the lldb-commits
mailing list