From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1HRxEj-0008Me-Ac for qemu-devel@nongnu.org; Thu, 15 Mar 2007 17:11:49 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1HRxEh-0008MK-Vc for qemu-devel@nongnu.org; Thu, 15 Mar 2007 17:11:49 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HRxEh-0008MD-Nx for qemu-devel@nongnu.org; Thu, 15 Mar 2007 16:11:47 -0500 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 1HRxDe-00026C-Oe for qemu-devel@nongnu.org; Thu, 15 Mar 2007 17:10:43 -0400 From: Paul Brook Subject: Re: [Qemu-devel] qemu-arm: wrong execution of post-indexed loads when Rm and Rd are the same register Date: Thu, 15 Mar 2007 21:10:39 +0000 References: <1173987324.9939.0.camel@edgy-laptop> <200703152003.21276.paul@codesourcery.com> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200703152110.39814.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: Rodrigo Vivi , Lauro Ramos Venancio > > This is still wrong. > > So, is this a known bug? Still wrong implies it's a bug, and your patch does not fix it properly. > > The writeback must happen after the load. > > We code like this because > - we didn't find this restriction in arm reference manual It's the Abort model section you mention below. > - the LLVM uses this instruction expecting a result like this The compiler knows nothing about the abort behavior. The difference is only visible if the load faults. > - That was the result that we got running these instructions in an OMAP1710 I suggest you check again. I'm fairly sure the arm926 implements the Base Restored abort model. Paul