Commit Graph

57 Commits

Author SHA1 Message Date
Eric Pouech 5f9d09f4bd winedbg: Remove fetch_float() method from CPU backends.
As they're all the same.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-10 22:00:17 +01:00
Eric Pouech e656c29e59 winedbg: Remove methods for fetching/storing integers in CPU backends.
All integer code assume CPU of debuggee encode integers:
- little endian
- 2 complement for signed integers.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 20:32:14 +01:00
Eric Pouech 77f84fd4d5 winedbg: Don't pretend that all dbg_internal_var instances will hold DWORD_PTR.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-07 20:31:28 +01:00
Eric Pouech 6cee83a665 winedbg: Protect fetch_float() in CPU backends against buffer overflow.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 22:08:55 +01:00
Eric Pouech 0ed49fabc3 winedbg: Protect against incorrect integer size in be_cpu.fetch_integer() method.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 22:08:55 +01:00
Alexandre Julliard 13125b51cd winedbg: Avoid using the 'long double' type.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 15:18:38 +02:00
Alexandre Julliard b9046a4936 winedbg: Avoid using 'long' types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 14:50:41 +02:00
Paul Gofman de1cb029f6 include: Define _XSAVE_FORMAT structure.
The structure is defined for both x86_64 and i386 (along with
M128A) in (newer) Windows SDK.

Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-20 18:49:38 +02:00
Rémi Bernon fd6ea955d4 winedbg: Remove the use of gdb specific register length.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-03 17:22:19 +02:00
Rémi Bernon 771463adbd winedbg: Add gdb register types to the register maps.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-03 17:22:08 +02:00
Rémi Bernon a650b3d80a winedbg: Add gdb register names to the register maps.
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-03 17:21:51 +02:00
Rémi Bernon 6bfaa76caa winedbg: Add gdb feature names to the register maps.
In order not to repeat the features, registers are expected to be
ordered and grouped by feature. If feature name is set only on the
first register of a new feature.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-03 17:21:28 +02:00
Alexandre Julliard 2a64e751e3 winedbg: Fix incorrect pointer casts.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-14 18:24:46 +01: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 5caaba7e3e winedbg: Implement debugging 32-bit processes on x86_64.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-14 09:29:07 +02:00
Zebediah Figura cf349cea69 winedbg: Add a backend-specific vector for setting a thread's context.
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 2326179312 winedbg: Add a backend-specific vector for retrieving a thread's context.
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 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 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
Zebediah Figura 8314cdc45e winedbg: Add support for printing floating point registers.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 10:32:19 +02:00
André Hentschel 51a4594f96 winedbg: Declare debug channel only when needed (Clang). 2014-11-20 22:32:00 +09:00
Frédéric Delanoy f23cb66db6 winedbg: Use BOOL type where appropriate. 2013-11-14 10:36:30 +01:00
Frédéric Delanoy baf4757c46 winedbg: Amend parameter name in *_fetch_integer. 2013-11-14 10:36:27 +01:00
Frédéric Delanoy fe580c083d winedbg: Use BOOL type where appropriate. 2013-11-11 13:27:28 +01:00
Alexandre Julliard e2761ab075 winedbg: Use an if instead of a switch in case some float types have the same size. 2013-01-08 16:35:30 +01:00
Eric Pouech 18986ee013 winedbg: Also recognize 'rep ret' as a valid return insn for i386 as we did for x86_64. 2012-05-14 12:04:24 +02:00
Eric Pouech 88949b2c59 winedbg: Fix set instruction when sizeof(int) <> sizeof register. 2012-04-05 14:51:33 +02:00
André Hentschel 71fe9c95a4 winedbg: Update a comment. 2011-05-09 20:02:24 +02:00
André Hentschel 423a447fbe winedbg: Fix a typo. 2011-05-03 14:38:06 +02:00
Marcus Meissner d15a04bdce winedbg: Add missing break (Coverity). 2011-03-28 17:10:37 +02:00
Eric Pouech ae9f86042e winedbg: Added CPU method for identifying a jmp insn, and implement it for i386. 2011-01-10 13:03:38 +01:00
Eric Pouech 0d7a6f13a8 winedbg: Describe pointer size in CPU backend structure. 2010-04-13 11:42:18 +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 7d3a9c6ffd winedbg: Implement float fetching for x86-64 debugger. 2010-02-04 13:39:27 +01:00
Eric Pouech a775d41c10 winedbg: Push the correct machine type to StackWalk. 2009-12-22 15:38:01 +01:00
Alexandre Julliard ec73f0b71a winedbg: Fix a number of 64-bit pointer truncation issues. 2009-12-10 15:23:45 +01:00
Eric Pouech 28dd482279 winedbg: 'Int XX' is not a function call, so don't try to handle it as such on i386. 2009-07-13 10:25:51 +02:00
Alexandre Julliard b26ae69fcb winedbg: Fix formatting of the flag register bits. 2009-05-01 18:28:49 +02:00
Francois Gouget d1110dd2e9 winedbg: Remove spaces before '\n's. 2009-03-09 12:05:33 +01:00
Mike Ruprecht c7b204e98a winedbg: Fix typo in a comment. 2009-03-02 12:03:19 +01:00
Francois Gouget 8a18e0e43a Assorted spelling fixes. 2008-04-07 13:36:18 +02:00
Eric Pouech bce64150eb winedbg: Added a way to support differently selector information depending on current target. 2008-01-14 13:38:21 +01:00
Michael Stefaniuc 9a522589fb programs: Remove unreachable break after return/break. Found by Smatch. 2007-07-19 11:57:53 +02:00
Alexandre Julliard 87fe0145c0 winedbg: Added support for indirect call with absolute address. 2007-06-18 17:21:07 +02:00
Alexandre Julliard 6744929428 winedbg: Win64 printf format fixes. 2006-12-20 14:57:08 +01:00
Alexandre Julliard 2bc33389e8 winedbg: Fixed a few data types. 2006-12-20 14:57:08 +01:00
Eric Pouech d6d8682d71 winedbg: Added some black magic to still handle register values on non
current frame for some of the registers we know of (frame pointer,
stack pointer).
2006-12-04 14:02:02 +01:00
Eric Pouech ec087dac4f winedbg: Added a few more cases where we inspect if i386 instructions
are actually calls (based on previous work by Jeff Latimer).
2006-10-23 12:27:00 +02:00
Ge van Geldorp 1d04f826c7 winedbg: Change ADDRESS variables to ADDRESS64 so we can handle 64-bit addresses. 2006-07-26 15:21:42 +02:00
Ge van Geldorp f0279726eb winedbg: Adjust the parameters of the backend read/write routines to
match those of ReadProcessMemory/WriteProcessMemory, since those are
the ones actually used.
2006-07-03 11:37:29 +02:00