From patchwork Tue Mar 29 13:29:39 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [12/19] s390x: Adjust GDB stub Date: Tue, 29 Mar 2011 03:29:39 -0000 From: Alexander Graf X-Patchwork-Id: 88779 Message-Id: <1301405386-25738-13-git-send-email-agraf@suse.de> To: qemu-devel@nongnu.org Cc: peter.maydell@linaro.org, aurelien@aurel32.net, rth@twiddle.net We have successfully lazilized cc computation, so we need to manually trigger its calculation when gdb wants to fetch it. We also changed the variable name, so writing it writes into a different field now. Signed-off-by: Alexander Graf --- gdbstub.c | 8 ++++++-- 1 files changed, 6 insertions(+), 2 deletions(-) diff --git a/gdbstub.c b/gdbstub.c index 1e9f931..f8b5d7e 100644 --- a/gdbstub.c +++ b/gdbstub.c @@ -1431,7 +1431,11 @@ static int cpu_gdb_read_register(CPUState *env, uint8_t *mem_buf, int n) /* XXX */ break; case S390_PC_REGNUM: GET_REGL(env->psw.addr); break; - case S390_CC_REGNUM: GET_REG32(env->cc); break; + case S390_CC_REGNUM: + env->cc_op = calc_cc(env, env->cc_op, env->cc_src, env->cc_dst, + env->cc_vr); + GET_REG32(env->cc_op); + break; } return 0; @@ -1457,7 +1461,7 @@ static int cpu_gdb_write_register(CPUState *env, uint8_t *mem_buf, int n) /* XXX */ break; case S390_PC_REGNUM: env->psw.addr = tmpl; break; - case S390_CC_REGNUM: env->cc = tmp32; r=4; break; + case S390_CC_REGNUM: env->cc_op = tmp32; r=4; break; } return r;