[Lldb-commits] [PATCH] D17465: Get register context for the 32-bit process in a WoW64 process minidump.

Adrian McCarthy via lldb-commits lldb-commits at lists.llvm.org
Fri Feb 19 15:49:11 PST 2016


amccarth created this revision.
amccarth added a reviewer: zturner.
amccarth added a subscriber: lldb-commits.

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.

I'll add a test before submitting this, but it seems to work in my manual experiments.

http://reviews.llvm.org/D17465

Files:
  source/Plugins/Process/Windows/MiniDump/ProcessWinMiniDump.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17465.48552.patch
Type: text/x-patch
Size: 5866 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20160219/10c9e77f/attachment-0001.bin>


More information about the lldb-commits mailing list