summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process/Windows/MiniDump/ProcessWinMiniDump.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Set the architecture type from minidump more precisely. Differentiate i686 ↵Adrian McCarthy2016-04-041-2/+10
| | | | | | v i386 when possible. llvm-svn: 265308
* Unicode support on Win32.Zachary Turner2016-03-221-3/+10
| | | | | | | | | | | | | Win32 API calls that are Unicode aware require wide character strings, but LLDB uses UTF8 everywhere. This patch does conversions wherever necessary when passing strings into and out of Win32 API calls. Patch by Cameron Differential Revision: http://reviews.llvm.org/D17107 Reviewed By: zturner, amccarth llvm-svn: 264074
* Try to fix windows build after rL262863Tamas Berghammer2016-03-081-1/+1
| | | | llvm-svn: 262923
* Change over the broadcaster/listener process to hold shared or weak pointersJim Ingham2016-03-071-3/+3
| | | | | | | | | | | | | | to each other. This should remove some infrequent teardown crashes when the listener is not the debugger's listener. Processes now need to take a ListenerSP, not a Listener&. This required changing over the Process plugin class constructors to take a ListenerSP, instead of a Listener&. Other than that there should be no functional change. <rdar://problem/24580184> CrashTracer: [USER] Xcode at …ework: lldb_private::Listener::BroadcasterWillDestruct + 39 llvm-svn: 262863
* NFC: Refactor ProcessWinMiniDump to use a more traditional pimpl idiom.Adrian McCarthy2016-02-291-235/+306
| | | | | | | | This is a mechanical refactor. There should be no functional changes in this commit. Instead of encapsulating just the Windows-specific data, ProcessWinMiniDump now uses a private implementation class. This reduces indirections (in the source). It makes it easier to add private helper methods without touching the header and allows them to have platform-specific types as parameters. The only trick was that the pimpl class needed a back pointer in order to call a couple methods. llvm-svn: 262256
* Get register context for the 32-bit process in a WoW64 process minidumpAdrian McCarthy2016-02-251-8/+61
| | | | | | | | | | | | 32-bit processes on 64-bit Windows run in a layer called WoW64 (Windows-on-Windows64). If you capture a mini dump of such a process from a 32-bit debugger, you end up with a register context for the 64-bit WoW64 process rather than the 32-bit one you probably care about. This detects WoW64 by looking to see if there's a module named wow64.dll loaded. For such processes, it then looks in the 64-bit Thread Environment Block (TEB) to locate a copy of the 32-bit CONTEXT record that the plugin needs for the register context. Added some rudimentary tests. I'd like to improve these later once we figure out how to get the exception information from these mini dumps. Differential Revision: http://reviews.llvm.org/D17465 llvm-svn: 261808
* Fix DoReadMemory for Windows mini dumps.Adrian McCarthy2015-12-091-1/+4
| | | | | | Differential Revision: http://reviews.llvm.org/D15359 llvm-svn: 255083
* Implement GetMemoryRegionInfo for mini dumps.Adrian McCarthy2015-12-041-6/+52
| | | | | | Differential Revision: http://reviews.llvm.org/D15218 llvm-svn: 254780
* Implement RegisterContext for Mini Dumps.Adrian McCarthy2015-11-121-2/+8
| | | | | | Differential Revision: http://reviews.llvm.org/D14591 llvm-svn: 252950
* Refactor Windows process plugin to allow code sharing between live and mini ↵Adrian McCarthy2015-10-281-13/+1
| | | | | | dump debugging. llvm-svn: 251540
* Get the process ID from a minidump.Adrian McCarthy2015-09-171-2/+20
| | | | llvm-svn: 247939
* Have the Process hold a weak_ptr to the Target.Zachary Turner2015-09-011-6/+6
| | | | llvm-svn: 246578
* Implement DoReadMemory for Windows mini dumps.Adrian McCarthy2015-09-011-4/+76
| | | | | | Differential Revision: http://reviews.llvm.org/D12507 llvm-svn: 246558
* Differential Review: http://reviews.llvm.org/D12363Adrian McCarthy2015-08-281-2/+57
| | | | llvm-svn: 246302
* Reorg code to allow Windows Process Plugins to share some common code.Adrian McCarthy2015-08-241-0/+362
Differential Revision: http://reviews.llvm.org/D12252 llvm-svn: 245850
OpenPOWER on IntegriCloud