[Lldb-commits] [lldb] LLDB Debuginfod tests and a fix or two (PR #90622)
David Spickett via lldb-commits
lldb-commits at lists.llvm.org
Fri May 3 08:30:56 PDT 2024
================
@@ -87,8 +105,15 @@ SymbolVendorELF::CreateInstance(const lldb::ModuleSP &module_sp,
FileSpecList search_paths = Target::GetDefaultDebugFileSearchPaths();
FileSpec dsym_fspec =
PluginManager::LocateExecutableSymbolFile(module_spec, search_paths);
- if (!dsym_fspec)
- return nullptr;
+ if (!dsym_fspec || IsDwpSymbolFile(module_sp, dsym_fspec)) {
+ // If we have a stripped binary or if we got a DWP file, we should prefer
+ // symbols in the executable acquired through a plugin.
+ ModuleSpec unstripped_spec =
+ PluginManager::LocateExecutableObjectFile(module_spec);
+ if (!unstripped_spec)
+ return nullptr;
+ dsym_fspec = unstripped_spec.GetFileSpec();
+ }
----------------
DavidSpickett wrote:
We try to allocate memory to JIT the expression and calling `mmap` fails with a signal. In https://github.com/llvm/llvm-project/issues/68987 this was because we had lost the section info that told us whether to call it as Thumb or Arm, if we get that wrong it causes a SIGILL, so it could be the same thing again.
I will look into it more next week and assuming I find a fix, reland the changes for you.
https://github.com/llvm/llvm-project/pull/90622
More information about the lldb-commits
mailing list