From patchwork Thu Nov 17 14:35:07 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Luc Van Oostenryck X-Patchwork-Id: 9434617 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 4F84960469 for ; Thu, 17 Nov 2016 17:10:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3C9EA29672 for ; Thu, 17 Nov 2016 17:10:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 315C629675; Thu, 17 Nov 2016 17:10:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.3 required=2.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RCVD_IN_SORBS_SPAM, T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id AF38E29672 for ; Thu, 17 Nov 2016 17:10:46 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S935708AbcKQRKh (ORCPT ); Thu, 17 Nov 2016 12:10:37 -0500 Received: from mail-wm0-f67.google.com ([74.125.82.67]:33770 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933967AbcKQRKf (ORCPT ); Thu, 17 Nov 2016 12:10:35 -0500 Received: by mail-wm0-f67.google.com with SMTP id u144so23122885wmu.0 for ; Thu, 17 Nov 2016 09:10:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=RRNg/FHPwh74GAGWS8McM77f4Fvfa+sXVLztI1lZ5VI=; b=ZjMJLK3c2Vj18fOCwJlvZBoYKOonQVR2/Byd1sgg4MpwdF2GAUVA634TcPiLdkJlaL Y57SRyzO3J+i955kSgDCZFvsFq01m3FT1kAwDCdJG3gm4vArjNr0AA98SKT6DMfJSM3v RA7zza+912lcl2lvRqoYjYHNMUYuxWHlaMZtKTWLpwAXR+tAO25wC8KWDkUIrl2vfdJJ Ay3ORXfWrp6B9vyPF8sTbZwA5nQnsBXCx5mcREdB0lMgWLoOzEFRA22aPHo2mh4y8iYh Zq2lMfRRDZN42ZYTigaxYQApIJtcSFxPtCR4KZ1351LLMRwsfOb8BEyWLHsQjJibAdOg 80fw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=RRNg/FHPwh74GAGWS8McM77f4Fvfa+sXVLztI1lZ5VI=; b=luQE5iwftP4KhSipfDVHHwJboMfDqUJ3gUtfYX3LYhjRr5yZ0bneglpMgMPkHPj9jx EyHNyZ9fr0eWHaxHb6UbtgzHTb5YLtMbgonorzvqwq1FdR3Rf7aIfLxg+ETipIUv7Fcu C7neS7HOirZsDrmdyEBz+tRx9UPkC5Uoqm0rJ48sNW4eEMLmsedp0NWFOZHioVCCEVTB NnO/URPgdSBRXUDMRRjL5OhLiBQhkWlcKHuhxkz5WpHiEqE/m0kSwpAvnjMJtRgD8F0F W74rwbwU+C0kEzIoXNSdWERyZBQqcQby6b81MNq2r8vo1GZ18J8huzqMrwFsUB0bTuCe NsTQ== X-Gm-Message-State: AKaTC01lVZoMQ/iBSKIRREFjX0ytjDh9W4xAkPlXire5mby72W0XamsKVbuRqk04WX62Bg== X-Received: by 10.194.109.65 with SMTP id hq1mr2340625wjb.37.1479393327034; Thu, 17 Nov 2016 06:35:27 -0800 (PST) Received: from localhost.localdomain (80.225-245-81.adsl-dyn.isp.belgacom.be. [81.245.225.80]) by smtp.gmail.com with ESMTPSA id 138sm4069814wms.20.2016.11.17.06.35.26 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 17 Nov 2016 06:35:26 -0800 (PST) From: Luc Van Oostenryck To: linux-sparse@vger.kernel.org Cc: Christopher Li , Luc Van Oostenryck Subject: [PATCH 8/8] cleanup kill_instruction() Date: Thu, 17 Nov 2016 15:35:07 +0100 Message-Id: <20161117143507.3598-9-luc.vanoostenryck@gmail.com> X-Mailer: git-send-email 2.10.2 In-Reply-To: <20161117143507.3598-1-luc.vanoostenryck@gmail.com> References: <20161117143507.3598-1-luc.vanoostenryck@gmail.com> Sender: linux-sparse-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-sparse@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP No functional changes: - factorize out the '->bb = NULL' and '|= REPEAT_CSE'. - fall through the switch cases for ternary/bunary/unary ops. Signed-off-by: Luc Van Oostenryck --- simplify.c | 46 ++++++++++++++++++++-------------------------- 1 file changed, 20 insertions(+), 26 deletions(-) diff --git a/simplify.c b/simplify.c index afbbb7b6..fc69def1 100644 --- a/simplify.c +++ b/simplify.c @@ -188,12 +188,14 @@ void kill_instruction(struct instruction *insn) return; switch (insn->opcode) { + case OP_SEL: + case OP_RANGE: + kill_use(&insn->src3); + /* fall through */ + case OP_BINARY ... OP_BINCMP_END: - insn->bb = NULL; - kill_use(&insn->src1); kill_use(&insn->src2); - repeat_phase |= REPEAT_CSE; - return; + /* fall through */ case OP_CAST: case OP_SCAST: @@ -201,42 +203,34 @@ void kill_instruction(struct instruction *insn) case OP_PTRCAST: case OP_SETVAL: case OP_NOT: case OP_NEG: - insn->bb = NULL; kill_use(&insn->src1); - repeat_phase |= REPEAT_CSE; - return; + break; case OP_PHI: clear_phi(insn); - insn->bb = NULL; - repeat_phase |= REPEAT_CSE; - return; + break; case OP_SYMADDR: - insn->bb = NULL; - repeat_phase |= REPEAT_CSE | REPEAT_SYMBOL_CLEANUP; - return; + repeat_phase |= REPEAT_SYMBOL_CLEANUP; + break; - case OP_SEL: - case OP_RANGE: - insn->bb = NULL; - repeat_phase |= REPEAT_CSE; - kill_use(&insn->src1); - kill_use(&insn->src2); - kill_use(&insn->src3); - return; case OP_BR: + if (!insn->cond) + break; + /* fall through */ + case OP_COMPUTEDGOTO: - insn->bb = NULL; - repeat_phase |= REPEAT_CSE; - if (insn->cond) - kill_use(&insn->cond); - return; + kill_use(&insn->cond); + break; case OP_ENTRY: /* ignore */ return; } + + insn->bb = NULL; + repeat_phase |= REPEAT_CSE; + return; } /*