From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JkrPP-0005fb-BR for qemu-devel@nongnu.org; Sat, 12 Apr 2008 21:53:31 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JkrPO-0005fP-Rv for qemu-devel@nongnu.org; Sat, 12 Apr 2008 21:53:30 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JkrPO-0005fM-P2 for qemu-devel@nongnu.org; Sat, 12 Apr 2008 21:53:30 -0400 Received: from savannah.gnu.org ([199.232.41.3] helo=sv.gnu.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JkrPO-0003wr-9W for qemu-devel@nongnu.org; Sat, 12 Apr 2008 21:53:30 -0400 Received: from cvs.savannah.gnu.org ([199.232.41.69]) by sv.gnu.org with esmtp (Exim 4.63) (envelope-from ) id 1JkrPN-0002u3-QS for qemu-devel@nongnu.org; Sun, 13 Apr 2008 01:53:29 +0000 Received: from balrog by cvs.savannah.gnu.org with local (Exim 4.63) (envelope-from ) id 1JkrPM-0002tw-WC for qemu-devel@nongnu.org; Sun, 13 Apr 2008 01:53:29 +0000 MIME-Version: 1.0 Errors-To: balrog Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From: Andrzej Zaborowski Message-Id: Date: Sun, 13 Apr 2008 01:53:29 +0000 Subject: [Qemu-devel] [4202] Fix ARM and Thumb ldlex/stlex. Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Revision: 4202 http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=4202 Author: balrog Date: 2008-04-13 01:53:27 +0000 (Sun, 13 Apr 2008) Log Message: ----------- Fix ARM and Thumb ldlex/stlex. Modified Paths: -------------- trunk/target-arm/translate.c Modified: trunk/target-arm/translate.c =================================================================== --- trunk/target-arm/translate.c 2008-04-13 00:57:49 UTC (rev 4201) +++ trunk/target-arm/translate.c 2008-04-13 01:53:27 UTC (rev 4202) @@ -6241,6 +6241,7 @@ if (insn & (1 << 23)) { /* load/store exclusive */ gen_movl_T1_reg(s, rn); + addr = cpu_T[1]; if (insn & (1 << 20)) { gen_helper_mark_exclusive(cpu_env, cpu_T[1]); tmp = gen_ld32(addr, IS_USER(s)); @@ -6991,6 +6992,7 @@ } else if ((insn & (1 << 23)) == 0) { /* Load/store exclusive word. */ gen_movl_T1_reg(s, rn); + addr = cpu_T[1]; if (insn & (1 << 20)) { gen_helper_mark_exclusive(cpu_env, cpu_T[1]); tmp = gen_ld32(addr, IS_USER(s));