Commit graph

117 commits

Author SHA1 Message Date
Rémi Bernon
983d02c08e winedbg: Rewrite and simplify step / continue handlers.
The vCont handler used some overcomplicated logic, we only need to
iterate over the actions and apply them on the matching threads that
didn't match yet.

Thanks to DBG_REPLY_LATER we can now continue/step any thread regardless
of whether it is the one that raised the debug event. Just suspend all
active threads after debug event is raised and resume them one by one,
according to the gdb request. If the thread that raised the debug event
should not be resumed, reply with DBG_REPLY_LATER.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 22:13:07 +02:00
Damjan Jovanovic
8c52c17a08 winedbg: Allow changing the current thread.
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-18 22:14:53 +01:00
Jacek Caban
1bb98982d6 winedbg: Set auto attach event after processing the first exception.
On Windows, the process is broken into by ordering an actual debug
break execution in a new thread. We need to process this event before
continuing exception handling in debuggee to avoid race.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 20:43:19 +02:00
Jacek Caban
136a0ac49b winedbg: Move continue_on_first_exception handling out of dbg_attach_debuggee.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 20:43:19 +02:00
Michael Stefaniuc
962b31c80b include: Add a generic available ARRAY_SIZE().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 10:39:15 +02:00
Zebediah Figura
1244759036 winedbg/gdbproxy: Store the register map inside the be_cpu struct.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-14 09:29:12 +02:00
Zebediah Figura
45e0654591 winedbg: Use WOW64_CONTEXT instead of CONTEXT for i386 backend.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Zebediah Figura
42bbeedbe4 winedbg: Make be_cpu process-specific.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Alexandre Julliard
21c12ddc64 ntdll: Fix CONTEXT definition for ARM64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:01 +01:00
Zebediah Figura
ad79c1eed2 winedbg: Add support for printing SSE (XMM) registers.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 11:27:47 +02:00
Francois Gouget
c4f7918801 winedbg: Remove unneeded NONAMELESSXXX directives. 2015-04-03 00:33:29 +09:00
Frédéric Delanoy
0f2bed51bd Assorted spelling fixes. 2014-02-10 15:47:29 +01:00
Frédéric Delanoy
fe580c083d winedbg: Use BOOL type where appropriate. 2013-11-11 13:27:28 +01:00
Eric Pouech
88949b2c59 winedbg: Fix set instruction when sizeof(int) <> sizeof register. 2012-04-05 14:51:33 +02:00
Alexandre Julliard
9b7ca3cf87 winedbg: Display the crash details dialog from a separate thread so that it appears right away. 2012-01-18 12:55:24 +01:00
Alexandre Julliard
dcd5643f74 winedbg: Add a dialog to display crash details and save them to a file. 2012-01-17 17:47:48 +01:00
Alexandre Julliard
dea7ced7f1 winedbg: Split minidump option handling to a separate function. 2012-01-17 16:27:06 +01:00
Francois Gouget
f8624006a7 winedbg: memory_get_current_frame() is not used anymore so remove it. 2011-03-30 18:23:40 +02:00
Alexandre Julliard
35d5c07538 winedbg: Support setting a breakpoint from a file name and line number. 2011-02-28 14:04:20 +01:00
Peter Schlaile
95a3cd8e30 winedbg: Adds an rwatch command to winedbg. 2010-12-06 12:21:16 +01:00
Eric Pouech
78cf0961e9 winedbg: Moved into a common function all code dealing with printing information about an exception, and use this function to implement new 'info exception' command. 2010-11-23 14:16:22 +01:00
Eric Pouech
9261ef2d0a winedbg: Rename 'info exception' into 'info frame' (which is somehow closer to what it does). 2010-11-23 14:16:22 +01:00
Andrew Eikum
d3f80c1e9f winedbg: Allow user to specify length of stack info output. 2010-05-25 12:14:00 +02:00
Eric Pouech
e4c29f9087 winedbg: Use standard Wine lists for threads. 2010-04-13 11:43:09 +02:00
Eric Pouech
d9e42e87f2 winedbg: Use standard Wine lists for processes. 2010-04-13 11:42:57 +02:00
Eric Pouech
2becd3349d winedbg: Merge pointer deref and array index functions into a single one. 2010-04-13 11:42:34 +02:00
Eric Pouech
0d7a6f13a8 winedbg: Describe pointer size in CPU backend structure. 2010-04-13 11:42:18 +02:00
Eric Pouech
5f23b94a27 winedbg: Allow using 8-byte long hardware assisted breakpoints on x86_64 CPUs. 2010-04-07 13:50:57 +02:00
Eric Pouech
d29c6ead92 winedbg: Store the CONTEXT in each stack frame to enable register access in the non topmost frames. 2010-03-31 11:36:23 +02:00
Eric Pouech
ea21a32707 winedbg: Store for context variables only the offsets of each register (instead of the address of the register in dbg_context). 2010-03-29 11:40:00 +02:00
Eric Pouech
5aa859de72 winedbg: Allow internal (host) integral variables to hold 64bit value on 64bit platforms. 2009-12-15 11:55:41 +01:00
Eric Pouech
4ce6c90c36 winedbg: Fix some types for homogenous support on 64bit platform. 2009-12-15 11:55:17 +01:00
Eric Pouech
12c3a012cb winedbg: Force 64bit line number information throughout the code to ease 64bit portability. 2009-12-14 12:30:56 +01:00
Eric Pouech
ab2e0bdef6 winedbg: Added a couple of tweaks to properly support 32bit vs 64bit wide addresses. 2009-12-14 12:30:33 +01:00
Eric Pouech
97d44dd399 dbghelp: Force 64bit module enumeration on all platforms. 2009-12-14 12:29:43 +01:00
Eric Pouech
7daa50c041 winedbg: Ensure all addresses passed to break functions are 64bit wide. 2009-12-14 12:29:35 +01:00
Eric Pouech
485280c64b winedbg: Enforce 64bit modules address on 64bit platforms. 2009-12-14 12:29:23 +01:00
Alexandre Julliard
ec73f0b71a winedbg: Fix a number of 64-bit pointer truncation issues. 2009-12-10 15:23:45 +01:00
Alexandre Julliard
c09ac7a41f winedbg: Use the explicit name for all A/W function. 2009-12-09 18:14:07 +01:00
Alexandre Julliard
8d0cb61bc7 winedbg: Add wrappers for Read/WriteProcessMemory to fix the mingw build. 2009-06-05 15:19:58 +02:00
Mikołaj Zalewski
1e256e426d winedbg: Add a crash dialog for --auto mode. 2009-04-22 17:00:34 +02:00
Francois Gouget
4061d1f8d8 winedbg: Make lexeme_alloc() static in debug.l. 2009-01-20 12:33:52 +01:00
Francois Gouget
5012a57268 winedbg: Make some functions static. 2009-01-20 12:33:47 +01:00
Eric Pouech
583e051044 winedbg: Added scoped symbol picker, and options to handle it. 2008-11-11 11:40:36 +01:00
Eric Pouech
508414313e winedbg: Slightly change the option setting syntax (allows also to get the current state back). 2008-11-11 11:40:26 +01:00
Eric Pouech
4c00325c3b winedbg: Rewrote the symbol picking mechanism so that it can handle several algorithms. 2008-11-11 11:40:17 +01:00
Eric Pouech
cbb84fdb73 winedbg: Added a command to allow loading mismatched modules. 2008-10-20 13:53:08 +02:00
Eric Pouech
5c8ad49158 winedbg: Use Unicode strings for all module references. 2008-10-20 13:52:44 +02:00
Eric Pouech
6986975816 winedbg: Search default debuggee dir for symbol information. 2008-09-04 13:47:48 +02:00
Eric Pouech
f7f9c08fc0 winedbg: Fixed the print_basic command when dealing with long long values. 2008-05-27 12:03:44 +02:00