Message ID | 20241030184830.3634301-1-richard.sandiford@arm.com |
---|---|
Headers |
Return-Path: <gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 2C8DB3857BA5 for <patchwork@sourceware.org>; Wed, 30 Oct 2024 18:49:58 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by sourceware.org (Postfix) with ESMTP id 439823858D33 for <gcc-patches@gcc.gnu.org>; Wed, 30 Oct 2024 18:49:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 439823858D33 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 439823858D33 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=217.140.110.172 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1730314161; cv=none; b=NIXUWDoCYDlDIf4pbM23NopEZ7CkZeLmLtFspeKOz+SahRyuDaZ1vIZi9Svpudj0OTF0Ke8TultWvXYq2EpSuzLY5rUIYQgyAOp0wARLwK6PygNB17tXsfEgLwSEBE9HXDN+ISmk9BR9xOfCfAIAF0qV/JSaI9ryqonZbMv84lI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1730314161; c=relaxed/simple; bh=Zi7zIS6Pu/Enjq8BSnhGlADZRyEzGCOqCi81d7jsQmE=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=c2l8NbYN9xjmydD+/UGlBruw98cl2i05Y5gaVVnB/hGPMTnS1IAEW6k9mpn+wJiinaVreg0W9h6DVPPm6QPk2LOSBx2gWMzeAs1ooD93l+o0MvaiNM2ykPyqQNwiUCV3j/1tDmxsyWhAJc19RlSfYmAJhEfQC6MsEscGHXXwJmg= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C0362113E; Wed, 30 Oct 2024 11:49:49 -0700 (PDT) Received: from e121540-lin.manchester.arm.com (e121540-lin.manchester.arm.com [10.32.110.72]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 554763F528; Wed, 30 Oct 2024 11:49:19 -0700 (PDT) From: Richard Sandiford <richard.sandiford@arm.com> To: richard.earnshaw@arm.com, ktkachov@nvidia.com, gcc-patches@gcc.gnu.org Cc: Richard Sandiford <richard.sandiford@arm.com> Subject: [PATCH 0/3] aarch64: Allow separate SVE and SME feature requirements Date: Wed, 30 Oct 2024 18:48:27 +0000 Message-Id: <20241030184830.3634301-1-richard.sandiford@arm.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, KAM_DMARC_NONE, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, KAM_SHORT, SPF_HELO_NONE, SPF_NONE, TXREP 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 <gcc-patches.gcc.gnu.org> List-Unsubscribe: <https://gcc.gnu.org/mailman/options/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe> List-Archive: <https://gcc.gnu.org/pipermail/gcc-patches/> List-Post: <mailto:gcc-patches@gcc.gnu.org> List-Help: <mailto:gcc-patches-request@gcc.gnu.org?subject=help> List-Subscribe: <https://gcc.gnu.org/mailman/listinfo/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe> Errors-To: gcc-patches-bounces~patchwork=sourceware.org@gcc.gnu.org |
Series |
aarch64: Allow separate SVE and SME feature requirements
|
|
Message
Richard Sandiford
Oct. 30, 2024, 6:48 p.m. UTC
Currently we represent architecture requirements using a single bitmask of features. However, some of the new extensions have different requirements in non-streaming mode compared to stremaing mode. This series adds support for that and applies it to FAMINMAX. Tested on aarch64-linux-gnu. Since we have quite a bit of work gated behind this, I'm planning to commit tomorrow evening (UTC) if there are no comments before then, but please let me know if you'd like more time to review. Richard Richard Sandiford (3): aarch64: Move ENTRY_VHSDF to aarch64-simd-pragma-builtins.def aarch64: Record separate streaming and non-streaming ISA requirements aarch64: Require SVE2 and/or SME2 for SVE FAMINMAX intrinsics gcc/config.gcc | 2 +- gcc/config/aarch64/aarch64-builtins.cc | 142 +++++++++--------- gcc/config/aarch64/aarch64-protos.h | 87 ++++++++++- .../aarch64/aarch64-simd-pragma-builtins.def | 14 +- .../aarch64/aarch64-sve-builtins-base.cc | 4 - .../aarch64/aarch64-sve-builtins-base.def | 29 +--- .../aarch64/aarch64-sve-builtins-sme.def | 30 ++-- .../aarch64/aarch64-sve-builtins-sve2.cc | 4 + .../aarch64/aarch64-sve-builtins-sve2.def | 48 +++--- gcc/config/aarch64/aarch64-sve-builtins.cc | 51 ++++--- gcc/config/aarch64/aarch64-sve-builtins.h | 13 +- .../aarch64/sve/acle/general/amin_1.c | 9 ++ .../aarch64/sve2/acle/asm/amax_f16.c | 5 +- .../aarch64/sve2/acle/asm/amax_f32.c | 5 +- .../aarch64/sve2/acle/asm/amax_f64.c | 5 +- .../aarch64/sve2/acle/asm/amin_f16.c | 5 +- .../aarch64/sve2/acle/asm/amin_f32.c | 5 +- .../aarch64/sve2/acle/asm/amin_f64.c | 5 +- 18 files changed, 282 insertions(+), 181 deletions(-) create mode 100644 gcc/testsuite/gcc.target/aarch64/sve/acle/general/amin_1.c