[PATCH] winedbg: Handle byte-sized registers in cpu_register() and cpu_register_hex_from().
Henri Verbeet
hverbeet at codeweavers.com
Wed Feb 7 07:21:17 CST 2018
Like for example the recently added floating-point TagWord on AMD64.
Signed-off-by: Henri Verbeet <hverbeet at codeweavers.com>
---
programs/winedbg/gdbproxy.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/programs/winedbg/gdbproxy.c b/programs/winedbg/gdbproxy.c
index 7b9a476..67a95f6 100644
--- a/programs/winedbg/gdbproxy.c
+++ b/programs/winedbg/gdbproxy.c
@@ -517,6 +517,7 @@ static inline DWORD64 cpu_register(CONTEXT* ctx, unsigned idx)
{
switch (cpu_register_map[idx].ctx_length)
{
+ case 1: return *(BYTE*)cpu_register_ptr(ctx, idx);
case 2: return *(WORD*)cpu_register_ptr(ctx, idx);
case 4: return *(DWORD*)cpu_register_ptr(ctx, idx);
case 8: return *(DWORD64*)cpu_register_ptr(ctx, idx);
@@ -545,6 +546,7 @@ static inline void cpu_register_hex_from(CONTEXT* ctx, unsigned idx, const
}
switch (cpu_register_map[idx].ctx_length)
{
+ case 1: *(BYTE*)cpu_register_ptr(ctx, idx) = (BYTE)val; break;
case 2: *(WORD*)cpu_register_ptr(ctx, idx) = (WORD)val; break;
case 4: *(DWORD*)cpu_register_ptr(ctx, idx) = (DWORD)val; break;
case 8: *(DWORD64*)cpu_register_ptr(ctx, idx) = val; break;
--
2.1.4
More information about the wine-devel
mailing list