CRIS: Handle GDB writes to pregs.
authoredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 11 Oct 2008 19:32:21 +0000 (19:32 +0000)
committeredgar_igl <edgar_igl@c046a42c-6fe2-441c-8c8c-71466251a162>
Sat, 11 Oct 2008 19:32:21 +0000 (19:32 +0000)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5461 c046a42c-6fe2-441c-8c8c-71466251a162

gdbstub.c

index 0ff6325..15a0af2 100644 (file)
--- a/gdbstub.c
+++ b/gdbstub.c
@@ -977,11 +977,15 @@ static int cpu_gdb_write_register(CPUState *env, uint8_t *mem_buf, int n)
        env->regs[n] = tmp;
     }
 
-    /* FIXME: Should other regs be writable?  */
+    if (n >= 21 && n < 32) {
+       env->pregs[n - 16] = tmp;
+    }
+
+    /* FIXME: Should support function regs be writable?  */
     switch (n) {
     case 16: return 1;
     case 17: return 1;
-    case 18: return 4;
+    case 18: env->pregs[PR_PID] = tmp; break;
     case 19: return 1;
     case 20: return 2;
     case 32: env->pc = tmp; break;