diff options
author | Andrew Burgess <andrew.burgess@embecosm.com> | 2018-10-25 12:03:31 +0100 |
---|---|---|
committer | Andrew Burgess <andrew.burgess@embecosm.com> | 2018-10-25 12:03:31 +0100 |
commit | ee67fd7f3f6ca78eede2862e309c0bcf266bbd7e (patch) | |
tree | 027144f4fdf6c8411a08e8c786666881ae0b0c61 | |
parent | 0a640d719684f25bdb88ae60148c6978e6131701 (diff) | |
download | binutils-ee67fd7f3f6ca78eede2862e309c0bcf266bbd7e.zip binutils-ee67fd7f3f6ca78eede2862e309c0bcf266bbd7e.tar.gz binutils-ee67fd7f3f6ca78eede2862e309c0bcf266bbd7e.tar.bz2 |
gdb/riscv: Use correct regnum in riscv_linux_nat_target::fetch_registers
In riscv_linux_nat_target::fetch_registers, if we are asked to supply
all registers (regnum parameter is -1), then we currently end up
calling regcache::raw_supply_zeroed with the regnum -1, which is
invalid. Instead we should be passing the regnum of the specific
register we wish to supply zeroed, in this case RISCV_CSR_MISA_REGNUM.
I removed the extra { ... } block in line with the coding standard
while editing this area.
gdb/ChangeLog:
* riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
Pass correct regnum to raw_supply_zeroed.
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/riscv-linux-nat.c | 6 |
2 files changed, 7 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ba3bf66..14de366 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2018-10-25 Andrew Burgess <andrew.burgess@embecosm.com> + + * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers): + Pass correct regnum to raw_supply_zeroed. + 2018-10-23 Hafiz Abid Qadeer <abidh@codesourcery.com> * regcache.c (cooked_read_test): Add CSKY to the list of diff --git a/gdb/riscv-linux-nat.c b/gdb/riscv-linux-nat.c index 7dbfe65..c09121d 100644 --- a/gdb/riscv-linux-nat.c +++ b/gdb/riscv-linux-nat.c @@ -201,10 +201,8 @@ riscv_linux_nat_target::fetch_registers (struct regcache *regcache, int regnum) if ((regnum == RISCV_CSR_MISA_REGNUM) || (regnum == -1)) - { - /* TODO: Need to add a ptrace call for this. */ - regcache->raw_supply_zeroed (regnum); - } + /* TODO: Need to add a ptrace call for this. */ + regcache->raw_supply_zeroed (RISCV_CSR_MISA_REGNUM); /* Access to other CSRs has potential security issues, don't support them for now. */ |