From patchwork Fri Jan 20 19:55:26 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Christoph_M=C3=BCllner?= X-Patchwork-Id: 4335 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp395938wrn; Fri, 20 Jan 2023 11:55:44 -0800 (PST) X-Google-Smtp-Source: AMrXdXsf5hgDG1OFOz5pR1BLYRft0Ab/tjBrVqJy+Yipz7ywqT/Ux6e2dn6wr7b9ObSs8p4buFNF X-Received: by 2002:a17:907:7248:b0:872:b1d7:8028 with SMTP id ds8-20020a170907724800b00872b1d78028mr20803897ejc.3.1674244544565; Fri, 20 Jan 2023 11:55:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674244544; cv=none; d=google.com; s=arc-20160816; b=avpmVZazKWGxh09vVJX1QDv/WIKl91rPuBSpDnMbvpLSrhyZXpWk2J7iJt51qdy8ck pmM06b+hymylhiLKggNQt3TAoDtYe3ECj7nU5bprGCb5j4xey7BGOrx+lSjuuAkIO/ES rECSSjANvUkbEcXGwynLg9kBzJSVvOay8wQS+fpUWFk0nTAAfpIr7mmz1Un49TMFqs2N vvr8EaXRklg+sW9spxmTnoAG2Q3X2cgfKWyIb04dAwJjaowFK+jdAn4qtmrUzTkoIXP3 tIkSPVelc68qJzoCCuIE2VQqeIe5xBeJRtTdcEbgfmiRUHjGFMiiO9+S6dpeTWoH0MQ0 PXsw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender: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 :dmarc-filter:delivered-to; bh=2FdQsNY/wSWtZjYvO2IPEQE5dQ1Qfz3XZt4xIBZ61QM=; b=CCnCZO41Avvm/AxlYV725ZNxHFF8GzNnYVn9rwD38NRXOx85QaiQvc1eXxiMCZVWfd r2RHSejZEuNXrHUscey6bOJIiB0s1dPBNDiHCFvg1oe+WgBSNEJDMqks28vgF4QfDIZQ uv2aWZlH6ok1KyW0kI1ytQZZHfvsj2jay68hebohpq9nQYlFS4iJjduWfN5toqSrXEgW +sJtDGFRxRuULl6KeYjuHCGpTIoEUeXUNhuGSGaHW/8yeOiSmtW1YL+XPQr2CzDs1/KD vALyj3oFSa74/eF0oigbRAX3dHQZJrDbXMcP7K3koEeKq0+ulfoFSWN3xwlLdX5ocv4S fFYw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@vrull.eu header.s=google header.b=Y5pb6jXm; 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" Received: from sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id o21-20020a170906975500b0084d1323cf70si50070521ejy.599.2023.01.20.11.55.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jan 2023 11:55:44 -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=@vrull.eu header.s=google header.b=Y5pb6jXm; 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" Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id E47923858002 for ; Fri, 20 Jan 2023 19:55:42 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from mail-wm1-x336.google.com (mail-wm1-x336.google.com [IPv6:2a00:1450:4864:20::336]) by sourceware.org (Postfix) with ESMTPS id E4D6C3858C50 for ; Fri, 20 Jan 2023 19:55:36 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org E4D6C3858C50 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=vrull.eu Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=vrull.eu Received: by mail-wm1-x336.google.com with SMTP id l8so4884216wms.3 for ; Fri, 20 Jan 2023 11:55:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vrull.eu; s=google; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=2FdQsNY/wSWtZjYvO2IPEQE5dQ1Qfz3XZt4xIBZ61QM=; b=Y5pb6jXmmFpjOnJMIt92oiy+Wzn1Pk0BLsywJwO0EopYNv3TBh5D01yRMj2rZxmY9X LnTq4Bct35FUnvsvx8JLkU3lfwA0vzpEQQ/Gog4o+dBACurjZj+7kv7V4JIiuoM3vV/a C11UH72rMgybY0xckteLO1HXTG5pG4KMrpulNnIiuVfTqI6ILtU0VOyh4os8IiN+o8Tb 1/p8+9PSX1HBqseW8tP6Y3cVEMxrLKMPysvsVOMs/KDInh++8QZi3PxmT+8V07bN2VXM K5dXqRjaGLw1aoixILn6xPXBYsZuvd9aBhHqqQRtf7gC7UAj84jQDoqPch1Qj17vHlST +ZVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=2FdQsNY/wSWtZjYvO2IPEQE5dQ1Qfz3XZt4xIBZ61QM=; b=NXpAxmKOvcshzbD9bEbLJ3EoWPXZT0KCTq+wPsfUwTELm+8boNC946T4YJQKxH3gNT 5gUZ5mLFdgy/lvqWMNavU1Djk8jrh8tNENl+v5e1hz2ai0KtAMGo0K0KyDY9TkwjVyCb dMlaBt0dLePcnT7BUjLp38v9zH15/FmDP1pUIENxz747SsKVOGfH1v+qjKqOwnf/OYvn BwBejAjmfHgYM1ISZz5W33yqoAYst4aaNLmfD57jqikJuLHNR3bhP8+wPihp7HcPYegx 4RocsKslOGwiH18Y4XzRT+jIomYuxT6kiyxvheItYOpxOwPXUFmICHTfMxDv00fTbC0r ROaw== X-Gm-Message-State: AFqh2koGFHJ5zh9K89bAZamfO8OV4BxM8Js2KvYdj6i7iDLKYVawIqJs 2NCgmSnk5Cf3p8yRdP0yXIBZnzM1Prevn7WJ X-Received: by 2002:a05:600c:4395:b0:3c6:f7ff:6f87 with SMTP id e21-20020a05600c439500b003c6f7ff6f87mr14907109wmn.11.1674244535253; Fri, 20 Jan 2023 11:55:35 -0800 (PST) Received: from beast.fritz.box (62-178-148-172.cable.dynamic.surfer.at. [62.178.148.172]) by smtp.gmail.com with ESMTPSA id m9-20020a7bca49000000b003c65c9a36dfsm3050553wml.48.2023.01.20.11.55.34 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Jan 2023 11:55:34 -0800 (PST) From: Christoph Muellner To: binutils@sourceware.org, Nelson Chu , Andrew Waterman , Palmer Dabbelt , Jim Wilson , Philipp Tomsich , Elda Kuka , Aaron Durbin , Andrew de los Reyes , Eric Gouriou , Barna Ibrahim , Jeff Law Cc: =?utf-8?q?Christoph_M=C3=BCllner?= Subject: [RFC PATCH v2 0/6] RISC-V: Add support for vector crypto extensions Date: Fri, 20 Jan 2023 20:55:26 +0100 Message-Id: <20230120195532.917113-1-christoph.muellner@vrull.eu> X-Mailer: git-send-email 2.39.0 MIME-Version: 1.0 X-Spam-Status: No, score=-6.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, JMQ_SPF_NEUTRAL, KAM_MANYTO, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, 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: 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: , 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?1755572647582578808?= X-GMAIL-MSGID: =?utf-8?q?1755572647582578808?= From: Christoph Müllner This series add support for the vector crypto extensions: * Zvkb * Zvkg * Zvknh[a,b] * Zvkns * Zvksed * Zvksh The implementation follows the version 20230118 of the specification, which can be found here: https://github.com/riscv/riscv-crypto/releases/tag/v20230118 Note, that this specification is not frozen yet, meaning that incompatible changes are possible. Therefore, this patchset is marked as RFC and should not be considered for upstream inclusion. All extensions come with (passing) tests. A branch with all patches applied can be found in this GitHub repo: https://github.com/cmuellner/binutils-gdb/tree/riscv-zvk-v2 Christoph Müllner (6): RISC-V: Add Zvkb ISA extension support RISC-V: Add Zvkg ISA extension support RISC-V: Add Zvknh[a,b] ISA extension support RISC-V: Add Zvkns ISA extension support RISC-V: Add Zvksed ISA extension support RISC-V: Add Zvksh ISA extension support bfd/elfxx-riscv.c | 38 ++++++++ gas/config/tc-riscv.c | 13 +++ gas/testsuite/gas/riscv/zvkb.d | 36 ++++++++ gas/testsuite/gas/riscv/zvkb.s | 28 ++++++ gas/testsuite/gas/riscv/zvkg.d | 9 ++ gas/testsuite/gas/riscv/zvkg.s | 1 + gas/testsuite/gas/riscv/zvknha.d | 12 +++ gas/testsuite/gas/riscv/zvknha_zvknhb.s | 3 + gas/testsuite/gas/riscv/zvknhb.d | 12 +++ gas/testsuite/gas/riscv/zvkns.d | 21 +++++ gas/testsuite/gas/riscv/zvkns.s | 13 +++ gas/testsuite/gas/riscv/zvksed.d | 12 +++ gas/testsuite/gas/riscv/zvksed.s | 4 + gas/testsuite/gas/riscv/zvksh.d | 11 +++ gas/testsuite/gas/riscv/zvksh.s | 3 + include/opcode/riscv-opc.h | 114 ++++++++++++++++++++++++ include/opcode/riscv.h | 12 +++ opcodes/riscv-dis.c | 4 + opcodes/riscv-opc.c | 46 ++++++++++ 19 files changed, 392 insertions(+) create mode 100644 gas/testsuite/gas/riscv/zvkb.d create mode 100644 gas/testsuite/gas/riscv/zvkb.s create mode 100644 gas/testsuite/gas/riscv/zvkg.d create mode 100644 gas/testsuite/gas/riscv/zvkg.s create mode 100644 gas/testsuite/gas/riscv/zvknha.d create mode 100644 gas/testsuite/gas/riscv/zvknha_zvknhb.s create mode 100644 gas/testsuite/gas/riscv/zvknhb.d create mode 100644 gas/testsuite/gas/riscv/zvkns.d create mode 100644 gas/testsuite/gas/riscv/zvkns.s create mode 100644 gas/testsuite/gas/riscv/zvksed.d create mode 100644 gas/testsuite/gas/riscv/zvksed.s create mode 100644 gas/testsuite/gas/riscv/zvksh.d create mode 100644 gas/testsuite/gas/riscv/zvksh.s