Commit d7b6967af41493e2072a0c73016a61fc8e5b8bc5
1 parent
b2cd75b0
CRIS: Handle GDB writes to pregs.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5461 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
6 additions
and
2 deletions
gdbstub.c
@@ -977,11 +977,15 @@ static int cpu_gdb_write_register(CPUState *env, uint8_t *mem_buf, int n) | @@ -977,11 +977,15 @@ static int cpu_gdb_write_register(CPUState *env, uint8_t *mem_buf, int n) | ||
977 | env->regs[n] = tmp; | 977 | env->regs[n] = tmp; |
978 | } | 978 | } |
979 | 979 | ||
980 | - /* FIXME: Should other regs be writable? */ | 980 | + if (n >= 21 && n < 32) { |
981 | + env->pregs[n - 16] = tmp; | ||
982 | + } | ||
983 | + | ||
984 | + /* FIXME: Should support function regs be writable? */ | ||
981 | switch (n) { | 985 | switch (n) { |
982 | case 16: return 1; | 986 | case 16: return 1; |
983 | case 17: return 1; | 987 | case 17: return 1; |
984 | - case 18: return 4; | 988 | + case 18: env->pregs[PR_PID] = tmp; break; |
985 | case 19: return 1; | 989 | case 19: return 1; |
986 | case 20: return 2; | 990 | case 20: return 2; |
987 | case 32: env->pc = tmp; break; | 991 | case 32: env->pc = tmp; break; |