Skip to contentSkip to conversation

gdbstub: Fix access to PPC FPRs

PATCH Applied Jan Kiszka 2 participants 2 messages Nov 28, 2008 – Nov 30, 2008

lore
Share & tools
lore

Jan Kiszka

author
#0 lore raw

PATCH 1/1 gdbstub: Fix access to PPC FPRs

Obviously, someone forgot to rebase the index before accessing one of the 32 FPRs.

---

 gdbstub.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
gdbstub.c +2 -2
index b522a89..452b7d0 100644
@@ -428,7 +428,7 @@ static int cpu_gdb_read_register(CPUState *env, uint8_t *mem_buf, int n)
         GET_REGL(env->gpr[n]);
     } else if (n < 64) {
         /* fprs */
-        stfq_p(mem_buf, env->fpr[n]);
+        stfq_p(mem_buf, env->fpr[n-32]);
         return 8;
     } else {
         switch (n) {
@@ -459,7 +459,7 @@ static int cpu_gdb_write_register(CPUState *env, uint8_t *mem_buf, int n)
         return sizeof(target_ulong);
     } else if (n < 64) {
         /* fprs */
-        env->fpr[n] = ldfq_p(mem_buf);
+        env->fpr[n-32] = ldfq_p(mem_buf);
         return 8;
     } else {
         switch (n) {
#1 lore raw
Quoted 4 lines · Jan Kiszka

Obviously, someone forgot to rebase the index before accessing one of the 32 FPRs.

Thanks, applied.

Quoted 29 lines
 gdbstub.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
gdbstub.c +2 -2
index b522a89..452b7d0 100644
@@ -428,7 +428,7 @@ static int cpu_gdb_read_register(CPUState *env, uint8_t *mem_buf, int n)
         GET_REGL(env->gpr[n]);
     } else if (n < 64) {
         /* fprs */
-        stfq_p(mem_buf, env->fpr[n]);
+        stfq_p(mem_buf, env->fpr[n-32]);
         return 8;
     } else {
         switch (n) {
@@ -459,7 +459,7 @@ static int cpu_gdb_write_register(CPUState *env, uint8_t *mem_buf, int n)
         return sizeof(target_ulong);
     } else if (n < 64) {
         /* fprs */
-        env->fpr[n] = ldfq_p(mem_buf);
+        env->fpr[n-32] = ldfq_p(mem_buf);
         return 8;
     } else {
         switch (n) {
Signature · 4 lines
  .''`.  Aurelien Jarno	            | GPG: 1024D/F1BCDB73
 : :' :  Debian developer           | Electrical Engineer
 `. `'   [email protected]         | [email protected]
   `-    people.debian.org/~aurel32 | www.aurel32.net