From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:59363) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QLaDH-0000zA-Cx for qemu-devel@nongnu.org; Sun, 15 May 2011 08:14:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QLaDF-0004Sv-R5 for qemu-devel@nongnu.org; Sun, 15 May 2011 08:14:23 -0400 Received: from mail-qy0-f173.google.com ([209.85.216.173]:36348) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QLaDF-0004Sd-MX for qemu-devel@nongnu.org; Sun, 15 May 2011 08:14:21 -0400 Received: by qyk36 with SMTP id 36so1082562qyk.4 for ; Sun, 15 May 2011 05:14:21 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: References: <20110514211616.GA13600@volta.aurel32.net> <20110514220447.GA30615@hall.aurel32.net> <20110515111428.GH30615@hall.aurel32.net> Date: Sun, 15 May 2011 14:14:20 +0200 Message-ID: From: Laurent Desnogues Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [Qemu-devel] [PATCH RFC 00/11] AREG0 elimination List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Blue Swirl Cc: qemu-devel , Aurelien Jarno On Sun, May 15, 2011 at 1:33 PM, Blue Swirl wrote: [...] >> x86_64 uses r14 as TCG_AREG0. Despite the instructions being quite >> simple (only 2 movi_i32), the resulting code makes 2 access to env to >> save the two registers. Having to reload the env pointer each time to a >> register would clearly increase the size of this TB. > > I don't think TCG would be that simple, instead the pointer would be > loaded only once in this case. Assuming TCG was able to allocate a register for that, it would be live at most for one TB, so you'd have to load it at least once per TB, and with block chaining that wouldn't be efficient as you'd keep on reloading it. Laurent