Message ID | 20250108090255.3755211-1-shiyulong@iscas.ac.cn |
---|---|
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 D9594385828E for <patchwork@sourceware.org>; Wed, 8 Jan 2025 09:04:16 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D9594385828E X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from cstnet.cn (smtp84.cstnet.cn [159.226.251.84]) by sourceware.org (Postfix) with ESMTPS id 364733858C51 for <gcc-patches@gcc.gnu.org>; Wed, 8 Jan 2025 09:03:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 364733858C51 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=iscas.ac.cn Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=iscas.ac.cn ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 364733858C51 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=159.226.251.84 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1736327000; cv=none; b=XBg6KvrsNEoVfsZyDnzkqR5TqpRKjtuzXa4IGTcbAkC60pVH83qw32qE64Qt5F3UjiCk+nI2rF5sht2NHiBqwnfk1NWGszwq+mYQcO1MFrY8hhnnd3qfUwyrFlcp7CthJiSoCCrw2ve8fA9fJfE3BguLZfrv5jJDweBJzMTPPx8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1736327000; c=relaxed/simple; bh=M+VkXTkr9bAOQ4qTIHQk5+WI7XB3DRv6Vi5IMmYcw/A=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=iTo6NnYIRkTvbQS60ukjt+FmIPotDENBmuKl/tFfWkPDDt0JvvOEtqkRTOLGbYIlDVTsQO9tyy+a5DgbxPIjhvRT2r3WUyBYdmYAgNn8jCpJKqn8fEhxvlgfeZq96y44vw8qxAp8aYzFarggi6N2zTEFYnJy7urN+tq/c3h/yZI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 364733858C51 Received: from localhost.localdomain (unknown [122.8.183.87]) by APP-05 (Coremail) with SMTP id zQCowADX3ipGP35nHlcFBg--.25663S2; Wed, 08 Jan 2025 17:03:07 +0800 (CST) From: shiyulong@iscas.ac.cn To: gcc-patches@gcc.gnu.org Cc: kito.cheng@sifive.com, jeffreyalaw@gmail.com, juzhe.zhong@rivai.ai, pan2.li@intel.com, monk.chiang@sifive.com, yihsiu.hsu@sifive.com, wuwei2016@iscas.ac.cn, jiawei@iscas.ac.cn, shihua@iscas.ac.cn, chenyixuan@iscas.ac.cn, yulong <shiyulong@iscas.ac.cn> Subject: [PATCH V4 0/2] RISC-V: Add intrinsics support and testcases for SiFive Xsfvcp extension. Date: Wed, 8 Jan 2025 17:02:53 +0800 Message-Id: <20250108090255.3755211-1-shiyulong@iscas.ac.cn> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID: zQCowADX3ipGP35nHlcFBg--.25663S2 X-Coremail-Antispam: 1UD129KBjvJXoW7AF43tFyrXr4Dury8JF1kZrb_yoW8Kw4UpF W5Gr43C3s8Ca93ZryftF43Jw45GFZ3KrW5Cw1fZw1UCrW8ArWqvF1qyw13XF47GF15urn2 kw1Ik34Ykw42yrDanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUU9K14x267AKxVW8JVW5JwAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK02 1l84ACjcxK6xIIjxv20xvE14v26ryj6F1UM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4j 6F4UM28EF7xvwVC2z280aVAFwI0_Cr1j6rxdM28EF7xvwVC2z280aVCY1x0267AKxVW0oV Cq3wAS0I0E0xvYzxvE52x082IY62kv0487Mc02F40EFcxC0VAKzVAqx4xG6I80ewAv7VC0 I7IYx2IY67AKxVWUJVWUGwAv7VC2z280aVAFwI0_Jr0_Gr1lOx8S6xCaFVCjc4AY6r1j6r 4UM4x0Y48IcxkI7VAKI48JM4x0x7Aq67IIx4CEVc8vx2IErcIFxwACI402YVCY1x02628v n2kIc2xKxwAKzVCY07xG64k0F24lc7CjxVAaw2AFwI0_Jw0_GFyl42xK82IYc2Ij64vIr4 1l4I8I3I0E4IkC6x0Yz7v_Jr0_Gr1lx2IqxVAqx4xG67AKxVWUJVWUGwC20s026x8GjcxK 67AKxVWUGVWUWwC2zVAF1VAY17CE14v26r1q6r43MIIYrxkI7VAKI48JMIIF0xvE2Ix0cI 8IcVAFwI0_Jr0_JF4lIxAIcVC0I7IYx2IY6xkF7I0E14v26r4j6F4UMIIF0xvE42xK8VAv wI8IcIk0rVWUJVWUCwCI42IY6I8E87Iv67AKxVWUJVW8JwCI42IY6I8E87Iv6xkF7I0E14 v26r4j6r4UJbIYCTnIWIevJa73UjIFyTuYvjfUO73vUUUUU X-Originating-IP: [122.8.183.87] X-CM-SenderInfo: 5vkl53porqwq5lvft2wodfhubq/ X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, KAM_SHORT, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham 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 |
RISC-V: Add intrinsics support and testcases for SiFive Xsfvcp extension.
|
|
Message
yulong
Jan. 8, 2025, 9:02 a.m. UTC
From: yulong <shiyulong@iscas.ac.cn>
This patch implements the Sifvie vendor extension Xsfvcp[1]
support to gcc. Providing a flexible mechanism to extend application
processors with custom coprocessors and variable-latency arithmetic
units intrinsics.
[1] https://www.sifive.com/document-file/sifive-vector-coprocessor-interface-vcix-software
Co-Authored by: Jiawei Chen <jiawei@iscas.ac.cn>
Co-Authored by: Shihua Liao <shihua@iscas.ac.cn>
Co-Authored by: Yixuan Chen <chenyixuan@iscas.ac.cn>
Diff with V3: Add new RTL mode and sifive_vector.h file and change testcase include file.
yulong (2):
RISC-V: Add intrinsics support for SiFive Xsfvcp extensions.
RISC-V: Add intrinsics testcases for SiFive Xsfvcp extensions.
gcc/config.gcc | 2 +-
gcc/config/riscv/constraints.md | 10 +
gcc/config/riscv/generic-vector-ooo.md | 4 +
gcc/config/riscv/genrvv-type-indexer.cc | 9 +
gcc/config/riscv/riscv-c.cc | 3 +-
.../riscv/riscv-vector-builtins-shapes.cc | 48 +
.../riscv/riscv-vector-builtins-shapes.h | 2 +
.../riscv/riscv-vector-builtins-types.def | 40 +
gcc/config/riscv/riscv-vector-builtins.cc | 362 +++++++-
gcc/config/riscv/riscv-vector-builtins.def | 30 +-
gcc/config/riscv/riscv-vector-builtins.h | 8 +
gcc/config/riscv/riscv.md | 5 +-
.../riscv/sifive-vector-builtins-bases.cc | 78 ++
.../riscv/sifive-vector-builtins-bases.h | 3 +
.../sifive-vector-builtins-functions.def | 45 +
gcc/config/riscv/sifive-vector.md | 871 ++++++++++++++++++
gcc/config/riscv/sifive_vector.h | 47 +
gcc/config/riscv/vector-iterators.md | 48 +
gcc/config/riscv/vector.md | 3 +-
.../gcc.target/riscv/rvv/xsfvector/sf_vc_f.c | 88 ++
.../gcc.target/riscv/rvv/xsfvector/sf_vc_i.c | 132 +++
.../gcc.target/riscv/rvv/xsfvector/sf_vc_v.c | 107 +++
.../gcc.target/riscv/rvv/xsfvector/sf_vc_x.c | 138 +++
23 files changed, 2074 insertions(+), 9 deletions(-)
create mode 100644 gcc/config/riscv/sifive_vector.h
create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_f.c
create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_i.c
create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_v.c
create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_x.c
Comments
Could you rebase and send the patch set again? I can't apply the patch set: [kitoc@hsinchu18 gcc]$ git am /tmp/git-pw8sm7zbop/RISC-V-Add-intrinsics-support-and-testcases-for-SiFive-Xsfvcp-extension..patch Applying: RISC-V: Add intrinsics support for SiFive Xsfvcp extensions. error: patch failed: gcc/config/riscv/riscv-vector-builtins-types.def:369 error: gcc/config/riscv/riscv-vector-builtins-types.def: patch does not apply error: patch failed: gcc/config/riscv/riscv-vector-builtins.cc:3600 error: gcc/config/riscv/riscv-vector-builtins.cc: patch does not apply error: patch failed: gcc/config/riscv/riscv-vector-builtins.def:729 error: gcc/config/riscv/riscv-vector-builtins.def: patch does not apply error: patch failed: gcc/config/riscv/riscv-vector-builtins.h:297 error: gcc/config/riscv/riscv-vector-builtins.h: patch does not apply error: patch failed: gcc/config/riscv/vector-iterators.md:4814 error: gcc/config/riscv/vector-iterators.md: patch does not apply error: patch failed: gcc/config/riscv/vector.md:56 error: gcc/config/riscv/vector.md: patch does not apply Patch failed at 0001 RISC-V: Add intrinsics support for SiFive Xsfvcp extensions. hint: Use 'git am --show-current-patch=diff' to see the failed patch When you have resolved this problem, run "git am --continue". If you prefer to skip this patch, run "git am --skip" instead. To restore the original branch and stop patching, run "git am --abort". [kitoc@hsinchu18 gcc]$ On Wed, Jan 8, 2025 at 5:04 PM <shiyulong@iscas.ac.cn> wrote: > > From: yulong <shiyulong@iscas.ac.cn> > > This patch implements the Sifvie vendor extension Xsfvcp[1] > support to gcc. Providing a flexible mechanism to extend application > processors with custom coprocessors and variable-latency arithmetic > units intrinsics. > > [1] https://www.sifive.com/document-file/sifive-vector-coprocessor-interface-vcix-software > > Co-Authored by: Jiawei Chen <jiawei@iscas.ac.cn> > Co-Authored by: Shihua Liao <shihua@iscas.ac.cn> > Co-Authored by: Yixuan Chen <chenyixuan@iscas.ac.cn> > > Diff with V3: Add new RTL mode and sifive_vector.h file and change testcase include file. > > yulong (2): > RISC-V: Add intrinsics support for SiFive Xsfvcp extensions. > RISC-V: Add intrinsics testcases for SiFive Xsfvcp extensions. > > gcc/config.gcc | 2 +- > gcc/config/riscv/constraints.md | 10 + > gcc/config/riscv/generic-vector-ooo.md | 4 + > gcc/config/riscv/genrvv-type-indexer.cc | 9 + > gcc/config/riscv/riscv-c.cc | 3 +- > .../riscv/riscv-vector-builtins-shapes.cc | 48 + > .../riscv/riscv-vector-builtins-shapes.h | 2 + > .../riscv/riscv-vector-builtins-types.def | 40 + > gcc/config/riscv/riscv-vector-builtins.cc | 362 +++++++- > gcc/config/riscv/riscv-vector-builtins.def | 30 +- > gcc/config/riscv/riscv-vector-builtins.h | 8 + > gcc/config/riscv/riscv.md | 5 +- > .../riscv/sifive-vector-builtins-bases.cc | 78 ++ > .../riscv/sifive-vector-builtins-bases.h | 3 + > .../sifive-vector-builtins-functions.def | 45 + > gcc/config/riscv/sifive-vector.md | 871 ++++++++++++++++++ > gcc/config/riscv/sifive_vector.h | 47 + > gcc/config/riscv/vector-iterators.md | 48 + > gcc/config/riscv/vector.md | 3 +- > .../gcc.target/riscv/rvv/xsfvector/sf_vc_f.c | 88 ++ > .../gcc.target/riscv/rvv/xsfvector/sf_vc_i.c | 132 +++ > .../gcc.target/riscv/rvv/xsfvector/sf_vc_v.c | 107 +++ > .../gcc.target/riscv/rvv/xsfvector/sf_vc_x.c | 138 +++ > 23 files changed, 2074 insertions(+), 9 deletions(-) > create mode 100644 gcc/config/riscv/sifive_vector.h > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_f.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_i.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_v.c > create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_x.c > > -- > 2.34.1 >
On 1/10/25 12:20 AM, Kito Cheng wrote: > Could you rebase and send the patch set again? I can't apply the patch set: > > [kitoc@hsinchu18 gcc]$ git am > /tmp/git-pw8sm7zbop/RISC-V-Add-intrinsics-support-and-testcases-for-SiFive-Xsfvcp-extension..patch > Applying: RISC-V: Add intrinsics support for SiFive Xsfvcp extensions. > error: patch failed: gcc/config/riscv/riscv-vector-builtins-types.def:369 > error: gcc/config/riscv/riscv-vector-builtins-types.def: patch does not apply > error: patch failed: gcc/config/riscv/riscv-vector-builtins.cc:3600 > error: gcc/config/riscv/riscv-vector-builtins.cc: patch does not apply > error: patch failed: gcc/config/riscv/riscv-vector-builtins.def:729 > error: gcc/config/riscv/riscv-vector-builtins.def: patch does not apply > error: patch failed: gcc/config/riscv/riscv-vector-builtins.h:297 > error: gcc/config/riscv/riscv-vector-builtins.h: patch does not apply > error: patch failed: gcc/config/riscv/vector-iterators.md:4814 > error: gcc/config/riscv/vector-iterators.md: patch does not apply > error: patch failed: gcc/config/riscv/vector.md:56 > error: gcc/config/riscv/vector.md: patch does not apply > Patch failed at 0001 RISC-V: Add intrinsics support for SiFive Xsfvcp > extensions. > hint: Use 'git am --show-current-patch=diff' to see the failed patch > When you have resolved this problem, run "git am --continue". > If you prefer to skip this patch, run "git am --skip" instead. > To restore the original branch and stop patching, run "git am --abort". > [kitoc@hsinchu18 gcc]$ Also note we are well into stage3, nearing stage4 and I think this patchset came in a month after the stage1 development window closed. I'd tend to lean towards deferring until gcc-16 development opens in a few months. Jeff
Hi, Kito: The reason is not the patch set itself. Must merge Jiawei and Shihua's patches first that are [PATCH V2] RISC-V: Update Xsfvqmacc and Xsfvfnrclip extension's testcases. <https://gcc.gnu.org/pipermail/gcc-patches/2024-December/671330.html> and [PATCH v3 1/2] RISC-V: Update Xsfvfnrclip implementation. <https://gcc.gnu.org/pipermail/gcc-patches/2024-December/671586.html> After that, this patch set will be merged successfully. 在 2025/1/10 15:20, Kito Cheng 写道: > Could you rebase and send the patch set again? I can't apply the patch set: > > [kitoc@hsinchu18 gcc]$ git am > /tmp/git-pw8sm7zbop/RISC-V-Add-intrinsics-support-and-testcases-for-SiFive-Xsfvcp-extension..patch > Applying: RISC-V: Add intrinsics support for SiFive Xsfvcp extensions. > error: patch failed: gcc/config/riscv/riscv-vector-builtins-types.def:369 > error: gcc/config/riscv/riscv-vector-builtins-types.def: patch does not apply > error: patch failed: gcc/config/riscv/riscv-vector-builtins.cc:3600 > error: gcc/config/riscv/riscv-vector-builtins.cc: patch does not apply > error: patch failed: gcc/config/riscv/riscv-vector-builtins.def:729 > error: gcc/config/riscv/riscv-vector-builtins.def: patch does not apply > error: patch failed: gcc/config/riscv/riscv-vector-builtins.h:297 > error: gcc/config/riscv/riscv-vector-builtins.h: patch does not apply > error: patch failed: gcc/config/riscv/vector-iterators.md:4814 > error: gcc/config/riscv/vector-iterators.md: patch does not apply > error: patch failed: gcc/config/riscv/vector.md:56 > error: gcc/config/riscv/vector.md: patch does not apply > Patch failed at 0001 RISC-V: Add intrinsics support for SiFive Xsfvcp > extensions. > hint: Use 'git am --show-current-patch=diff' to see the failed patch > When you have resolved this problem, run "git am --continue". > If you prefer to skip this patch, run "git am --skip" instead. > To restore the original branch and stop patching, run "git am --abort". > [kitoc@hsinchu18 gcc]$ > > > On Wed, Jan 8, 2025 at 5:04 PM<shiyulong@iscas.ac.cn> wrote: >> From: yulong<shiyulong@iscas.ac.cn> >> >> This patch implements the Sifvie vendor extension Xsfvcp[1] >> support to gcc. Providing a flexible mechanism to extend application >> processors with custom coprocessors and variable-latency arithmetic >> units intrinsics. >> >> [1]https://www.sifive.com/document-file/sifive-vector-coprocessor-interface-vcix-software >> >> Co-Authored by: Jiawei Chen<jiawei@iscas.ac.cn> >> Co-Authored by: Shihua Liao<shihua@iscas.ac.cn> >> Co-Authored by: Yixuan Chen<chenyixuan@iscas.ac.cn> >> >> Diff with V3: Add new RTL mode and sifive_vector.h file and change testcase include file. >> >> yulong (2): >> RISC-V: Add intrinsics support for SiFive Xsfvcp extensions. >> RISC-V: Add intrinsics testcases for SiFive Xsfvcp extensions. >> >> gcc/config.gcc | 2 +- >> gcc/config/riscv/constraints.md | 10 + >> gcc/config/riscv/generic-vector-ooo.md | 4 + >> gcc/config/riscv/genrvv-type-indexer.cc | 9 + >> gcc/config/riscv/riscv-c.cc | 3 +- >> .../riscv/riscv-vector-builtins-shapes.cc | 48 + >> .../riscv/riscv-vector-builtins-shapes.h | 2 + >> .../riscv/riscv-vector-builtins-types.def | 40 + >> gcc/config/riscv/riscv-vector-builtins.cc | 362 +++++++- >> gcc/config/riscv/riscv-vector-builtins.def | 30 +- >> gcc/config/riscv/riscv-vector-builtins.h | 8 + >> gcc/config/riscv/riscv.md | 5 +- >> .../riscv/sifive-vector-builtins-bases.cc | 78 ++ >> .../riscv/sifive-vector-builtins-bases.h | 3 + >> .../sifive-vector-builtins-functions.def | 45 + >> gcc/config/riscv/sifive-vector.md | 871 ++++++++++++++++++ >> gcc/config/riscv/sifive_vector.h | 47 + >> gcc/config/riscv/vector-iterators.md | 48 + >> gcc/config/riscv/vector.md | 3 +- >> .../gcc.target/riscv/rvv/xsfvector/sf_vc_f.c | 88 ++ >> .../gcc.target/riscv/rvv/xsfvector/sf_vc_i.c | 132 +++ >> .../gcc.target/riscv/rvv/xsfvector/sf_vc_v.c | 107 +++ >> .../gcc.target/riscv/rvv/xsfvector/sf_vc_x.c | 138 +++ >> 23 files changed, 2074 insertions(+), 9 deletions(-) >> create mode 100644 gcc/config/riscv/sifive_vector.h >> create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_f.c >> create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_i.c >> create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_v.c >> create mode 100644 gcc/testsuite/gcc.target/riscv/rvv/xsfvector/sf_vc_x.c >> >> -- >> 2.34.1 >>