History log of /external/lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ea63601b1d4a21e46e477563f27d1b1c516136d8 21-Sep-2012 Greg Clayton <gclayton@apple.com> <rdar://problem/9959501>

KDP -- now with rudimentary process control (continue only) and read + write registers (which means we can see stack frames) for x86_64, i386 and ARM.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@164352 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.cpp
f4124deeb9532044a38c0774ced872f2709347da 21-Feb-2012 Greg Clayton <gclayton@apple.com> Thread hardening part 3. Now lldb_private::Thread objects have std::weak_ptr
objects for the backlink to the lldb_private::Process. The issues we were
running into before was someone was holding onto a shared pointer to a
lldb_private::Thread for too long, and the lldb_private::Process parent object
would get destroyed and the lldb_private::Thread had a "Process &m_process"
member which would just treat whatever memory that used to be a Process as a
valid Process. This was mostly happening for lldb_private::StackFrame objects
that had a member like "Thread &m_thread". So this completes the internal
strong/weak changes.

Documented the ExecutionContext and ExecutionContextRef classes so that our
LLDB developers can understand when and where to use ExecutionContext and
ExecutionContextRef objects.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@151009 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.cpp
ec15f50fdd7011fc155ab4fe71d4887ffe31df4e 20-Jul-2011 Greg Clayton <gclayton@apple.com> Added register reading support for ARM, i386 and x86_64.



git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@135557 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.cpp
0fa512447e00da09d300fbabd18b5ce94f52fdaa 19-Jul-2011 Greg Clayton <gclayton@apple.com> Modified the LocateMacOSXFilesUsingDebugSymbols(...) function to locate
an executable file if it is right next to a dSYM file that is found using
DebugSymbols. The code also looks into a bundle if the dSYM file is right
next to a bundle.

Modified the MacOSX kernel dynamic loader plug-in to correctly set the load
address for kext sections. This is a tad tricky because of how LLDB chooses
to treat mach-o segments with no name. Also modified the loader to properly
handle the older version 1 kext summary info.

Fixed a crasher in the Mach-o object file parser when it is trying to set
the section size correctly for dSYM sections.

Added packet dumpers to the CommunicationKDP class. We now also properly
detect address byte sizes based on the cpu type and subtype that is provided.
Added a read memory and read register support to CommunicationKDP. Added a
ThreadKDP class that now uses subclasses of the RegisterContextDarwin_XXX for
arm, i386 and x86_64.

Fixed some register numbering issues in the RegisterContextDarwin_arm class
and added ARM GDB numbers to the ARM_GCC_Registers.h file.

Change the RegisterContextMach_XXX classes over to subclassing their
RegisterContextDarwin_XXX counterparts so we can share the mach register
contexts between the user and kernel plug-ins.




git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@135466 91177308-0d34-0410-b5e6-96231b3b80d8
/external/lldb/source/Plugins/Process/MacOSX-Kernel/RegisterContextKDP_i386.cpp