From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1M4uGE-0000gs-B1 for qemu-devel@nongnu.org; Fri, 15 May 2009 06:03:26 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1M4uG9-0000bS-DA for qemu-devel@nongnu.org; Fri, 15 May 2009 06:03:25 -0400 Received: from [199.232.76.173] (port=46399 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1M4uG8-0000ax-Un for qemu-devel@nongnu.org; Fri, 15 May 2009 06:03:21 -0400 Received: from mx20.gnu.org ([199.232.41.8]:1159) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1M4uG8-0008UG-Gh for qemu-devel@nongnu.org; Fri, 15 May 2009 06:03:20 -0400 Received: from mail.codesourcery.com ([65.74.133.4]) by mx20.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1M4uG7-000462-Gq for qemu-devel@nongnu.org; Fri, 15 May 2009 06:03:19 -0400 From: Paul Brook Subject: Re: [Qemu-devel] [PATCH] Revived GUEST_BASE support for usermode emulation targets [v4] Date: Fri, 15 May 2009 11:02:57 +0100 References: <1241028203-19687-1-git-send-email-riku.voipio@iki.fi> <200905150325.31918.paul@codesourcery.com> <20090515095728.GA24314@kos.to> In-Reply-To: <20090515095728.GA24314@kos.to> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200905151102.58522.paul@codesourcery.com> List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Riku Voipio Cc: martin.mohring@opensuse.org, mika.westerberg@iki.fi, qemu-devel@nongnu.org On Friday 15 May 2009, Riku Voipio wrote: > On Fri, May 15, 2009 at 03:25:31AM +0100, Paul Brook wrote: > > On Tuesday 05 May 2009, Riku Voipio wrote: > > > On Tue, May 05, 2009 at 10:02:41PM +0400, malc wrote: > > > > Things should work the way they are in your latest patch on x86 and > > > > should be done the way it's done in the original submission (mov + > > > > add) for x86_64. > > > > > > Ok.. here we go. not on a amd64 machine right now so I will test > > > that part tomorrow. > > > > I'm pretty sure it's still broken for large offsets. > > It is indeed broken. Since tcg_out_addi maps on x86_64 to tgen_arithi64 > which doesn't accept 64bit values. But as Martin said, the currrent use for > this patch is just to add very minimal offsets. I that case you should be using lea for small offsets. The proper sequence for large offsets is movq (allows 64-bit immedaise); add. The offset is a user configurable option, so IMHO you should be supporting large offsets. Paul