From patchwork Mon Jan 10 23:11:49 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 78258 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id F285DB6EE9 for ; Tue, 11 Jan 2011 10:16:27 +1100 (EST) Received: from localhost ([127.0.0.1]:48990 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PcQyP-0006TD-AG for incoming@patchwork.ozlabs.org; Mon, 10 Jan 2011 18:16:25 -0500 Received: from [140.186.70.92] (port=48694 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PcQu3-0003pO-In for qemu-devel@nongnu.org; Mon, 10 Jan 2011 18:11:58 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1PcQu1-0006JL-RS for qemu-devel@nongnu.org; Mon, 10 Jan 2011 18:11:55 -0500 Received: from mnementh.archaic.org.uk ([81.2.115.146]:49595) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1PcQu1-0006J0-Je for qemu-devel@nongnu.org; Mon, 10 Jan 2011 18:11:53 -0500 Received: from pm215 by mnementh.archaic.org.uk with local (Exim 4.69) (envelope-from ) id 1PcQu0-0003fP-2U for qemu-devel@nongnu.org; Mon, 10 Jan 2011 23:11:52 +0000 From: Peter Maydell To: qemu-devel@nongnu.org Date: Mon, 10 Jan 2011 23:11:49 +0000 Message-Id: <1294701112-14071-2-git-send-email-peter.maydell@linaro.org> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1294701112-14071-1-git-send-email-peter.maydell@linaro.org> References: <1294701112-14071-1-git-send-email-peter.maydell@linaro.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) Subject: [Qemu-devel] [PATCH 1/4] target-arm: Remove redundant setting of IT bits before Thumb SWI X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Remove a redundant call to gen_set_condexec() in the translation of Thumb mode SWI. (SWI and WFI generate "exceptions" which happen after the execution of the instruction, ie when PC and IT bits have updated. So the condexec bits at this point are not correct. However, the code that handles finishing the translation of the TB will write the correct value of the condexec bits later, so the only effect was that a conditional Thumb SWI would generate slightly worse code than necessary.) Signed-off-by: Peter Maydell Reviewed-by: Aurelien Jarno --- target-arm/translate.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/target-arm/translate.c b/target-arm/translate.c index 2ce82f3..4abece1 100644 --- a/target-arm/translate.c +++ b/target-arm/translate.c @@ -9014,7 +9014,6 @@ static void disas_thumb_insn(CPUState *env, DisasContext *s) if (cond == 0xf) { /* swi */ - gen_set_condexec(s); gen_set_pc_im(s->pc); s->is_jmp = DISAS_SWI; break;