Improve handling of gdb's single-step / continue arguments.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3075 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
db8d7dd17b
commit
8fac5803a9
10
gdbstub.c
10
gdbstub.c
|
@ -773,7 +773,9 @@ static int gdb_handle_packet(GDBState *s, CPUState *env, const char *line_buf)
|
||||||
#elif defined (TARGET_ARM)
|
#elif defined (TARGET_ARM)
|
||||||
env->regs[15] = addr;
|
env->regs[15] = addr;
|
||||||
#elif defined (TARGET_SH4)
|
#elif defined (TARGET_SH4)
|
||||||
env->pc = addr;
|
env->pc = addr;
|
||||||
|
#elif defined (TARGET_MIPS)
|
||||||
|
env->PC = addr;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
#ifdef CONFIG_USER_ONLY
|
#ifdef CONFIG_USER_ONLY
|
||||||
|
@ -784,7 +786,7 @@ static int gdb_handle_packet(GDBState *s, CPUState *env, const char *line_buf)
|
||||||
return RS_IDLE;
|
return RS_IDLE;
|
||||||
case 's':
|
case 's':
|
||||||
if (*p != '\0') {
|
if (*p != '\0') {
|
||||||
addr = strtoul(p, (char **)&p, 16);
|
addr = strtoull(p, (char **)&p, 16);
|
||||||
#if defined(TARGET_I386)
|
#if defined(TARGET_I386)
|
||||||
env->eip = addr;
|
env->eip = addr;
|
||||||
#elif defined (TARGET_PPC)
|
#elif defined (TARGET_PPC)
|
||||||
|
@ -795,7 +797,9 @@ static int gdb_handle_packet(GDBState *s, CPUState *env, const char *line_buf)
|
||||||
#elif defined (TARGET_ARM)
|
#elif defined (TARGET_ARM)
|
||||||
env->regs[15] = addr;
|
env->regs[15] = addr;
|
||||||
#elif defined (TARGET_SH4)
|
#elif defined (TARGET_SH4)
|
||||||
env->pc = addr;
|
env->pc = addr;
|
||||||
|
#elif defined (TARGET_MIPS)
|
||||||
|
env->PC = addr;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
cpu_single_step(env, 1);
|
cpu_single_step(env, 1);
|
||||||
|
|
Reference in New Issue