From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KdobW-0001N9-DH for qemu-devel@nongnu.org; Thu, 11 Sep 2008 12:01:10 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KdobU-0001Li-Ec for qemu-devel@nongnu.org; Thu, 11 Sep 2008 12:01:08 -0400 Received: from [199.232.76.173] (port=59843 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KdobR-0001LP-OW for qemu-devel@nongnu.org; Thu, 11 Sep 2008 12:01:07 -0400 Received: from savannah.gnu.org ([199.232.41.3]:40483 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 1KdobQ-0007qe-D6 for qemu-devel@nongnu.org; Thu, 11 Sep 2008 12:01:04 -0400 Received: from cvs.savannah.gnu.org ([199.232.41.69]) by sv.gnu.org with esmtp (Exim 4.63) (envelope-from ) id 1KdobP-0002N2-El for qemu-devel@nongnu.org; Thu, 11 Sep 2008 16:01:03 +0000 Received: from blueswir1 by cvs.savannah.gnu.org with local (Exim 4.63) (envelope-from ) id 1KdobP-0002My-0z for qemu-devel@nongnu.org; Thu, 11 Sep 2008 16:01:03 +0000 MIME-Version: 1.0 Errors-To: blueswir1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From: Blue Swirl Message-Id: Date: Thu, 11 Sep 2008 16:01:03 +0000 Subject: [Qemu-devel] [5196] Write zeros to high bits of y, based on patch by Vince Weaver 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: 5196 http://svn.sv.gnu.org/viewvc/?view=rev&root=qemu&revision=5196 Author: blueswir1 Date: 2008-09-11 16:01:02 +0000 (Thu, 11 Sep 2008) Log Message: ----------- Write zeros to high bits of y, based on patch by Vince Weaver Modified Paths: -------------- trunk/target-sparc/translate.c Modified: trunk/target-sparc/translate.c =================================================================== --- trunk/target-sparc/translate.c 2008-09-11 14:32:27 UTC (rev 5195) +++ trunk/target-sparc/translate.c 2008-09-11 16:01:02 UTC (rev 5196) @@ -709,7 +709,8 @@ tcg_gen_andi_tl(r_temp, cpu_cc_src, 0x1); tcg_gen_shli_tl(r_temp, r_temp, 31); tcg_gen_shri_tl(cpu_tmp0, cpu_y, 1); - tcg_gen_or_tl(cpu_y, cpu_tmp0, r_temp); + tcg_gen_or_tl(cpu_tmp0, cpu_tmp0, r_temp); + tcg_gen_andi_tl(cpu_y, cpu_tmp0, 0xffffffff); // b1 = N ^ V; gen_mov_reg_N(cpu_tmp0, cpu_psr); @@ -3195,7 +3196,8 @@ { switch(rd) { case 0: /* wry */ - tcg_gen_xor_tl(cpu_y, cpu_src1, cpu_src2); + tcg_gen_xor_tl(cpu_tmp0, cpu_src1, cpu_src2); + tcg_gen_andi_tl(cpu_y, cpu_tmp0, 0xffffffff); break; #ifndef TARGET_SPARC64 case 0x01 ... 0x0f: /* undefined in the