From patchwork Sat Dec 9 17:03:45 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xi Ruoyao X-Patchwork-Id: 17792 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:bcd1:0:b0:403:3b70:6f57 with SMTP id r17csp6152350vqy; Sat, 9 Dec 2023 09:04:47 -0800 (PST) X-Google-Smtp-Source: AGHT+IESy910jGu5aJPsv0L98+j+fdkh57T+sFrM08yCpgux4FU3Rv1H0ZeqntBV3ZsZQ+vZ0zrH X-Received: by 2002:a05:6102:a4d:b0:465:d88a:4e53 with SMTP id i13-20020a0561020a4d00b00465d88a4e53mr1469476vss.14.1702141486970; Sat, 09 Dec 2023 09:04:46 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1702141486; cv=pass; d=google.com; s=arc-20160816; b=o34lKoYiVQEem+TAaCMmrkcrdgIzle9pQl76DBR7Ecu728ikrb31pKz2qRmmkbfxBJ VelNSY1BLI13bC2Nvrk3jD4C+asLwUJ0k9hUNqAjDh1QAGkDej9p2pyyqi2EwvtWyRL+ qEkJdbHDkMbXBR1oW6c7XNB3UL4VmyeEiICh97kvGfU6e6XxubBfpbi9qlkJoIcVtFwe sLkxgVieL2I0c+iheGNQfz1F+UNOyVDvLKnJz8qLJ2QFqqwXp5c9zTipceOA1dCzi6a7 4Dkmlie3LAblKZGOheqUu08jW5dlSd89dFzZG3SG/K/WWpvZ3HqXGirhh5HHNrR2vUxI VX2Q== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:message-id:date:subject:cc:to:from:dkim-signature :arc-filter:dmarc-filter:delivered-to; bh=1I2WIspSqU0HWsJeO0/SrLQ2ZPilIxy5FIso6t0poWw=; fh=lAZEJv+juT1q6RYyAreaw+ZnRPAcRoheJ20Uybha2qY=; b=zYcuBV/0Kqy99uP3Z3X0tMPjOSSEKDaSF1VlLuxbZWUeVKJy7jZUgLus/TICg+Rzps U++Xw183QKOmELqvR9TlePK3iFI6Mu0Vlji+poLlemYrQgHvGUMrvbCDUI+tV628A4ik kwZtf6qma3ezdA4XJ3SlB2Bx6MIATlkMgxit2SWdzdQkKJQRdJSS++b4n7cR1XoKgr9q Xgt0Uvo+y/sZqjatloniYd3bpD/L+9XWpYFF31T3u2aVDzuKOzKfnmUSCVHP1M2kd87w ZbZy3t5n2AWB3KrIPD4TY6WOyT7I8LF+SP+vHQUt5Aw1eJGi1fGykpZm9HyL0yfElBj1 9Dcw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@xry111.site header.s=default header.b=Kzp5KQ+y; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=xry111.site Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id g18-20020a67e292000000b0046485b6cdcesi949715vsf.794.2023.12.09.09.04.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 09 Dec 2023 09:04:46 -0800 (PST) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; dkim=pass header.i=@xry111.site header.s=default header.b=Kzp5KQ+y; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org"; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=xry111.site Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id D42AB3858295 for ; Sat, 9 Dec 2023 17:04:45 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from xry111.site (xry111.site [89.208.246.23]) by sourceware.org (Postfix) with ESMTPS id A87E93858C98 for ; Sat, 9 Dec 2023 17:04:15 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org A87E93858C98 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=xry111.site Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=xry111.site ARC-Filter: OpenARC Filter v1.0.0 sourceware.org A87E93858C98 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=89.208.246.23 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1702141462; cv=none; b=Yy++EtRlWk27A0KBSWZSWAuCqcBanfFWTDmoRlO99T3PUI3brjR0XQr7QxekQUm2Pp7U7vD5af8WNNnnNVuyPCMOpZHkWMt1rSlNLADanmNYoicB6ZL5e2l0WiWx70k3cjaeTsisaB9ehX/Ia+gIaw1HBZlTZI1oEqQB3UyHXbw= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1702141462; c=relaxed/simple; bh=4sYMq+xBsTiDWNQ++pI3HvJR0e8xUEx0+iQB4IJzwN8=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=GIVzzghZEltwV6tA5ATvEOGL93L6Hd7QdxMbVLQvTgrBgnf9vAG8pUG5akWWdPqpLPdwo884mUTErhj4qvj3/oGEK1JewC9r3dZOBwuADzHz8PCY25lbD5S7yzcfaLFldhGhyockibFriT+Cqff+ZpGwV4STvjOFqvituhQhXn0= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=xry111.site; s=default; t=1702141454; bh=4sYMq+xBsTiDWNQ++pI3HvJR0e8xUEx0+iQB4IJzwN8=; h=From:To:Cc:Subject:Date:From; b=Kzp5KQ+yL59D6Q2f3zz+eWy4ef0bmZS2jDbFunrkT6nXw2XGksvw8cOQzO2s6IBtB NITnwcRXrj9d13bhFVUKotVRfF9HQRRNlmcFVRDGlXUDiOzb4gBIhEoxZj6Q3TfnNT SGPBvD78J76ihuHxQBjuEzWjpWof7L6xqJnmGIOw= Received: from stargazer.. (unknown [IPv6:240e:358:1144:3a00:dc73:854d:832e:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (Client did not present a certificate) (Authenticated sender: xry111@xry111.site) by xry111.site (Postfix) with ESMTPSA id C54C46693D; Sat, 9 Dec 2023 12:04:11 -0500 (EST) From: Xi Ruoyao To: gcc-patches@gcc.gnu.org Cc: chenglulu , i@xen0n.name, xuchenghua@loongson.cn, c@jia.je, Xi Ruoyao Subject: [PATCH 0/3] LoongArch: Fix instruction costs Date: Sun, 10 Dec 2023 01:03:45 +0800 Message-ID: <20231209170347.12601-2-xry111@xry111.site> X-Mailer: git-send-email 2.43.0 MIME-Version: 1.0 X-Spam-Status: No, score=-2.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_SHORT, LIKELY_SPAM_FROM, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1784824711890601195 X-GMAIL-MSGID: 1784824711890601195 Update LoongArch instruction costs based on the micro-benchmark results on LA464 and LA664. In particular, this allows generating alsl/slli or alsl/slli + add pairs for multiplying some constants as on LA464/LA664 a mul instruction is 4x slower than alsl, slli, or add instructions. Bootstrapped and regtested on loongarch64-linux-gnu. Ok for trunk? Xi Ruoyao (3): LoongArch: Include rtl.h for COSTS_N_INSNS instead of hard coding our own LoongArch: Fix instruction costs [PR112936] LoongArch: Add alslsi3_extend gcc/config/loongarch/loongarch-def.cc | 42 ++++++++++--------- gcc/config/loongarch/loongarch.cc | 22 +++++----- gcc/config/loongarch/loongarch.md | 12 ++++++ .../loongarch/mul-const-reduction.c | 11 +++++ 4 files changed, 56 insertions(+), 31 deletions(-) create mode 100644 gcc/testsuite/gcc.target/loongarch/mul-const-reduction.c