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

Eric Pouech eric.pouech at gmail.com
Fri Dec 3 09:57:52 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 bac06ec95f4..509d1146cbd 100644
--- a/programs/winedbg/debugger.h
+++ b/programs/winedbg/debugger.h
@@ -122,7 +122,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;
 };
@@ -132,6 +134,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;
@@ -141,6 +145,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