From patchwork Tue Nov 29 01:16:55 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tsukasa OI X-Patchwork-Id: 2338 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp52835wrr; Mon, 28 Nov 2022 17:17:10 -0800 (PST) X-Google-Smtp-Source: AA0mqf62Qcg/nsCOl7Go892YM9zz4cSEGMWJqDkp1RxkZCOiBDndUsnWrCrh2iesCZ5eD7OBpYMQ X-Received: by 2002:a17:906:168e:b0:7c0:78c8:1487 with SMTP id s14-20020a170906168e00b007c078c81487mr5172831ejd.340.1669684630223; Mon, 28 Nov 2022 17:17:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1669684630; cv=none; d=google.com; s=arc-20160816; b=LhJ4CbczieI7UGO7QL+SgWF+1vL3VPrFSOfRtEJlQVXkEzRIEfgQbzdoEfHDLgWu77 6jiC0+TDKz9tUV9F+bVbz3GxD4HgrJgG1c+Hxy4nkHPeYs4+o6i8k4b+zHSx10aT2zsT pMeZaA1WRRwwOKnW53VQg8awCISC7rkhSoWFlmO9zxgTVVVtYy8uHtJ2j6F8/ImBIBkQ S01463/X0XLFXIMfS2IzKFsc/5WjpTotfqsk4KZarsgGrSQL0MgwCQyPVTWFsEY+K4I8 sa2Q9XAbAkyvoY9cd7cCdVIFOJjX0EZzTxEBfmgnv0chEhqSbU7eXNgnHQPejKgF7G8u uOuw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:from:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence :content-transfer-encoding:mime-version:message-id:date:subject:cc :to:dmarc-filter:delivered-to:dkim-signature:dkim-filter; bh=CZrrlWeT3sb2URHyoZbFqI1ZwVnVK+rT2+wWs9FEC9E=; b=Ss0bTd+BRq70IwGXbhZnSE2IgcLpHwFCviwTf4Nzkwhm8qqyzBgNSlCG+Q+argVXOA gKUVnFFimHDGjXfL35kLWec6usbv69j/m9DAcN343Ywv/N1+vALWsh9YNBApMUFZMM5K 8fLGhp0cTpWX57+mGPxvi/SBuACnEUrUt+EH3HsDg25o7rZhYJV67/gHi1sHizP1HXL+ AryawbrpGZfd14bOmTRqDx7e4+YDQbPSu7wSFuxq+VLzBsEtK7gLSFcD2XLoRpqMnu8C mVUL4ZVfmKoQgDNw0nMtPh6BeDoP46fpzvmEalnvKWj6FNML1btMX+jtM7TjvHeb51SU vtMQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@sourceware.org header.s=default header.b=DwLQdXlE; spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id w5-20020a056402070500b0046b7d1b9d79si578071edx.328.2022.11.28.17.17.10 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Nov 2022 17:17:10 -0800 (PST) Received-SPF: pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.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=@sourceware.org header.s=default header.b=DwLQdXlE; spf=pass (google.com: domain of binutils-bounces+ouuuleilei=gmail.com@sourceware.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="binutils-bounces+ouuuleilei=gmail.com@sourceware.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 0EDB53858408 for ; Tue, 29 Nov 2022 01:17:09 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 0EDB53858408 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1669684629; bh=CZrrlWeT3sb2URHyoZbFqI1ZwVnVK+rT2+wWs9FEC9E=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=DwLQdXlECKJvDRW+U4qgz5bVoZlw8SKcIqDGoVoi3Xoet5ugOALy3Ws+sqrJbhcSE mic8V6nIavevzRX6JY2ATn+YvHE2cjIWp/uopTauDx7xMUQV6DqYLYkIgt1tHvBUz1 fPLCLc2AdvPs9dVuwAGuiO9PjM3T74HVd27t2F38= X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-sender-0.a4lg.com (mail-sender.a4lg.com [153.120.152.154]) by sourceware.org (Postfix) with ESMTPS id E01723858D28 for ; Tue, 29 Nov 2022 01:17:00 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E01723858D28 Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id BD96C300089; Tue, 29 Nov 2022 01:16:57 +0000 (UTC) To: Tsukasa OI Cc: binutils@sourceware.org Subject: [REVIEW ONLY 0/1] UNRATIFIED RISC-V: Add 'ZiCondOps' extension Date: Tue, 29 Nov 2022 01:16:55 +0000 Message-Id: Mime-Version: 1.0 X-Spam-Status: No, score=-6.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, SPF_HELO_NONE, 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: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Tsukasa OI via Binutils From: Tsukasa OI Reply-To: Tsukasa OI Errors-To: binutils-bounces+ouuuleilei=gmail.com@sourceware.org Sender: "Binutils" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1750791231121085826?= X-GMAIL-MSGID: =?utf-8?q?1750791231121085826?= *** WAIT FOR SPECIFICATION FREEZE *** This is an implementation for unratified and not frozen RISC-V extension and not intended to be merged for now. The only intent to submit this patchset is to test new instructions for your (possibly virtual) environment and early review for fast adoption after ratification. This patchset adds following unratified extension to GNU Binutils: - 'ZiCondOps' (Integer Conditional Operations) version 1.0 in development which adds 2 instructions ("czero.eqz" and "czero.nez"). This extension makes conditional arithmetic feature much simpler (fewer instructions when no branches are allowed). Note that constant timing guarantee (data-independence / certain side-channel resistance) for this extension is being discussed and may not be guaranteed. This is based on the commit 91e173db8678 of the specification document: Tsukasa OI (1): UNRATIFIED RISC-V: Add 'ZiCondOps' extension bfd/elfxx-riscv.c | 5 +++++ gas/testsuite/gas/riscv/zicondops-noarch.d | 3 +++ gas/testsuite/gas/riscv/zicondops-noarch.l | 3 +++ gas/testsuite/gas/riscv/zicondops.d | 11 +++++++++++ gas/testsuite/gas/riscv/zicondops.s | 3 +++ include/opcode/riscv-opc.h | 8 ++++++++ include/opcode/riscv.h | 1 + opcodes/riscv-opc.c | 4 ++++ 8 files changed, 38 insertions(+) create mode 100644 gas/testsuite/gas/riscv/zicondops-noarch.d create mode 100644 gas/testsuite/gas/riscv/zicondops-noarch.l create mode 100644 gas/testsuite/gas/riscv/zicondops.d create mode 100644 gas/testsuite/gas/riscv/zicondops.s base-commit: cb44f89ce977b1ab2d4063f2487950bddfb75bc7