From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:40525) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zfc3C-0001gJ-AG for qemu-devel@nongnu.org; Fri, 25 Sep 2015 19:05:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Zfc36-0007J3-Nn for qemu-devel@nongnu.org; Fri, 25 Sep 2015 19:05:10 -0400 Received: from mail-qg0-x22c.google.com ([2607:f8b0:400d:c04::22c]:34272) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Zfc36-0007I0-JC for qemu-devel@nongnu.org; Fri, 25 Sep 2015 19:05:04 -0400 Received: by qgez77 with SMTP id z77so81995749qge.1 for ; Fri, 25 Sep 2015 16:05:04 -0700 (PDT) Sender: Richard Henderson References: <1442953507-4074-1-git-send-email-rth@twiddle.net> <1442953507-4074-21-git-send-email-rth@twiddle.net> <20150925211036.GA20144@aurel32.net> From: Richard Henderson Message-ID: <5605D31C.3080600@twiddle.net> Date: Fri, 25 Sep 2015 16:05:00 -0700 MIME-Version: 1.0 In-Reply-To: <20150925211036.GA20144@aurel32.net> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v3 20/25] tcg: Save insn data and use it in cpu_restore_state_from_tb List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Aurelien Jarno Cc: peter.maydell@linaro.org, alex.bennee@linaro.org, qemu-devel@nongnu.org On 09/25/2015 02:10 PM, Aurelien Jarno wrote: >> + if (more) >> + byte |= 0x80; > > You are missing braces here. Gah. I thought I fixed that... > Given we save both the host and the guest PC in this structure, one > obvious optimization would be to skip saving data for host instructions > which can not generate exception. It means that all the TCG ops in this > instruction do not generate exceptions either. We can easily test that > for all TCG instructions except all by looking at the > TCG_OPF_SIDE_EFFECTS flag. For the call op, we have to look at the > TCG_CALL_NO_SIDE_EFFECTS flag, even if it doesn't necessary means the > helper might generate exception. > > That should significantly save space on load/store architectures. That > said we can probably do that in a latter time. Yes, Alex Bennee mentioned this during round 1. I decided to not try to do that all at once. When we do get there, we also have to add an additional column for icount. It's currently inferred that each entry is 1 insn. This will expand the size of the table in any case that every insn might raise an exception, but I expect the normal case to be a slight decrease. r~