target/xtensa: fix gdbstub register counts

This fixes communication with gdb in the presence of type-5 (TIE state
mapped on user registers) and type-7 (special case of masked registers)
registers in the xtensa core config.

Cc: qemu-stable@nongnu.org
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
This commit is contained in:
Max Filippov 2018-08-16 10:33:04 -07:00
parent 0abaa41d93
commit 2becc8fd7e

View File

@ -100,7 +100,9 @@ void xtensa_finalize_config(XtensaConfig *config)
unsigned n_core_regs = 0;
for (i = 0; config->gdb_regmap.reg[i].targno >= 0; ++i) {
if (config->gdb_regmap.reg[i].type != 6) {
if (config->gdb_regmap.reg[i].type != 5 &&
config->gdb_regmap.reg[i].type != 6 &&
config->gdb_regmap.reg[i].type != 7) {
++n_regs;
if ((config->gdb_regmap.reg[i].flags & 0x1) == 0) {
++n_core_regs;