aboutsummaryrefslogtreecommitdiff
path: root/target-i386/mem_helper.c
diff options
context:
space:
mode:
authorliguang <lig.fnst@cn.fujitsu.com>2013-05-28 16:20:59 +0800
committerBlue Swirl <blauwirbel@gmail.com>2013-06-15 17:48:38 +0000
commit4b34e3ad83588602834c05c0d59a0d2973e9f48c (patch)
treeb0ef2c3786a17fd2b1c44d0a3576faa140749fb0 /target-i386/mem_helper.c
parent371a775dc18ece3ff7d77328d1ee28cb2d473706 (diff)
target-i386/helper: remove EAX macro
Signed-off-by: liguang <lig.fnst@cn.fujitsu.com> Reviewed-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Diffstat (limited to 'target-i386/mem_helper.c')
-rw-r--r--target-i386/mem_helper.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/target-i386/mem_helper.c b/target-i386/mem_helper.c
index 6cf9ba076e..f0f5aec283 100644
--- a/target-i386/mem_helper.c
+++ b/target-i386/mem_helper.c
@@ -45,14 +45,14 @@ void helper_cmpxchg8b(CPUX86State *env, target_ulong a0)
eflags = cpu_cc_compute_all(env, CC_OP);
d = cpu_ldq_data(env, a0);
- if (d == (((uint64_t)EDX << 32) | (uint32_t)EAX)) {
+ if (d == (((uint64_t)EDX << 32) | (uint32_t)env->regs[R_EAX])) {
cpu_stq_data(env, a0, ((uint64_t)ECX << 32) | (uint32_t)EBX);
eflags |= CC_Z;
} else {
/* always do the store */
cpu_stq_data(env, a0, d);
EDX = (uint32_t)(d >> 32);
- EAX = (uint32_t)d;
+ env->regs[R_EAX] = (uint32_t)d;
eflags &= ~CC_Z;
}
CC_SRC = eflags;
@@ -70,7 +70,7 @@ void helper_cmpxchg16b(CPUX86State *env, target_ulong a0)
eflags = cpu_cc_compute_all(env, CC_OP);
d0 = cpu_ldq_data(env, a0);
d1 = cpu_ldq_data(env, a0 + 8);
- if (d0 == EAX && d1 == EDX) {
+ if (d0 == env->regs[R_EAX] && d1 == EDX) {
cpu_stq_data(env, a0, EBX);
cpu_stq_data(env, a0 + 8, ECX);
eflags |= CC_Z;
@@ -79,7 +79,7 @@ void helper_cmpxchg16b(CPUX86State *env, target_ulong a0)
cpu_stq_data(env, a0, d0);
cpu_stq_data(env, a0 + 8, d1);
EDX = d1;
- EAX = d0;
+ env->regs[R_EAX] = d0;
eflags &= ~CC_Z;
}
CC_SRC = eflags;