[Lldb-commits] [PATCH] D41533: Advanced guessing of rendezvous breakpoint

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Jan 9 07:01:45 PST 2018

labath added subscribers: emaste, krytarowski, ted.
labath added a comment.

I'm adding some people with non-linux non-x86/arm targets who use this plugin for more visibility. I have a couple of small comments, but in general, I am happy with this.

Comment at: packages/Python/lldbsuite/test/functionalities/breakpoint/global_constructor/TestBreakpointInGlobalConstructor.py:24
         self.line_main = line_number('main.cpp', '// !BR_main')
+        if not self.platformIsDarwin():
+          if lldb.remote_platform:
The right way to handle this is to use the environment which is returned from `self.registerSharedLibrariesWithTarget` as the launch environment (you'll need to launch using the SB API). The reason that TestLoadUnload does not handle this is probably because it predates this function.

Comment at: source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp:224
+      // If we cannot establish rendezvous breakpoint right now
+      // we'll try again at enty point.
+      ProbeEntry();

Comment at: source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp:379
+    }
+    break_addr = symbol->GetLoadAddress(&m_process->GetTarget());
+    if (break_addr == LLDB_INVALID_ADDRESS) {
It should be possible to create the breakpoint via `Target::CreateBreakpoint` (the overload that lets you specify a list of function names) instead of manually resolving the symbols... Have you tried doing that?


More information about the lldb-commits mailing list