[all-commits] [llvm/llvm-project] 624813: Change the dyld notification function that lldb pu...
Jason Molenda via All-commits
all-commits at lists.llvm.org
Fri Jun 30 18:30:03 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 624813a4f41c5945dc8f8d998173960ad75db731
https://github.com/llvm/llvm-project/commit/624813a4f41c5945dc8f8d998173960ad75db731
Author: Jason Molenda <jason at molenda.com>
Date: 2023-06-30 (Fri, 30 Jun 2023)
Changed paths:
M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
Log Message:
-----------
Change the dyld notification function that lldb puts a breakpoint in
On Darwin systems, the dynamic linker dyld has an empty function
it calls when binaries are added/removed from the process. lldb puts
a breakpoint on this dyld function to catch the notifications. The
function arguments are used by lldb to tell what is happening.
The linker has a natural representation when the addresses of
binaries being added/removed are in the pointer size of the process.
There is then a second function where the addresses of the binaries
are in a uint64_t array, which the debugger has been using before -
dyld allocates memory for the array, copies the values in to it,
and calls it for lldb's benefit.
This changes to using the native notifier function, with pointer-sized
addresses.
Differential Revision: https://reviews.llvm.org/D139453
More information about the All-commits
mailing list