gdb/riscv: implement cannot_store_register gdbarch method
authormga-sc <mark.goncharov@syntacore.com>
Mon, 8 Aug 2022 13:01:47 +0000 (16:01 +0300)
committerAndrew Burgess <aburgess@redhat.com>
Wed, 10 Aug 2022 15:09:37 +0000 (16:09 +0100)
commitf8053219836de69ceb8ff0e3e311b0585b1187b3
treeead5bce762c456ce876d9ed31ec0a2791960dfe1
parente5f2f7d901ee735224b3a657c193f88c7ad79a07
gdb/riscv: implement cannot_store_register gdbarch method

The x0 (zero) register is read-only on RISC-V.  Implement the
cannot_store_register gdbarch method to tell GDB this.

Without this method GDB will try to write to x0, and relies on the
target to ignore such writes.  If you are using a target that
complains (or throws an error) when writing to x0, this change will
prevent this from happening.

The gdb.arch/riscv-reg-aliases.exp test exercises writing to x0, and
will show the errors when using a suitable target.
gdb/riscv-tdep.c