diff options
author | Alexander Graf <agraf@suse.de> | 2011-03-23 10:58:07 +0100 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2011-05-20 17:35:12 +0200 |
commit | 59467bacfae8113b03123e651d831682ea73c586 (patch) | |
tree | c00b4fe5012fabb75d987ab48f8ef6fdceea5ed3 /gdbstub.c | |
parent | e023e832d0ac7d863658074cb39be2b78a29ee64 (diff) |
s390x: Adjust GDB stub
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 <agraf@suse.de>
Diffstat (limited to 'gdbstub.c')
-rw-r--r-- | gdbstub.c | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -1436,7 +1436,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; @@ -1462,7 +1466,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; |