[binutils-gdb] gdbserver: return tracked register status in regcache_raw_read_unsigned

Tankut Baris Aktemur aktemur@sourceware.org
Tue Dec 17 08:16:10 GMT 2024


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=975318ed49fd5725cf10f6c52fe14605e5cbea6a

commit 975318ed49fd5725cf10f6c52fe14605e5cbea6a
Author: Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
Date:   Tue Dec 17 08:48:04 2024 +0100

    gdbserver: return tracked register status in regcache_raw_read_unsigned
    
    In regcache_raw_read_unsigned, we unconditionally return REG_VALID as
    the register status.  This does not seem right, since the register may
    in fact be in another state, such as REG_UNAVAILABLE.  Return the
    tracked status.
    
    Approved-By: Simon Marchi <simon.marchi@efficios.com>

Diff:
---
 gdbserver/regcache.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gdbserver/regcache.cc b/gdbserver/regcache.cc
index dad0907291b..5b064ae04d1 100644
--- a/gdbserver/regcache.cc
+++ b/gdbserver/regcache.cc
@@ -474,7 +474,7 @@ regcache_raw_read_unsigned (reg_buffer_common *reg_buf, int regnum,
   *val = 0;
   collect_register (regcache, regnum, val);
 
-  return REG_VALID;
+  return regcache->get_register_status (regnum);
 }
 
 #ifndef IN_PROCESS_AGENT


More information about the Gdb-cvs mailing list