From patchwork Fri Oct 19 21:38:57 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aurelien Jarno X-Patchwork-Id: 192835 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id B92A62C0090 for ; Sat, 20 Oct 2012 08:47:04 +1100 (EST) Received: from localhost ([::1]:33951 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TPKKO-0002CV-0h for incoming@patchwork.ozlabs.org; Fri, 19 Oct 2012 17:42:00 -0400 Received: from eggs.gnu.org ([208.118.235.92]:41306) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TPKHw-0005go-CW for qemu-devel@nongnu.org; Fri, 19 Oct 2012 17:39:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TPKHt-0005Tx-Ru for qemu-devel@nongnu.org; Fri, 19 Oct 2012 17:39:28 -0400 Received: from hall.aurel32.net ([88.191.126.93]:41850) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TPKHt-0005T6-KS for qemu-devel@nongnu.org; Fri, 19 Oct 2012 17:39:25 -0400 Received: from watt.aurel32.net ([82.228.202.134] helo=ohm.aurel32.net) by hall.aurel32.net with esmtpsa (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.72) (envelope-from ) id 1TPKHr-0004kw-Pp; Fri, 19 Oct 2012 23:39:24 +0200 Received: from aurel32 by ohm.aurel32.net with local (Exim 4.80) (envelope-from ) id 1TPKHp-0008KZ-86; Fri, 19 Oct 2012 23:39:21 +0200 From: Aurelien Jarno To: qemu-devel@nongnu.org Date: Fri, 19 Oct 2012 23:38:57 +0200 Message-Id: <1350682755-31635-9-git-send-email-aurelien@aurel32.net> X-Mailer: git-send-email 1.7.10.4 In-Reply-To: <1350682755-31635-1-git-send-email-aurelien@aurel32.net> References: <1350682755-31635-1-git-send-email-aurelien@aurel32.net> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 88.191.126.93 Cc: Aurelien Jarno Subject: [Qemu-devel] [PATCH v3 08/26] tcg: always mark dead input arguments as dead X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Always mark dead input arguments as dead, even if the op is at the basic block end. This will allow to check that all temps are correctly saved. Reviewed-by: Richard Henderson Signed-off-by: Aurelien Jarno --- tcg/tcg.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/tcg/tcg.c b/tcg/tcg.c index b219a6d..d81b628 100644 --- a/tcg/tcg.c +++ b/tcg/tcg.c @@ -1874,16 +1874,16 @@ static void tcg_reg_alloc_op(TCGContext *s, iarg_end: ; } + /* mark dead temporaries and free the associated registers */ + for (i = nb_oargs; i < nb_oargs + nb_iargs; i++) { + if (IS_DEAD_ARG(i)) { + temp_dead(s, args[i]); + } + } + if (def->flags & TCG_OPF_BB_END) { tcg_reg_alloc_bb_end(s, allocated_regs); } else { - /* mark dead temporaries and free the associated registers */ - for(i = nb_oargs; i < nb_oargs + nb_iargs; i++) { - if (IS_DEAD_ARG(i)) { - temp_dead(s, args[i]); - } - } - if (def->flags & TCG_OPF_CALL_CLOBBER) { /* XXX: permit generic clobber register list ? */ for(reg = 0; reg < TCG_TARGET_NB_REGS; reg++) {