[PATCH 09/17] programs/winedbg: add bitfield capability to dbg_lvalue

Eric Pouech eric.pouech at gmail.com
Tue Dec 7 08:57:10 CST 2021


Signed-off-by: Eric Pouech <eric.pouech at gmail.com>

---
 programs/winedbg/debugger.h |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/programs/winedbg/debugger.h b/programs/winedbg/debugger.h
index bf03f917f4e..e7e01c117fe 100644
--- a/programs/winedbg/debugger.h
+++ b/programs/winedbg/debugger.h
@@ -117,7 +117,9 @@ struct dbg_type
 
 struct dbg_lvalue       /* structure to hold left-values... */
 {
-    unsigned            where : 1; /* 1 for target (debuggee address space), 0 for host (debugger address space) */
+    unsigned            where : 1, /* 1 for target (debuggee address space), 0 for host (debugger address space) */
+                        bitstart : 8, /* in fact, 7 should be sufficient for underlying 128bit integers */
+                        bitlen;
     ADDRESS64           addr;
     struct dbg_type     type;
 };
@@ -127,6 +129,8 @@ static inline BOOL lvalue_in_debuggee(const struct dbg_lvalue* lv) {return lv->w
 static inline void init_lvalue(struct dbg_lvalue* lv, BOOL in_debuggee, void* addr)
 {
     lv->where = !!in_debuggee;
+    lv->bitstart = 0;
+    lv->bitlen = 0;
     lv->addr.Mode = AddrModeFlat;
     lv->addr.Offset = (DWORD_PTR)addr;
     lv->type.module = 0;
@@ -136,6 +140,8 @@ static inline void init_lvalue(struct dbg_lvalue* lv, BOOL in_debuggee, void* ad
 static inline void init_lvalue_in_debugger(struct dbg_lvalue* lv, enum dbg_internal_types it, void* addr)
 {
     lv->where = 0;
+    lv->bitstart = 0;
+    lv->bitlen = 0;
     lv->addr.Mode = AddrModeFlat;
     lv->addr.Offset = (DWORD_PTR)addr;
     lv->type.module = 0;




More information about the wine-devel mailing list