aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorJason Molenda <jason@molenda.com>2023-07-06 17:59:09 -0700
committerJason Molenda <jason@molenda.com>2023-07-06 18:00:09 -0700
commitc3192196aea279eea0a87247a02f224ebe067c44 (patch)
treedfb99cc85f10ae7fd83ade67f7f2c61772870157 /clang/lib/Frontend/CompilerInvocation.cpp
parent93ff2110e53ad3d7fe7fde251d0e9a2165c99ed7 (diff)
downloadllvm-c3192196aea279eea0a87247a02f224ebe067c44.zip
llvm-c3192196aea279eea0a87247a02f224ebe067c44.tar.gz
llvm-c3192196aea279eea0a87247a02f224ebe067c44.tar.bz2
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. This is the second time landing this change; this time correct the size of the image_count argument, and add a fallback if the notification function "lldb_image_notifier" can't be found. Differential Revision: https://reviews.llvm.org/D139453
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions