From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from cstnet.cn (smtp21.cstnet.cn [159.226.251.21]) by sourceware.org (Postfix) with ESMTP id EDF3C3857345 for ; Mon, 9 May 2022 02:30:23 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org EDF3C3857345 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 Received: from localhost.localdomain (unknown [47.88.16.30]) by APP-01 (Coremail) with SMTP id qwCowAAHnhW1fHhiW9HtBA--.30690S2; Mon, 09 May 2022 10:30:17 +0800 (CST) From: shiyulong@iscas.ac.cn To: gcc-patches@gcc.gnu.org Cc: andrew@sifive.com, palmer@dabbelt.com, kito.cheng@gmail.com, jim.wilson.gcc@gmail.com, wuwei2016@iscas.ac.cn, jiawei@iscas.ac.cn, shihua@iscas.ac.cn, sinan@isrc.iscas.ac.cn, yulong Subject: [PATCH V3 0/3] RISC-V:Add mininal support for Zicbo[mzp] Date: Mon, 9 May 2022 10:29:36 +0800 Message-Id: <20220509022939.21636-1-shiyulong@iscas.ac.cn> X-Mailer: git-send-email 2.17.1 X-CM-TRANSID: qwCowAAHnhW1fHhiW9HtBA--.30690S2 X-Coremail-Antispam: 1UD129KBjvJXoW7uF4UJw4UJrW5tr48ur45Jrb_yoW8tF45pF 47Gw1Yyr98JF97Wrs3KFWUXa15KrsagrW5uwn7Aw1xtrWSvrW2vF1ktw17CF45XFyUJryf CF4a9w15uw1Yv3DanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUU9Y14x267AKxVW8JVW5JwAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2ocxC64kIII0Yj41l84x0c7CEw4AK67xGY2AK02 1l84ACjcxK6xIIjxv20xvE14v26F1j6w1UM28EF7xvwVC0I7IYx2IY6xkF7I0E14v26r4U JVWxJr1l84ACjcxK6I8E87Iv67AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVCY1x0267AKxV W8Jr0_Cr1UM2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40Ex7xf McIj6xIIjxv20xvE14v26r1j6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7 v_Jr0_Gr1lF7xvr2IYc2Ij64vIr41lF7I21c0EjII2zVCS5cI20VAGYxC7M4IIrI8v6xkF 7I0E8cxan2IY04v7M4kE6xkIj40Ew7xC0wCF04k20xvY0x0EwIxGrwCFx2IqxVCFs4IE7x kEbVWUJVW8JwC20s026c02F40E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI8E 67AF67kF1VAFwI0_Jw0_GFylIxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCw CI42IY6xIIjxv20xvEc7CjxVAFwI0_Jr0_Gr1lIxAIcVCF04k26cxKx2IYs7xG6rW3Jr0E 3s1lIxAIcVC2z280aVAFwI0_Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxVWUJVW8JbIYCT nIWIevJa73UjIFyTuYvjfUOxhLUUUUU X-Originating-IP: [47.88.16.30] X-CM-SenderInfo: 5vkl53porqwq5lvft2wodfhubq/ X-Spam-Status: No, score=-3.6 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, KAM_SHORT, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 May 2022 02:30:28 -0000 From: yulong This patchset adds support for three recently ratified RISC-V extensions: - Zicbom (Cache-Block Management Instructions) - Zicbom (Cache-Block Management Instructions) - Zicboz (Cache-Block Zero Instructions) Patch 1: Add Zicbom/z/p mininal support Patch 2: Add Zicbom/z/p instructions arch support Patch 3: Add Zicbom/z/p instructions testcases diff with the previous two versions: 1.The naming of builtin caused oddities, so we have changed the names of builtin. 2.According to spec, we have changed the format of the prefetch.i instruction. cf. ; yulong (3): RISC-V: Add mininal support for Zicbo[mzp] RISC-V:Cache Management Operation instructions RISC-V:Cache Management Operation instructions testcases gcc/common/config/riscv/riscv-common.cc | 8 +++ gcc/config/riscv/predicates.md | 4 ++ gcc/config/riscv/riscv-builtins.cc | 16 ++++++ gcc/config/riscv/riscv-cmo.def | 17 ++++++ gcc/config/riscv/riscv-ftypes.def | 4 ++ gcc/config/riscv/riscv-opts.h | 8 +++ gcc/config/riscv/riscv.md | 52 +++++++++++++++++++ gcc/config/riscv/riscv.opt | 3 ++ gcc/testsuite/gcc.target/riscv/cmo-zicbom-1.c | 21 ++++++++ gcc/testsuite/gcc.target/riscv/cmo-zicbom-2.c | 21 ++++++++ gcc/testsuite/gcc.target/riscv/cmo-zicbop-1.c | 23 ++++++++ gcc/testsuite/gcc.target/riscv/cmo-zicbop-2.c | 23 ++++++++ gcc/testsuite/gcc.target/riscv/cmo-zicboz-1.c | 9 ++++ gcc/testsuite/gcc.target/riscv/cmo-zicboz-2.c | 9 ++++ 14 files changed, 218 insertions(+) create mode 100644 gcc/config/riscv/riscv-cmo.def create mode 100644 gcc/testsuite/gcc.target/riscv/cmo-zicbom-1.c create mode 100644 gcc/testsuite/gcc.target/riscv/cmo-zicbom-2.c create mode 100644 gcc/testsuite/gcc.target/riscv/cmo-zicbop-1.c create mode 100644 gcc/testsuite/gcc.target/riscv/cmo-zicbop-2.c create mode 100644 gcc/testsuite/gcc.target/riscv/cmo-zicboz-1.c create mode 100644 gcc/testsuite/gcc.target/riscv/cmo-zicboz-2.c -- 2.17.1