aboutsummaryrefslogtreecommitdiff
path: root/backends/hostmem.c
diff options
context:
space:
mode:
authorBin Meng <bmeng@tinylab.org>2023-02-28 18:40:27 +0800
committerPalmer Dabbelt <palmer@rivosinc.com>2023-03-01 16:40:19 -0800
commita1f0083c6e3eee2d80e712e8a03abd70b25df097 (patch)
tree6060c4e0f8280961d829acd4aa0d8625108ad38c /backends/hostmem.c
parent04733fb0916f4b2b240da42342374b05d5dfc389 (diff)
downloadqemu-a1f0083c6e3eee2d80e712e8a03abd70b25df097.zip
qemu-a1f0083c6e3eee2d80e712e8a03abd70b25df097.tar.gz
qemu-a1f0083c6e3eee2d80e712e8a03abd70b25df097.tar.bz2
target/riscv: gdbstub: Turn on debugger mode before calling CSR predicate()
Since commit 94452ac4cf26 ("target/riscv: remove fflags, frm, and fcsr from riscv-*-fpu.xml") the 3 FPU CSRs are removed from the XML target decription. The original intent of that commit was based on the assumption that the 3 FPU CSRs will show up in the riscv-csr.xml so the ones in riscv-*-fpu.xml are redundant. But unforuantely that is not true. As the FPU CSR predicate() has a run-time check on MSTATUS.FS, at the time when CSR XML is generated MSTATUS.FS is unset, hence no FPU CSRs will be reported. The FPU CSR predicate() already considered such a case of being accessed by a debugger. All we need to do is to turn on debugger mode before calling predicate(). Signed-off-by: Bin Meng <bmeng@tinylab.org> Reviewed-by: Weiwei Li <liweiwei@iscas.ac.cn> Reviewed-by: LIU Zhiwei <zhiwei_liu@linux.alibaba.com> Message-ID: <20230228104035.1879882-12-bmeng@tinylab.org> Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Diffstat (limited to 'backends/hostmem.c')
0 files changed, 0 insertions, 0 deletions