aboutsummaryrefslogtreecommitdiff
path: root/target/ppc
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2024-03-08 01:19:30 +1000
committerNicholas Piggin <npiggin@gmail.com>2024-03-13 02:47:04 +1000
commit99ea316e2a6180a8318f47a25c4a13d80ecf8ba4 (patch)
treeafd65c2970d855e71e0bdec73ac387c93578adce /target/ppc
parent35ac6831d98e18e2c78c85c93e3a6ca1f1ae3e58 (diff)
downloadqemu-99ea316e2a6180a8318f47a25c4a13d80ecf8ba4.zip
qemu-99ea316e2a6180a8318f47a25c4a13d80ecf8ba4.tar.gz
qemu-99ea316e2a6180a8318f47a25c4a13d80ecf8ba4.tar.bz2
target/ppc: Fix GDB SPR regnum indexing
Fix an off by one bug. Fixes: 1b53948ff8f70 ("target/ppc: Use GDBFeature for dynamic XML") Reviewed-by: Akihiko Odaki <akihiko.odaki@daynix.com> Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Diffstat (limited to 'target/ppc')
-rw-r--r--target/ppc/gdbstub.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/target/ppc/gdbstub.c b/target/ppc/gdbstub.c
index 122ea9d..80a2e79 100644
--- a/target/ppc/gdbstub.c
+++ b/target/ppc/gdbstub.c
@@ -324,6 +324,9 @@ static void gdb_gen_spr_feature(CPUState *cs)
continue;
}
+ gdb_feature_builder_append_reg(&builder, g_ascii_strdown(spr->name, -1),
+ TARGET_LONG_BITS, num_regs,
+ "int", "spr");
/*
* GDB identifies registers based on the order they are
* presented in the XML. These ids will not match QEMU's
@@ -334,10 +337,6 @@ static void gdb_gen_spr_feature(CPUState *cs)
*/
spr->gdb_id = num_regs;
num_regs++;
-
- gdb_feature_builder_append_reg(&builder, g_ascii_strdown(spr->name, -1),
- TARGET_LONG_BITS, num_regs,
- "int", "spr");
}
gdb_feature_builder_end(&builder);