From patchwork Mon Apr 22 03:33:20 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: liguang X-Patchwork-Id: 238300 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id CC49E2C010E for ; Mon, 22 Apr 2013 13:39:20 +1000 (EST) Received: from localhost ([::1]:58154 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UU7b5-0005Mv-2E for incoming@patchwork.ozlabs.org; Sun, 21 Apr 2013 23:39:19 -0400 Received: from eggs.gnu.org ([208.118.235.92]:39373) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UU7XO-0000ok-Fe for qemu-devel@nongnu.org; Sun, 21 Apr 2013 23:35:33 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UU7XM-0006Vn-Gq for qemu-devel@nongnu.org; Sun, 21 Apr 2013 23:35:30 -0400 Received: from [222.73.24.84] (port=63377 helo=song.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UU7XL-0006VN-T6 for qemu-devel@nongnu.org; Sun, 21 Apr 2013 23:35:28 -0400 X-IronPort-AV: E=Sophos;i="4.87,523,1363104000"; d="scan'208";a="7109029" Received: from unknown (HELO tang.cn.fujitsu.com) ([10.167.250.3]) by song.cn.fujitsu.com with ESMTP; 22 Apr 2013 11:32:44 +0800 Received: from fnstmail02.fnst.cn.fujitsu.com (tang.cn.fujitsu.com [127.0.0.1]) by tang.cn.fujitsu.com (8.14.3/8.13.1) with ESMTP id r3M3ZOhY026158; Mon, 22 Apr 2013 11:35:25 +0800 Received: from liguang.fnst.cn.fujitsu.com ([10.167.233.147]) by fnstmail02.fnst.cn.fujitsu.com (Lotus Domino Release 8.5.3) with ESMTP id 2013042211335588-715372 ; Mon, 22 Apr 2013 11:33:55 +0800 From: liguang To: qemu-devel@nongnu.org Date: Mon, 22 Apr 2013 11:33:20 +0800 Message-Id: <1366601610-15429-3-git-send-email-lig.fnst@cn.fujitsu.com> X-Mailer: git-send-email 1.7.2.5 In-Reply-To: <1366601610-15429-1-git-send-email-lig.fnst@cn.fujitsu.com> References: <1366601610-15429-1-git-send-email-lig.fnst@cn.fujitsu.com> X-MIMETrack: Itemize by SMTP Server on mailserver/fnst(Release 8.5.3|September 15, 2011) at 2013/04/22 11:33:55, Serialize by Router on mailserver/fnst(Release 8.5.3|September 15, 2011) at 2013/04/22 11:33:56, Serialize complete at 2013/04/22 11:33:56 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 222.73.24.84 Cc: peter.maydell@linaro.org, ehabkost@redhat.com, blauwirbel@gmail.com, avi@redhat.com, imammedo@redhat.com, pbonzini@redhat.com, afaerber@suse.de, liguang , rth@twiddle.net Subject: [Qemu-devel] [PATCH 02/12] target-i386/helper: remove EBX macro X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Signed-off-by: liguang --- target-i386/cpu.h | 2 -- target-i386/mem_helper.c | 4 ++-- target-i386/misc_helper.c | 2 +- target-i386/seg_helper.c | 6 +++--- target-i386/smm_helper.c | 8 ++++---- 5 files changed, 10 insertions(+), 12 deletions(-) diff --git a/target-i386/cpu.h b/target-i386/cpu.h index b75146a..5f1018b 100644 --- a/target-i386/cpu.h +++ b/target-i386/cpu.h @@ -1111,8 +1111,6 @@ static inline int cpu_mmu_index (CPUX86State *env) #define ECX (env->regs[R_ECX]) #undef EDX #define EDX (env->regs[R_EDX]) -#undef EBX -#define EBX (env->regs[R_EBX]) #undef ESP #define ESP (env->regs[R_ESP]) #undef EBP diff --git a/target-i386/mem_helper.c b/target-i386/mem_helper.c index f0f5aec..6370fb5 100644 --- a/target-i386/mem_helper.c +++ b/target-i386/mem_helper.c @@ -46,7 +46,7 @@ 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)env->regs[R_EAX])) { - cpu_stq_data(env, a0, ((uint64_t)ECX << 32) | (uint32_t)EBX); + cpu_stq_data(env, a0, ((uint64_t)ECX << 32) | (uint32_t)env->regs[R_EBX]); eflags |= CC_Z; } else { /* always do the store */ @@ -71,7 +71,7 @@ void helper_cmpxchg16b(CPUX86State *env, target_ulong a0) d0 = cpu_ldq_data(env, a0); d1 = cpu_ldq_data(env, a0 + 8); if (d0 == env->regs[R_EAX] && d1 == EDX) { - cpu_stq_data(env, a0, EBX); + cpu_stq_data(env, a0, env->regs[R_EBX]); cpu_stq_data(env, a0 + 8, ECX); eflags |= CC_Z; } else { diff --git a/target-i386/misc_helper.c b/target-i386/misc_helper.c index 189b2fa..5fdb77d 100644 --- a/target-i386/misc_helper.c +++ b/target-i386/misc_helper.c @@ -124,7 +124,7 @@ void helper_cpuid(CPUX86State *env) cpu_x86_cpuid(env, (uint32_t)env->regs[R_EAX], (uint32_t)ECX, &eax, &ebx, &ecx, &edx); env->regs[R_EAX] = eax; - EBX = ebx; + env->regs[R_EBX] = ebx; ECX = ecx; EDX = edx; } diff --git a/target-i386/seg_helper.c b/target-i386/seg_helper.c index 719b7bb..b3c087f 100644 --- a/target-i386/seg_helper.c +++ b/target-i386/seg_helper.c @@ -327,7 +327,7 @@ static void switch_tss(CPUX86State *env, int tss_selector, cpu_stl_kernel(env, env->tr.base + (0x28 + 0 * 4), env->regs[R_EAX]); cpu_stl_kernel(env, env->tr.base + (0x28 + 1 * 4), ECX); cpu_stl_kernel(env, env->tr.base + (0x28 + 2 * 4), EDX); - cpu_stl_kernel(env, env->tr.base + (0x28 + 3 * 4), EBX); + cpu_stl_kernel(env, env->tr.base + (0x28 + 3 * 4), env->regs[R_EBX]); cpu_stl_kernel(env, env->tr.base + (0x28 + 4 * 4), ESP); cpu_stl_kernel(env, env->tr.base + (0x28 + 5 * 4), EBP); cpu_stl_kernel(env, env->tr.base + (0x28 + 6 * 4), ESI); @@ -343,7 +343,7 @@ static void switch_tss(CPUX86State *env, int tss_selector, cpu_stw_kernel(env, env->tr.base + (0x12 + 0 * 2), env->regs[R_EAX]); cpu_stw_kernel(env, env->tr.base + (0x12 + 1 * 2), ECX); cpu_stw_kernel(env, env->tr.base + (0x12 + 2 * 2), EDX); - cpu_stw_kernel(env, env->tr.base + (0x12 + 3 * 2), EBX); + cpu_stw_kernel(env, env->tr.base + (0x12 + 3 * 2), env->regs[R_EBX]); cpu_stw_kernel(env, env->tr.base + (0x12 + 4 * 2), ESP); cpu_stw_kernel(env, env->tr.base + (0x12 + 5 * 2), EBP); cpu_stw_kernel(env, env->tr.base + (0x12 + 6 * 2), ESI); @@ -399,7 +399,7 @@ static void switch_tss(CPUX86State *env, int tss_selector, env->regs[R_EAX] = new_regs[0]; ECX = new_regs[1]; EDX = new_regs[2]; - EBX = new_regs[3]; + env->regs[R_EBX] = new_regs[3]; ESP = new_regs[4]; EBP = new_regs[5]; ESI = new_regs[6]; diff --git a/target-i386/smm_helper.c b/target-i386/smm_helper.c index 1ea6107..28c78a5 100644 --- a/target-i386/smm_helper.c +++ b/target-i386/smm_helper.c @@ -85,7 +85,7 @@ void do_smm_enter(CPUX86State *env) stq_phys(sm_state + 0x7ff8, env->regs[R_EAX]); stq_phys(sm_state + 0x7ff0, ECX); stq_phys(sm_state + 0x7fe8, EDX); - stq_phys(sm_state + 0x7fe0, EBX); + stq_phys(sm_state + 0x7fe0, env->regs[R_EBX]); stq_phys(sm_state + 0x7fd8, ESP); stq_phys(sm_state + 0x7fd0, EBP); stq_phys(sm_state + 0x7fc8, ESI); @@ -113,7 +113,7 @@ void do_smm_enter(CPUX86State *env) stl_phys(sm_state + 0x7fe8, ESI); stl_phys(sm_state + 0x7fe4, EBP); stl_phys(sm_state + 0x7fe0, ESP); - stl_phys(sm_state + 0x7fdc, EBX); + stl_phys(sm_state + 0x7fdc, env->regs[R_EBX]); stl_phys(sm_state + 0x7fd8, EDX); stl_phys(sm_state + 0x7fd4, ECX); stl_phys(sm_state + 0x7fd0, env->regs[R_EAX]); @@ -216,7 +216,7 @@ void helper_rsm(CPUX86State *env) env->regs[R_EAX] = ldq_phys(sm_state + 0x7ff8); ECX = ldq_phys(sm_state + 0x7ff0); EDX = ldq_phys(sm_state + 0x7fe8); - EBX = ldq_phys(sm_state + 0x7fe0); + env->regs[R_EBX] = ldq_phys(sm_state + 0x7fe0); ESP = ldq_phys(sm_state + 0x7fd8); EBP = ldq_phys(sm_state + 0x7fd0); ESI = ldq_phys(sm_state + 0x7fc8); @@ -248,7 +248,7 @@ void helper_rsm(CPUX86State *env) ESI = ldl_phys(sm_state + 0x7fe8); EBP = ldl_phys(sm_state + 0x7fe4); ESP = ldl_phys(sm_state + 0x7fe0); - EBX = ldl_phys(sm_state + 0x7fdc); + env->regs[R_EBX] = ldl_phys(sm_state + 0x7fdc); EDX = ldl_phys(sm_state + 0x7fd8); ECX = ldl_phys(sm_state + 0x7fd4); env->regs[R_EAX] = ldl_phys(sm_state + 0x7fd0);