From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Hs3d7-0006YP-RC for qemu-devel@nongnu.org; Sat, 26 May 2007 17:16:53 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Hs3d5-0006Xo-Qz for qemu-devel@nongnu.org; Sat, 26 May 2007 17:16:52 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Hs3d5-0006Xh-CV for qemu-devel@nongnu.org; Sat, 26 May 2007 17:16:51 -0400 Received: from mail.codesourcery.com ([65.74.133.4]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1Hs3d4-0006zs-Ub for qemu-devel@nongnu.org; Sat, 26 May 2007 17:16:51 -0400 From: Paul Brook Subject: Re: [Qemu-devel] [M68K] Full extension word format addressing mode Date: Sat, 26 May 2007 22:16:44 +0100 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200705262216.45853.paul@codesourcery.com> 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 Cc: Andreas Schwab On Saturday 26 May 2007, Andreas Schwab wrote: > This patch implements the full extension word format addressing mode in > the m68k emulation. I have manually verified that it gets all cases > right. > + if ((ext & 0x80) == 0) { > + /* base not suppressed */ > + if (base == -1) > + tmp = gen_im32(offset + bd); > + else if (bd != 0) { > + tmp = gen_new_qreg(QMODE_I32); > + gen_op_add32(tmp, base, gen_im32(bd)); > + } else > + tmp = base; > + if ((ext & 0x44) == 0) > + gen_op_add32(tmp, tmp, add); This corrupts a2 in the following instruction: move.l ([%a2,%a1.l],0),%a0 I've fixed that and tweaked how temporary variables are used. Paul