[all-commits] [llvm/llvm-project] 57cbd2: Flag for LoadBinaryWithUUIDAndAddress, to create m...
Jason Molenda via All-commits
all-commits at lists.llvm.org
Mon Aug 7 15:20:01 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 57cbd26a68ab61631f5f4272d3c90df2eb0ce4f6
https://github.com/llvm/llvm-project/commit/57cbd26a68ab61631f5f4272d3c90df2eb0ce4f6
Author: Jason Molenda <jason at molenda.com>
Date: 2023-08-07 (Mon, 07 Aug 2023)
Changed paths:
M lldb/include/lldb/Target/DynamicLoader.h
M lldb/source/Core/DynamicLoader.cpp
M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
M lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp
M lldb/test/API/macosx/lc-note/multiple-binary-corefile/TestMultipleBinaryCorefile.py
M lldb/test/API/macosx/lc-note/multiple-binary-corefile/create-multibin-corefile.cpp
Log Message:
-----------
Flag for LoadBinaryWithUUIDAndAddress, to create memory image or not
DynamicLoader::LoadBinaryWithUUIDAndAddress can create a Module based
on the binary image in memory, which in some cases contains symbol
names and can be genuinely useful. If we don't have a filename, it
creates a name in the form `memory-image-0x...` with the header address.
In practice, this is most useful with Darwin userland corefiles
where the binary was stored in the corefile in whole, and we can't
find a binary with the matching UUID. Using the binary out of
the corefile memory in this case works well.
But in other cases, akin to firmware debugging, we merely end up
with an oddly named binary image and no symbols.
Add a flag to control whether we will create these memory images
and add them to the Target or not; only set it to true when working
with a userland Mach-O image with the "all image infos" LC_NOTE for
a userland corefile.
Differential Revision: https://reviews.llvm.org/D157167
More information about the All-commits
mailing list