gdbstub: Fix access to PPC FPRs
PATCH 1/1 gdbstub: Fix access to PPC FPRs
Obviously, someone forgot to rebase the index before accessing one of the 32 FPRs.
Signed-off-by Jan Kiszka <[email protected]>
---
gdbstub.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
gdbstub.c +2 -2
@@ -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) {
Aurelien Jarno
AppliedQuoted 4 lines · Jan Kiszka
Obviously, someone forgot to rebase the index before accessing one of the 32 FPRs.
Signed-off-by Jan Kiszka <[email protected]>
Thanks, applied.
Quoted 29 lines
gdbstub.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)gdbstub.c +2
-2@@ -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