[Lldb-commits] [lldb] r170082 - /lldb/trunk/source/Target/Target.cpp

Jason Molenda jmolenda at apple.com
Wed Dec 12 17:54:19 PST 2012

Author: jmolenda
Date: Wed Dec 12 19:54:18 2012
New Revision: 170082

URL: http://llvm.org/viewvc/llvm-project?rev=170082&view=rev
For iOS native lldb, don't initialize the ModuleList notifier
callback.  See the added comment for details on how this is a problem
in that environment.  We'll need to restructure how the ModuleDidLoad
notification is called vrs. when the DynamicLoader pluging has had
a chance to set the Sectino load addresses.


Modified: lldb/trunk/source/Target/Target.cpp
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/source/Target/Target.cpp?rev=170082&r1=170081&r2=170082&view=diff
--- lldb/trunk/source/Target/Target.cpp (original)
+++ lldb/trunk/source/Target/Target.cpp Wed Dec 12 19:54:18 2012
@@ -66,7 +66,20 @@
     m_platform_sp (platform_sp),
     m_mutex (Mutex::eMutexTypeRecursive), 
     m_arch (target_arch),
     m_images (this),
+    // FIXME: The module added notification needed for python scripting support 
+    // causes a problem with in-memory-only Modules at startup if we have
+    // a breakpoint (the ObjectFile is parsed before we've set the Section load
+    // addresses leading to an invalid __LINKEDIT section addr on Mac OS X and
+    // all the problems that will happen from that).  
+    // As a temporary solution for iOS debugging (where all the modules are in-memory-only), 
+    // disable this notification system there. The problem could still happen on 
+    // an x86 system but it is much less common. 
+    // <rdar://problem/12831670> describes the failure mode for on-iOS debugging.
+    m_images (NULL),
     m_section_load_list (),
     m_breakpoint_list (false),
     m_internal_breakpoint_list (true),

More information about the lldb-commits mailing list