From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KWeDG-0002gL-Ok for qemu-devel@nongnu.org; Fri, 22 Aug 2008 17:30:30 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KWeDG-0002g7-7V for qemu-devel@nongnu.org; Fri, 22 Aug 2008 17:30:30 -0400 Received: from [199.232.76.173] (port=46674 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KWeDG-0002g3-2K for qemu-devel@nongnu.org; Fri, 22 Aug 2008 17:30:30 -0400 Received: from savannah.gnu.org ([199.232.41.3]:50503 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 1KWeDG-0001aH-BE for qemu-devel@nongnu.org; Fri, 22 Aug 2008 17:30:30 -0400 Received: from cvs.savannah.gnu.org ([199.232.41.69]) by sv.gnu.org with esmtp (Exim 4.63) (envelope-from ) id 1KWeDF-0000Ck-Cs for qemu-devel@nongnu.org; Fri, 22 Aug 2008 21:30:29 +0000 Received: from aurel32 by cvs.savannah.gnu.org with local (Exim 4.63) (envelope-from ) id 1KWeDF-0000Cg-0w for qemu-devel@nongnu.org; Fri, 22 Aug 2008 21:30:29 +0000 MIME-Version: 1.0 Errors-To: aurel32 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From: Aurelien Jarno Message-Id: Date: Fri, 22 Aug 2008 21:30:29 +0000 Subject: [Qemu-devel] [5074] sh4: fix tas.b @Rn instruction 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: 5074 http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=5074 Author: aurel32 Date: 2008-08-22 21:30:28 +0000 (Fri, 22 Aug 2008) Log Message: ----------- sh4: fix tas.b @Rn instruction (Shin-ichiro KAWASAKI, based on a patch from Andrzej Zaborowski) Modified Paths: -------------- trunk/target-sh4/op.c trunk/target-sh4/translate.c Modified: trunk/target-sh4/op.c =================================================================== --- trunk/target-sh4/op.c 2008-08-22 21:25:00 UTC (rev 5073) +++ trunk/target-sh4/op.c 2008-08-22 21:30:28 UTC (rev 5074) @@ -592,13 +592,6 @@ RETURN(); } -void OPPROTO op_tasb_rN(void) -{ - cond_t((env->gregs[PARAM1] & 0xff) == 0); - *(int8_t *) &env->gregs[PARAM1] |= 0x80; - RETURN(); -} - void OPPROTO op_movl_T0_rN(void) { env->gregs[PARAM1] = T0; Modified: trunk/target-sh4/translate.c =================================================================== --- trunk/target-sh4/translate.c 2008-08-22 21:25:00 UTC (rev 5073) +++ trunk/target-sh4/translate.c 2008-08-22 21:30:28 UTC (rev 5074) @@ -1100,7 +1100,12 @@ gen_op_shlr16_Rn(REG(B11_8)); return; case 0x401b: /* tas.b @Rn */ - gen_op_tasb_rN(REG(B11_8)); + gen_op_movl_rN_T0(REG(B11_8)); + gen_op_movl_T0_T1(); + gen_op_ldub_T0_T0(ctx); + gen_op_cmp_eq_imm_T0(0); + gen_op_or_imm_T0(0x80); + gen_op_stb_T0_T1(ctx); return; case 0xf00d: /* fsts FPUL,FRn - FPSCR: Nothing */ gen_op_movl_fpul_FT0();