From patchwork Sun Jan 26 07:20:45 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950578 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E0904C0218D for ; Sun, 26 Jan 2025 07:23:29 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyW-0005Co-HQ; Sun, 26 Jan 2025 02:22:32 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyG-00053K-0W for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:16 -0500 Received: from mail-oa1-x34.google.com ([2001:4860:4864:20::34]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyD-0004H6-BE for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:15 -0500 Received: by mail-oa1-x34.google.com with SMTP id 586e51a60fabf-2a3d8857a2bso1998267fac.1 for ; Sat, 25 Jan 2025 23:22:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876130; x=1738480930; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=tASVrIccjpjGo5aQU+tv0k2R2dmH/BJlEbyo67iKaFg=; b=fcPDDF7yyTJ2uld7WOCoBw6bwnFD/+Pd6ENa7ognalCu0yeqz1SBV5ZEgK/gammS7T u4WABp0RZYLxHpSNrzWX0gDUjDn+BtCqejDDPe1am+nZNVHus2j+0WjBDzvkVp/wymgd WdtIoMdxFOU8wfdxfGJulu/FERvwbEzOlJzuGJkOE5nwOUfR6pDL8ABiEGn/DX9tfUvY gey3D6UFTi0HzgRWXRgiPYqE9ICQZ5I2o+xtRn5XJS7zUGf0GEHolZYRxoEjzRc81W8i jag1RCPacgyDkX1r4FE05U2yJ3Y4rkGSLOqXqyTAXSVAH2dwOylNHgB2gniVFqKLqz6a Qk9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876130; x=1738480930; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=tASVrIccjpjGo5aQU+tv0k2R2dmH/BJlEbyo67iKaFg=; b=IirEKj34zQ8tkZVKjpadTTo6Cu0M8WUjmuosjyagiBSEeUhhCr/Ie9d1dRR9acqY/c AOtbyIUdpJSjnsL8A1tLpWZSOhHTmW3OKoszEDGf+zvHruRelFJuAVpxeKW7Mcw0QahI qkY1/TXfQwUO2N/QziMpfjdth07OmikUsP9Spvs1Oy89i41TB6YNYiaT53j4ZSNVzwrH S6Drr/AYOVCBXzAGB+g5w1eQmE5tQrT8EBjyJ/qQGZrnSp53Iaw04TAfNBNAOt6oeCa0 bfWQt+DlwY3JLrCsleGiJJNgpj+ZdiWEnsyRhsP/Ilcmf54Lp4+TN54SVe+yaF/Yu7lc z/FQ== X-Forwarded-Encrypted: i=1; AJvYcCXk7GoXIX2Xl5qiCg9rUrXoqWl8tMFbQEsbnPJWwO8wuy1W9EZqLVDh4nJdopGn0r+Z3rjZhsmfBGo9@nongnu.org X-Gm-Message-State: AOJu0Yy+RG9/BkkxjWtcrhpBKPGHVL5uIFq7Nmva8tdQfpJfOXp5UGvA uVFZuk3gCBCk5v6uoGpf/rhf3yUiEFlTpHu8Wu74wuu/YyAZYq1ftL7MdFLZTgI= X-Gm-Gg: ASbGncveBRgfAG/7sIcL4jnypon1c4+gKpZhk9TbZqw/+pO4xyUMQ9HzLcKMoccC8pP erOzNTCBZXuRkuQSCbVrQa8x98jaeFYDUvA08JyjX1cvWqlIftMSLJZVOCqqI44ADXGIzxqYfUB kkkE6Rb0gRJRfF/IrLdmf9fmcii4N8bZaGoZhPQwFtnWKR050gaNrvDW10r9pwu1yZG/5VQtJ2Q JAx7Zt1zznd5LjjneAnbCJoG1uZr2P0FIuYP753UTPD+3wc4Ya7aF0JtDxRSBNtf9q6+xzmsPi9 Da8XiVMQFZpKHSd3nVeNB+mxYXIjadeACVw0kpY= X-Google-Smtp-Source: AGHT+IE7lUZ3M28kpAixBI1dfSSf4oPN5O+kG0GIWbEegrXgyK2iOw5tmSjIaaigTxEdkDyqIh2QkA== X-Received: by 2002:a05:6871:4608:b0:2a3:d9b3:3d01 with SMTP id 586e51a60fabf-2b1c0b50794mr23350888fac.29.1737876130542; Sat, 25 Jan 2025 23:22:10 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:10 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 01/12] target/riscv: Source vector registers cannot overlap mask register Date: Sun, 26 Jan 2025 07:20:45 +0000 Message-Id: <20250126072056.4004912-2-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2001:4860:4864:20::34; envelope-from=antonb@tenstorrent.com; helo=mail-oa1-x34.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Add the relevant ISA paragraphs explaining why source (and destination) registers cannot overlap the mask register. Signed-off-by: Anton Blanchard Reviewed-by: Max Chou --- target/riscv/insn_trans/trans_rvv.c.inc | 29 ++++++++++++++++++++++--- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index b9883a5d32..20b1cb127b 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -100,10 +100,33 @@ static bool require_scale_rvfmin(DisasContext *s) } } -/* Destination vector register group cannot overlap source mask register. */ -static bool require_vm(int vm, int vd) +/* + * Source and destination vector register groups cannot overlap source mask + * register: + * + * A vector register cannot be used to provide source operands with more than + * one EEW for a single instruction. A mask register source is considered to + * have EEW=1 for this constraint. An encoding that would result in the same + * vector register being read with two or more different EEWs, including when + * the vector register appears at different positions within two or more vector + * register groups, is reserved. + * (Section 5.2) + * + * A destination vector register group can overlap a source vector + * register group only if one of the following holds: + * 1. The destination EEW equals the source EEW. + * 2. The destination EEW is smaller than the source EEW and the overlap + * is in the lowest-numbered part of the source register group. + * 3. The destination EEW is greater than the source EEW, the source EMUL + * is at least 1, and the overlap is in the highest-numbered part of + * the destination register group. + * For the purpose of determining register group overlap constraints, mask + * elements have EEW=1. + * (Section 5.2) + */ +static bool require_vm(int vm, int v) { - return (vm != 0 || vd != 0); + return (vm != 0 || v != 0); } static bool require_nf(int vd, int nf, int lmul) From patchwork Sun Jan 26 07:20:46 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950577 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C0E75C02181 for ; Sun, 26 Jan 2025 07:23:29 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyI-00053S-Fr; Sun, 26 Jan 2025 02:22:19 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyE-00052e-Tr for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:14 -0500 Received: from mail-oo1-xc35.google.com ([2607:f8b0:4864:20::c35]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyC-0004HH-Rc for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:14 -0500 Received: by mail-oo1-xc35.google.com with SMTP id 006d021491bc7-5f2d7868ef0so769038eaf.3 for ; Sat, 25 Jan 2025 23:22:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876131; x=1738480931; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=qyip6VT/5yDNDFiXFMYcFQVmq0xmW59Cv/92qKvtykg=; b=F63TYtGo0P0KQc9sJ9gequ2vCTx+4MJtm1nI9jbfofkJ+RGvjedTnrGm4ExWRL69k2 8gO7JvyRE6BMMf6Z3QnQuPsHjshD8LaS/VqxP2kdvF5JAQBtqW9ptRliuP3BuFFsxcoj PIiMycxmpTUDfdluVqu6AJdxRjXZ4nvlq8d7QgjziAbIwJm9Bqo9iE6y/9M8QnmC/vOr XZ4VSkI9jHvOXXsyzMNnO0Xtgvj9dET1uCZi28s1RBLQMun20kMDYtSRooRvuaijcVCc tvTaiwwlORLROucwS1pRZqS1ZzoC0jAcFuPGSxzE2+O7lX3gyC17adIMU5pciQBbob/Y DCyA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876131; x=1738480931; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=qyip6VT/5yDNDFiXFMYcFQVmq0xmW59Cv/92qKvtykg=; b=ZsLFjTb827epHSx1iTDOB2PxHqZF9LYNaIm6xzdHe3i/v4guMujRvYaok4lA5BnuCY kdcf4T1zoSun45lxAZxE856ogePC1wSejSuhODrXQVuLDorlju5bOIMIg3PfmAjkGaoM Ys25wMHa97oY1yJgucjyh2Xb0hJr2CjQ81LdYLJ2xAJopuNe4ijkGRUQrnW7uqZ++LW5 +1ofF8QYYUxzkbIMKmNDQScoxH39HTkw2DlsxIt90gwJyRY3JrSQWWKLdqaMvTJiCvNT u8XyIbOdwE/v5AgCkC4FcBkziiNGsT9U9h6nDeAsrE1VqEbPJJvbKwxnFThb+WpquEIH RTWg== X-Forwarded-Encrypted: i=1; AJvYcCWgB4HYY3wveYcgGRNvIJKnNocSFfXgn4IbyBQGVKX85pB5d2mEBzVIbcJqmIsU97frf70lr9alPIzC@nongnu.org X-Gm-Message-State: AOJu0YxUjKplADIv0C5NaTtufoHLybyJBJWI8qQ0fQZhEhVVjx92enSf VGqwSluN23tbnjhgor+pZCoqNtXZ6hMYZ+WulILf4a0CsT/POl+GF5bKxuLN1u4= X-Gm-Gg: ASbGncvWMnMPmhXt81m0srZ+tCNC5WauXPQ1DPeYObpEu7FPuF0+rslZtIatEqD8AMn q2sJTmQAjkMvnOSqskRDDn6D0EmzO/q96xUMutEGyh3pT+sXawH5Lio32VzNWpjHqsmInnrL6BV Pt0P+zr1WbYsMS4WEZwUF65oyJ/xKB9uz91iCSFD7DxeH46Zb104cMsEZuh5VveZ4OYtVVZsiwS 3LbunKMgCilWAtfR+PSTfbsPDMCt+VvUoeMDzDXAMBnPtZeZ4m/CU0iJVFVRGHeyDsLDk8AhRHe Nq2v/sbtAGYg9Qo4sQ1moc+N7ZPbkW/SXyoLFEk= X-Google-Smtp-Source: AGHT+IEIn9dU+TAcctC/re24Wl5VO747uEs5QGj7Pl5CBn4eHmWHjoJeL+FOfLMn+Iovi06xP9Fk/Q== X-Received: by 2002:a05:6870:af46:b0:296:aef8:fe9a with SMTP id 586e51a60fabf-2b1c09125b9mr20339679fac.7.1737876131397; Sat, 25 Jan 2025 23:22:11 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:11 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 02/12] target/riscv: handle vrgather mask and source overlap Date: Sun, 26 Jan 2025 07:20:46 +0000 Message-Id: <20250126072056.4004912-3-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::c35; envelope-from=antonb@tenstorrent.com; helo=mail-oo1-xc35.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index 20b1cb127b..c66cd95bdb 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -3453,7 +3453,9 @@ static bool vrgather_vv_check(DisasContext *s, arg_rmrr *a) require_align(a->rs1, s->lmul) && require_align(a->rs2, s->lmul) && (a->rd != a->rs2 && a->rd != a->rs1) && - require_vm(a->vm, a->rd); + require_vm(a->vm, a->rd) && + require_vm(a->vm, a->rs1) && + require_vm(a->vm, a->rs2); } static bool vrgatherei16_vv_check(DisasContext *s, arg_rmrr *a) @@ -3470,7 +3472,9 @@ static bool vrgatherei16_vv_check(DisasContext *s, arg_rmrr *a) a->rs1, 1 << MAX(emul, 0)) && !is_overlapped(a->rd, 1 << MAX(s->lmul, 0), a->rs2, 1 << MAX(s->lmul, 0)) && - require_vm(a->vm, a->rd); + require_vm(a->vm, a->rd) && + require_vm(a->vm, a->rs1) && + require_vm(a->vm, a->rs2); } GEN_OPIVV_TRANS(vrgather_vv, vrgather_vv_check) @@ -3483,7 +3487,8 @@ static bool vrgather_vx_check(DisasContext *s, arg_rmrr *a) require_align(a->rd, s->lmul) && require_align(a->rs2, s->lmul) && (a->rd != a->rs2) && - require_vm(a->vm, a->rd); + require_vm(a->vm, a->rd) && + require_vm(a->vm, a->rs2); } /* vrgather.vx vd, vs2, rs1, vm # vd[i] = (x[rs1] >= VLMAX) ? 0 : vs2[rs1] */ From patchwork Sun Jan 26 07:20:47 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950584 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C3E50C0218D for ; Sun, 26 Jan 2025 07:24:31 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyL-00055w-SZ; Sun, 26 Jan 2025 02:22:21 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyG-00053M-3h for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:16 -0500 Received: from mail-oa1-x30.google.com ([2001:4860:4864:20::30]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyD-0004HT-Nr for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:15 -0500 Received: by mail-oa1-x30.google.com with SMTP id 586e51a60fabf-2b2b6019a74so466806fac.0 for ; Sat, 25 Jan 2025 23:22:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876132; x=1738480932; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uf7peyd2COR5J9ebNbp/+78Wow2GJZZgdhDpPr51VFU=; b=bWVklSvRA5FnUsWmvosg+ZrbdFIIFmJ+B9Ej59AuyjbgjaUbDCcNBRS8HyNtWHMR/y TzMPc8FAJZoMmR/ZFUJOkm8O+vnncB27ZTpiKRtHmN6fHAwLyOVMt25c1ZRNLyjqrUnl c8gHOuMXbFonLHqFeuVqLc8dVW3DfgmklwP54VKJiBGxZ/nCQBejlQba+YdR8aMFRL68 8Q6azmXF/Zkgi9Y6ZxHc/HC9D1N9voLYDr7bW35jHA6xaN+G2ybDW1RjN9kBqyc2FO4t +91NjM7wzG65tdM2RMtjSGvlb8q2+M5pm0i4ih00/SvkCJ7+JuOf6SMhQ1wtsgP9UelX aXEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876132; x=1738480932; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uf7peyd2COR5J9ebNbp/+78Wow2GJZZgdhDpPr51VFU=; b=uHrj1x5SAxS4fm7LeO09Hioc9RIFjpHz9LN7WI17yZ7T1GHCK9IFmbHKUElbzLWVg0 8DbBSB06lYbbsbJeBPnXEmKLguht/BFirTc7fUmJpV8X+2dVJNmCMUhSJAYVEVW4rUg1 DtcvFETxvHe+prJON52ikCSg3TP+QjSuWfkg3iHqSzDsCdN4Hgf5+g4yG95t5ISJ+W6X VXTQFWXYtuYgHpRFMwSDGfIZpO81iuyj7HQYA1bhNdD5K10K8CC7R4dVoROWT01U1l6c za3RcB80PFlSvGqf+4XbSdWIJ2MvMtT24MEuUAqE647CYMHbFnYtfF7H9IWC6yTj0Mlk fZYA== X-Forwarded-Encrypted: i=1; AJvYcCWiRWR1BCHNGc5BunMSeSciotGzri6IcOLlydZbwyfqWzsZ6aDSiNkOsK+CY5w61WFFZZaiMJizpHgR@nongnu.org X-Gm-Message-State: AOJu0Yy91ef2kljaFr2DzDxchQboE47HfsVbpbhovPDB42rS9U8eLm+k DZ3AHt5zHv5yf0VEwoDRvzduyoQBNyGiI4pVuQtMaIhcDg81FYkQ21YhiFa6vKg= X-Gm-Gg: ASbGncsKo8aFTeMRPjbG/wOHWclG8TDUAabspp4Hz5gIV2J8spn7fftGjMFVjhDhdeK mA3+RfFpn/kx0vFNlQVQ8CyXiMDPTcWom5eIVQCNyvjmPlaBLjvADI07FbhGk5aD8Ud6mv04oas 2VHLBeurAJVNEclwcZ+VWJyrE/f58WBiOrpj/VYvaSpujegHZT5+G9h+2lVBqKfyncJRd6+HS0H P+pfWtD65O3tfYXtYK5ISBaR6YTpL49IlaQgOFoDevyYun/6c7O18rKZfMdlTbSP1J9wQ2lj+PP C8KShxs+DFnaT3HaKDhI5G2P4XpOW5Tbn1JB3Pg= X-Google-Smtp-Source: AGHT+IHz9BQAGsOhwiE5/ojcR1/Velq2Jz6MobNVEDu6abEIjTPxNI2otT2ranyeUJXFo+UoAmN69w== X-Received: by 2002:a05:6871:d087:b0:29e:787f:b294 with SMTP id 586e51a60fabf-2b1c0c86c2cmr20391792fac.38.1737876132313; Sat, 25 Jan 2025 23:22:12 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:11 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 03/12] target/riscv: handle vadd.vx form mask and source overlap Date: Sun, 26 Jan 2025 07:20:47 +0000 Message-Id: <20250126072056.4004912-4-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2001:4860:4864:20::30; envelope-from=antonb@tenstorrent.com; helo=mail-oa1-x30.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index c66cd95bdb..bc2780497e 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -382,6 +382,7 @@ static bool vext_check_ld_index(DisasContext *s, int vd, int vs2, static bool vext_check_ss(DisasContext *s, int vd, int vs, int vm) { return require_vm(vm, vd) && + require_vm(vm, vs) && require_align(vd, s->lmul) && require_align(vs, s->lmul); } From patchwork Sun Jan 26 07:20:48 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950583 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 80122C02181 for ; Sun, 26 Jan 2025 07:24:10 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyQ-00058H-JJ; Sun, 26 Jan 2025 02:22:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyH-00053b-Ck for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:17 -0500 Received: from mail-oa1-x2c.google.com ([2001:4860:4864:20::2c]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyF-0004Hl-Mr for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:17 -0500 Received: by mail-oa1-x2c.google.com with SMTP id 586e51a60fabf-29e842cb9b4so1094901fac.2 for ; Sat, 25 Jan 2025 23:22:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876133; x=1738480933; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=IVUb6JglmtBwfEJB/7yRdjCHmmn4LU6M2mqcUPBTqCQ=; b=hBKJvcFo0JphyfkZq1vRvZvo6N+P30NDxvlTHeEvgNp4XB92DkdA1LfIfUZA3IvPU/ WLrQM581hkUX9MjIkORCticwwkgBuOP82i0By2KMBVZMvNIZ0Em1fPS7LONAy4nIYBz5 RlHknFsdN0HEEqHJVNEmWEpBLhZhKv9IOMU9ucr1ANM2zFrx0I0famq2exMJe/WXsADS IkK/pb6HfMH7DMPJNZbRrJlIgcb7obtRIi5xHQfCb7+ugjaVDXgJbpS2QS6yzE849Ocx V6NxqTA7Vkv9KZv/pDfnVBmttbWKiaR+PQQdFvl1VpO0YIs2jEKh1DroRYg5gric8vY2 3fyw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876133; x=1738480933; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=IVUb6JglmtBwfEJB/7yRdjCHmmn4LU6M2mqcUPBTqCQ=; b=ak6wSYIhA7TiDAgJVHwnWvpBO3WGbQyputOvBRfRI+CSLh32a+699+FGc95lwn1Up2 ctxIJD8JIHxVRRm3/t5SUSD6CUn1ZB5hv90BsqHIZPM8ySEIhBqEF2eWWX3SHodjrk+u XFeQ6R1Zv8nenaUEe8HXuxdtOwgxhcisoWwBOhWw3JnVZai2bK+w83sRnvNJOr/dKuMQ yjOV+U3hkBGtx6FrvUEu+eEeQ3S+zpdKVFwgpwXNSEMYRfbHFFNj//s2MRxiXK+xTFPF pErTixBMJYEqrw0qh361A6KkPbYqsmmlbDx3cdTI91fGMCe7wQ14LsjaXefm1JxBLT2n W3Fg== X-Forwarded-Encrypted: i=1; AJvYcCWHwTm+nV75r8jcfLwewfgb422UvP4oqI3LYHLLotzz3KAh89rUnDpimuGGf9RxvR7KV8txz8Rqagih@nongnu.org X-Gm-Message-State: AOJu0YxpnpEAsceUw1jMwqOnRGXXayR48KhNw0XhzWp8/vHZ52g57p9h j9uayBHELe0eXb/CpcwZ3MHAUGcr1Hmf8IeLplVsCusokHzMhRAlAgYSdWvfyhU= X-Gm-Gg: ASbGncsajOazN3R1zTKs6s88N6Rw3qwhvmzTDb1OwTOAkvPiA6QwxvMxTLgICdv1e0X agJIkzg7ENIDIVtTcwRXBhDHCqojZFV3SeEkUdCd09GHxpLsLoMBv9mTnRIhDxRY9dZ03aZhIsD J9kkr0WApa3bUuVWIav1fDfVDRq2g7MUuPqcu38YYAoepqMTQ7LQoS+C2EYCt3eXnHEVaa8LwPi twa6GuRj0cQ7I7tYA2YoSMruBrJFGZAbbMwP75WYyEY5YsFpPgz9vSzqzKgSlXLLLd6Wub3WBri n+WX8jX1EItNMJsisF3O8ZwwJZ8oPWvxcbXtuBQ= X-Google-Smtp-Source: AGHT+IG4P2wbRvGdjsmENxQyEpUr9zOJl5b1mqVCXt/0+eGHm9dLtnR6mgbUroISJRH4t19XGAXPfw== X-Received: by 2002:a05:6871:62c2:b0:29f:97af:a1a0 with SMTP id 586e51a60fabf-2b1c0c552eemr18804659fac.24.1737876133218; Sat, 25 Jan 2025 23:22:13 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:12 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 04/12] target/riscv: handle vadd.vv form mask and source overlap Date: Sun, 26 Jan 2025 07:20:48 +0000 Message-Id: <20250126072056.4004912-5-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2001:4860:4864:20::2c; envelope-from=antonb@tenstorrent.com; helo=mail-oa1-x2c.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index bc2780497e..f5ba1c4280 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -403,6 +403,7 @@ static bool vext_check_ss(DisasContext *s, int vd, int vs, int vm) static bool vext_check_sss(DisasContext *s, int vd, int vs1, int vs2, int vm) { return vext_check_ss(s, vd, vs2, vm) && + require_vm(vm, vs1) && require_align(vs1, s->lmul); } From patchwork Sun Jan 26 07:20:49 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950586 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 55E6AC02181 for ; Sun, 26 Jan 2025 07:24:57 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyR-000595-Bf; Sun, 26 Jan 2025 02:22:27 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyG-00053W-UN for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:17 -0500 Received: from mail-oa1-x35.google.com ([2001:4860:4864:20::35]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyF-0004I6-74 for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:16 -0500 Received: by mail-oa1-x35.google.com with SMTP id 586e51a60fabf-29fe7ff65e6so1189348fac.0 for ; Sat, 25 Jan 2025 23:22:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876134; x=1738480934; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+smqj6hYDDDrzjm4GxtEQwSjZgHAIk2Z3L68pTCDUWg=; b=MzPbAK8aEGlGlrhnqJoxDimQdTUwvS3NEptFRdnUcsCBhZDRQxVvpZoJbVAnTCtUFA xa4HqQmsqN2Vxd2Sb2CO+l8mZb/O9Wqj3jsTxCqQmK7xTUIw29nxwtU03+YGGHob4Mlb GZdMSC5fdlnZPOZYTkSTF21CA5ITp+VebVmp/oqQ1KD+HE8r+iLbbNZX7S/4SWIG9eDk vdh/VbmhXmdE9Fo4zBXGvlsrjNr8FILLZMWwT5FkNOujKJoWlVDC5PYaSRRGw+INvPh0 SXaTizmTXMOG+xQowxrxEqQrxAAvDSx3NaYKgE1hI4GiLu/HlwqlZdB6pmNrwEkpp2tU fVJA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876134; x=1738480934; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+smqj6hYDDDrzjm4GxtEQwSjZgHAIk2Z3L68pTCDUWg=; b=HX6tmKxd547ysHtzl6kux7Fd5LExA9NLg9GYSSwG9JnkPKUxieGbHuUDKoKVy0MjpE Ovv9gCbdf7BRfuEFl5KDE4uc/byg2Uc2MAYJe90Oax9/kgkEIyxADwZn6P6vbZOybkIC m1ruw7uIhqt4CQQ4s0dGEWCakOc6miYuPX9jykltdFhN74tzVtkmDxmHBoU6mO9A+e9v jY2CgNddUEIXlfIziLfFa56AygAzNEvu7/P/HVkO14nO9ZzWzjC2EYgwLtDmTxu3xN0X ToXdmg4Bg0y0bCunM2wTKcEqRbuN6NtlyXCZqaq8rXn7iX1+YC/E0v8i1ecJUoZd7KCx MKog== X-Forwarded-Encrypted: i=1; AJvYcCUm6av6J3BWe2ppzMck9jilt6kIOI7BpkQPbmsICW24uNw3Jb0TrnVdt+7zyRPlWH7f0vVGYH7MEEZ8@nongnu.org X-Gm-Message-State: AOJu0YzIsM32y/U+IQU8q/QqQlnokuFr8J358bGybgKV2KpT0eoj6eXS iF9P/D53YKi78w0Wn8Y6a9bOcQpem0U9Ic+98F7dKEwsq8jRwYrzJNrueIihGjG2Q30kVOyfXFf PdqmZAw== X-Gm-Gg: ASbGncuzTYR6Lgx5JRPBHDsVkW04raEcwirmXlgsAYgikrgXbWs9nu0YPhoiBPWQ0i9 DSxIYL1pqxK8t99QvgWY6Mcyf7Rpc9K5W2NV+W6t4UoIHBzFnMdio9fLfzlSLnWrSUmvomwRtzq qNQSRqdtl6OwsflaaKVDdRTN95kWXNSVBI0epVVxRXERRRM1a0Bq7Z+/zGjCI9SpXyXhncPsuBW AylxDBaAz7VZg3mxOXqRGvv3Ek8yd+osWUCNk4gtkYM/tbJbT819S8Op3X9NHoZug+ja51tAhMP DPCR36aNZ4YopmmkqRStEYT4Dxwm5kcc35fN8wc= X-Google-Smtp-Source: AGHT+IHr+XUaqBNZRwMPH8gM5DY/G1NCWelGpQolmMa5+SOYyiAtFM/3JK/XpixZSy9g6W2XJk4Paw== X-Received: by 2002:a05:6870:6981:b0:29f:f1cc:12a5 with SMTP id 586e51a60fabf-2b1c0c025c8mr21889251fac.31.1737876134110; Sat, 25 Jan 2025 23:22:14 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:13 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 05/12] target/riscv: handle vslide1down.vx form mask and source overlap Date: Sun, 26 Jan 2025 07:20:49 +0000 Message-Id: <20250126072056.4004912-6-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2001:4860:4864:20::35; envelope-from=antonb@tenstorrent.com; helo=mail-oa1-x35.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index f5ba1c4280..a873536eea 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -609,6 +609,7 @@ static bool vext_check_slide(DisasContext *s, int vd, int vs2, { bool ret = require_align(vs2, s->lmul) && require_align(vd, s->lmul) && + require_vm(vm, vs2) && require_vm(vm, vd); if (is_over) { ret &= (vd != vs2); From patchwork Sun Jan 26 07:20:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950588 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 4F390C0218D for ; Sun, 26 Jan 2025 07:25:12 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyX-0005Cp-9N; Sun, 26 Jan 2025 02:22:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyI-000549-0G for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:18 -0500 Received: from mail-oa1-x2e.google.com ([2001:4860:4864:20::2e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyG-0004IY-6H for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:17 -0500 Received: by mail-oa1-x2e.google.com with SMTP id 586e51a60fabf-29f7b5fbc9aso1208323fac.3 for ; Sat, 25 Jan 2025 23:22:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876135; x=1738480935; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=eQFjdJhNxka24LT0P5MCvvpngkXU4jPKMvtCsHELutA=; b=haHTllrqvGKORcLj3rwMlXrpO2qlY/fvRcWAA4b/6ae/Sn0AD0xmYvTk983HRTzkVz K9kq1uq2ZL1JtK1itUDPlt06bj0zQRAxaWM6MHXtR82q9Y9viaT5GbHAYUZakJ1I+kFf 1fk00hKmubBRaJbJNS38eiMGfn2xcF/ewsqv+FFO5/NJ40itYDdYYXtTZlkNkOZP3Wl9 rq4N400GGuy5H3URydtSPYVMNQc10yMGLy8GIgPufw0uL8XEzihTLJq7cKU8aKMUIDzq NxC2Y6+ELjeJzUbKE5z0J6ckMfoNBxZNmKqNEhTNz9enGv/QR2ntkGMNeWIJEWH/gf4o x8Ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876135; x=1738480935; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=eQFjdJhNxka24LT0P5MCvvpngkXU4jPKMvtCsHELutA=; b=eXeh38SQnXf7Q3HHFidTZWQ6D7lLiW2RF+iekuRBfULGhvFEZjiPVdNWO0Hyyiy7Mv mv5mRf03dTLxh+RapbGwllI23EaZtQhWVSZxHZp1OPvnI/+F+jxRM+0cRe149RZwoEoS ghpgVgLLhmuj52ZLN/p9bKjmKSV7DkDhBI8IADmn+kEnJ29oczGVdOxFFzIGUAcBckLT 8z5Z9RVrBh3KaAGK6QL06nNuKYF5HhpCdqWpulfbBAr67/9KX0nFswKmPUGJZcnvAm7I vRb72pWosYjzCZDRIKfOFguhbYQgeSg11LeT8r7VJ6ubc5eZtbTQIz+YtcVOWxd0lNSj lPMQ== X-Forwarded-Encrypted: i=1; AJvYcCXRjRfvESI/xJY4gfgLewKsSVCkJXtoRG1smcZQDMRBgjjd8G06glKz4UFulxK73gn52wAMW0FV0MxH@nongnu.org X-Gm-Message-State: AOJu0YzJpx/dN2pIGM7VPyDpCs7C+aaUexSjYdyVkbYUL9RMNO7frEbc hCdefF48uzKup40/MCZ9UIuxtBmiAs73US5sRpZZUUBJ7SzMWnoRDCtE6PYJf74= X-Gm-Gg: ASbGncuvlBa/8XwR1AOY1qOkparZ1eLc2kKc0Wcw61+C2eWN0sxdKQRdQyAsfnCdAo5 IGqXVummgqGXOy8s7mWm8q+w1DXPBvxE7TypN7FADrhoTsfwU8i6/WRV8v6gbylF4NCKsbS75hU QDiaEVPfPOfiJ0g+r/229ildIAm0JbAfQkZGXokMW+c0OeB1pHY108mdfsY2UrEph3VQ6pHfUQe ccZFU2r3BO6u1c6oI0MD3nNR/aQhjKsAebp7JyI7CqAqtKEgPL7yZcn17I5ABvgX7+4j5HoTAgw TRENAy6yJ+VXv2V5WV7w/4DCmhW2I/c+CgW7gEk= X-Google-Smtp-Source: AGHT+IFNxCoxaEc9cmrHKIONIz8BXh3QQdX/HFAolL00O2ACI5iPu46p4s5HLYyJwujoAWJpjuU3Jw== X-Received: by 2002:a05:6870:2f14:b0:29e:353b:8f25 with SMTP id 586e51a60fabf-2b1c0a29375mr18010054fac.12.1737876135003; Sat, 25 Jan 2025 23:22:15 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:14 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 06/12] target/riscv: handle vzext.vf2 form mask and source overlap Date: Sun, 26 Jan 2025 07:20:50 +0000 Message-Id: <20250126072056.4004912-7-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2001:4860:4864:20::2e; envelope-from=antonb@tenstorrent.com; helo=mail-oa1-x2e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index a873536eea..0952bcbe2c 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -3631,6 +3631,7 @@ static bool int_ext_check(DisasContext *s, arg_rmr *a, uint8_t div) require_align(a->rd, s->lmul) && require_align(a->rs2, s->lmul - div) && require_vm(a->vm, a->rd) && + require_vm(a->vm, a->rs2) && require_noover(a->rd, s->lmul, a->rs2, s->lmul - div); return ret; } From patchwork Sun Jan 26 07:20:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950585 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 67A92C0218E for ; Sun, 26 Jan 2025 07:24:46 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyN-00056S-Cs; Sun, 26 Jan 2025 02:22:23 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyI-000554-ON for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:19 -0500 Received: from mail-oa1-x33.google.com ([2001:4860:4864:20::33]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyG-0004JW-W9 for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:18 -0500 Received: by mail-oa1-x33.google.com with SMTP id 586e51a60fabf-2a3bf796cccso1624434fac.1 for ; Sat, 25 Jan 2025 23:22:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876136; x=1738480936; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=yBsjI7aW2nO70G4tu6wAlrovv3tWfVJtXnpKYO3Mao8=; b=XyV8UybOFOH0oObZ1EoeRGq24x6h6vgKa9tITlamU+3Oz5u/1g3zwo53mBIi3HnWS1 lzwJaSFQQS9PD3yoT9TdHqNCS3uJ2nt0FF5VLATKtM8QyuF2CmsVBWTp6NRooeZkmg92 HqwQcRe048vocgmMm7sAuQDWTV3O9gbILTuZnzJSBZ886a5vYqlY/XzoCCE7yqh8iZvK GBDChEdItNe0uCu0BvZJpT+tTu8BOhnUpN4Am9Jd4jh/h+fd2op0T0T1FNBtySK3RE6/ bVl26yNokdaaaRCep3x+UrZN2XYKadazimhBQ6ZbOPbA0HHAelmJBeDL11+AbnOKoyYl UCGA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876136; x=1738480936; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=yBsjI7aW2nO70G4tu6wAlrovv3tWfVJtXnpKYO3Mao8=; b=gNuK8GHfLcoAD3enMmO1/3zAo4GwGol7Lnoju/fLySpZuQ/M5UiEEumJuCvesc8Ufv 3v9AS/zPVGTqSpN76xVMUXjnrSLhgsL70X5mgi/JDe7Rwz2Nu4xU3dQO8FG+0p7ikm3a Aa+FHLNAdax182sfOIt4F20vahcVd6ijQ2h5IjPWRQTN5+hSgp20Q12rGZ6+yt9/pswx D1Oeekcbj1MoydmoUGv8gsDsN6Ou5tmVFnvGZxGViM/K//9WmZc3wift/mWJ3apk+rgO 4+ctVD7so8MbJuXtwATaZ3QCPwV/yuNksKL1uSHsSTIt5Dvdo+56AJt3UMZtvP9Pox9a LSHg== X-Forwarded-Encrypted: i=1; AJvYcCWWQLoUmGAAC1vR3MQWcOp3jrvWb3Nl4BZBUPwLJUintYS7P9VzRmZccU76N/RUpoGHFqFGOK442spA@nongnu.org X-Gm-Message-State: AOJu0Yzr27ek/TF8E21QlaHXfRDbJDMCH1F1NuAtmL2SMjHmnbCTXaib O2D0zGdrBpRMU3OyryNw2a5DRgZUsyUYXzf0yJnLurJ5cbkTiE4cnONWG9nehvs= X-Gm-Gg: ASbGncvPWcVEOhHQvmxqDmamS5LBrf0dHNNerD1okzy+B+ujo7LdrmeML0m81Gt/Ebz M+uQo3td39XyfQkhh7g97g4IHq4xLq8jyLkTenHxgI4ra75FGfHwByAo/G1dEFiJgbLe8QIqn5l TOlJFX4/P/dCM1WeMiYHp9QXmmoYMrUgRRjPV7xdKYzuQepEq3PEM10R/oEb5DaPa2swREomd2y V/qRKa0f4x51pwX6sxktccGGluxNUzyoL7C79wD1FZsoGfeG7Tax2XHc1z32blBln2V7LRGv75s C3A0xPpCJ1hLfPY5rT7czZMMuiH0Dd3STpnvrns= X-Google-Smtp-Source: AGHT+IE6AL+BXFmwwop/qvocFxEigrnoelWWwX6AGvRIAbYALQhffyVk0yo9IQS+WHpiyxdUmwsK2Q== X-Received: by 2002:a05:6871:538e:b0:29e:5894:9de7 with SMTP id 586e51a60fabf-2b1c0cd8350mr20684770fac.33.1737876135890; Sat, 25 Jan 2025 23:22:15 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:15 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 07/12] target/riscv: handle vwadd.vx form mask and source overlap Date: Sun, 26 Jan 2025 07:20:51 +0000 Message-Id: <20250126072056.4004912-8-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2001:4860:4864:20::33; envelope-from=antonb@tenstorrent.com; helo=mail-oa1-x33.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index 0952bcbe2c..bc22b42801 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -458,13 +458,14 @@ static bool vext_check_mss(DisasContext *s, int vd, int vs1, int vs2) * instruction cannot overlap the source mask register (v0). * (Section 5.3) */ -static bool vext_wide_check_common(DisasContext *s, int vd, int vm) +static bool vext_wide_check_common(DisasContext *s, int vd, int vs, int vm) { return (s->lmul <= 2) && (s->sew < MO_64) && ((s->sew + 1) <= (s->cfg_ptr->elen >> 4)) && require_align(vd, s->lmul + 1) && - require_vm(vm, vd); + require_vm(vm, vd) && + require_vm(vm, vs); } /* @@ -498,14 +499,14 @@ static bool vext_narrow_check_common(DisasContext *s, int vd, int vs2, static bool vext_check_ds(DisasContext *s, int vd, int vs, int vm) { - return vext_wide_check_common(s, vd, vm) && + return vext_wide_check_common(s, vd, vs, vm) && require_align(vs, s->lmul) && require_noover(vd, s->lmul + 1, vs, s->lmul); } static bool vext_check_dd(DisasContext *s, int vd, int vs, int vm) { - return vext_wide_check_common(s, vd, vm) && + return vext_wide_check_common(s, vd, vs, vm) && require_align(vs, s->lmul + 1); } From patchwork Sun Jan 26 07:20:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950587 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 9908AC0218D for ; Sun, 26 Jan 2025 07:25:05 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyT-0005BS-EN; Sun, 26 Jan 2025 02:22:29 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyJ-000555-GL for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:19 -0500 Received: from mail-oo1-xc2d.google.com ([2607:f8b0:4864:20::c2d]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyH-0004KT-Vd for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:19 -0500 Received: by mail-oo1-xc2d.google.com with SMTP id 006d021491bc7-5f31d3b4f8cso779843eaf.2 for ; Sat, 25 Jan 2025 23:22:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876137; x=1738480937; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=NkUKOc7f63KB4f14kvcHLVtKZmUeheB4m0b4nPBkZmQ=; b=YsmuNnrg87+4JZTZf9IDiSVMUVFRWd2nWdZONovbT2y7fEtA/EAAehWfF1z2xfzMee wfpVsmGHz3vq3wOsp94640TsqI1kHs13vvIsv2T3/zIlLjQlPfpF/NLkTiBWuk3VxWQi U0qp2XDka8re4IYDmtnHYVaxyd6syrBRBXXRxTPoFI0xKiUaA9dQ5dFI/TO5VR1uflby ZnlkzcgTcn+oQQVsa5uczXXDgEFdiU3oul6jkoATVg2/g1z0z6MO+AQTuOMz8+L8oqz3 tqijxLUR6eds744a1mRoePyD0VrAoTKALmQAmkfn8oPignax3NOgGRaadQxOn9KVA0o2 GS8g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876137; x=1738480937; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NkUKOc7f63KB4f14kvcHLVtKZmUeheB4m0b4nPBkZmQ=; b=FjdN7oFDpCpr9DItIqBeUWvFAvNaSvT7Qg7J/XgumeP6v/JjpZVOhM8wXPMZ2bDfdF MfedzzoGGq5hNbHVOBHuSeiTvjfBcEuvvJP0ff/vFtwjcZUKlovUnOYfrYOhhmmhyeJ0 OdU19ifinJK1Ox7D9Law2oITdDSwRZ98Xi6GAixun/9pjXGyeIN2UBwBZjdLLUdyC5EB FLM0VszlJXHmFZJtZGPSIk09O/xKEY2JTZJRmgLgMINGO7tAuiK31gRA/wsfSI2IHXhH /baKQAsKK9xWZAPosKszVUGv1iNbdhX3ske2eb/HLY1nqSIQO5+3Znl3IZ71MCKxE8KL AszQ== X-Forwarded-Encrypted: i=1; AJvYcCX/kiAOU7aY7OBiH6C8fCM8sjO22n3M/3RuYlLXvNtf0/6pUOdJMusGbnCAN3xXGIkxOzdm/j873CP4@nongnu.org X-Gm-Message-State: AOJu0YwGsHmhOEoJ0VlempL9vat70SzHJ/4M5YRf7uAsUB+9O/dXvMmH HCbV2DfXFv122Bu2/H5YT1m1j7t3m+x3ANlfgHVpBMPYmSXHlN2mZEzbjtXPxKk= X-Gm-Gg: ASbGncv0E10Dp0OZ6mKnU4o8kUQSbXTp3vbi1DCYyBR3+AIHfTH1dAll56e7FPJ4UC4 QTb6VZcLaaknwZbCm8S1Xrp5mpcayRPsyO5mlypntB/7RR/358bS2/qj4LbbJ3LRmQ0osDjWS4Q NI/Zy/e0ssVG4vYhf+Q2zsnvvOU7qdLR3YRz/+VZwxZyRpwoqLsp8Rg3Tqhdx0lgeehFgImO/uf C3xWu5sMo0785pfJX7MzESo/2dNyGQCfL10DvVXV8ToTVCzslGFBLoMQLPtqCf5aozbLgACSr08 A4f/jMDIqEiCIdy5R1ja4Zk1+ohSpswoZ8ZG0tU= X-Google-Smtp-Source: AGHT+IHNHVDGpgKNAjncmJpniOQhZ7IoyN3jJ02THXQjklV9Z+0+ZOR4+BiJ/5G0o5zzj+LRgtbyfg== X-Received: by 2002:a05:6871:538b:b0:29e:51ca:68b4 with SMTP id 586e51a60fabf-2b1c0932297mr19341253fac.19.1737876136854; Sat, 25 Jan 2025 23:22:16 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.16 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:16 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 08/12] target/riscv: handle vwadd.vv form mask and source overlap Date: Sun, 26 Jan 2025 07:20:52 +0000 Message-Id: <20250126072056.4004912-9-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::c2d; envelope-from=antonb@tenstorrent.com; helo=mail-oo1-xc2d.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index bc22b42801..45b2868c54 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -525,6 +525,7 @@ static bool vext_check_dd(DisasContext *s, int vd, int vs, int vm) static bool vext_check_dss(DisasContext *s, int vd, int vs1, int vs2, int vm) { return vext_check_ds(s, vd, vs2, vm) && + require_vm(vm, vs1) && require_align(vs1, s->lmul) && require_noover(vd, s->lmul + 1, vs1, s->lmul); } From patchwork Sun Jan 26 07:20:53 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950581 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C6FB1C0218D for ; Sun, 26 Jan 2025 07:23:54 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyS-0005Af-El; Sun, 26 Jan 2025 02:22:28 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyK-00055p-H8 for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:21 -0500 Received: from mail-oo1-xc33.google.com ([2607:f8b0:4864:20::c33]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyI-0004Kt-Vg for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:20 -0500 Received: by mail-oo1-xc33.google.com with SMTP id 006d021491bc7-5f2e31139d9so1614264eaf.0 for ; Sat, 25 Jan 2025 23:22:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876137; x=1738480937; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=HyNQzKnLzp13KDqgzk70aFhYnWG09IKJOEEe7paq7Pk=; b=EvJy2pqY2u0KvzwcgVAHsR9VEabnuiZc+CZZr+dyBfiLuDWgLrlD8+R0dJjinJaKSP umqfvJgY6ALBVtO19vkn4faFDZKMI9nckw8/wmDZpofYmSmEXFqwpsBNeH8nEQBNvbXQ 1wbePIIjOqNq7Qk1I8gQhvWNjjFoPp9TOnC1kPOhowaUrxDUmoWSx8eR6kACQbCWBUiT ko1q745io6fgnfJMUUo6SugK3hec6GFY0d+qDK3J2OmEZ1LKOLLKg50chEX+A9eNMQB8 AKEl8NGtjqmZjthgRFjlJpocLXTnCOo2Uy3le+I9ILPOiouuM+dbCA3xG1KCUl2Fv55i BEjA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876137; x=1738480937; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=HyNQzKnLzp13KDqgzk70aFhYnWG09IKJOEEe7paq7Pk=; b=ErjB8QUnxftCcjfOYZbgBoqgyyNWPHqUlBZBR2x+3xvsv4Q+JpjPi4jmofRxgGHmGd yHKe7KpseXVcM/21Umm555dSTgKv2602Uew5e/gnOmkScoXFZ5jGxPcw5odfUAsunRQE oOlrjIFoaFYWk1rBPjAFho788Ydo5ZFjXolskUteYgfgU/1dPXeVpSxCIjyOtFNihE3d RB26JRfydjRXnUWlbfKJrS8UTUEXkOC2D+bwJOVBx5T2Vt4EjrjvAeiJmNcQhLyr+Iiz 6NaaS3STVQMUDGgCQ07F8Vdx5nW5sE3LEl+30+afZh1Z/TdLMqeG1GuPjVTWnGoWT1t0 GucQ== X-Forwarded-Encrypted: i=1; AJvYcCU3jOqWpHIbD6L0n72YQb2Tzn+Sk4DJ0HPpG+4BSJ3TzntNxG1GfDMb7cKRuyQK6vrza5jAzF/v2y2J@nongnu.org X-Gm-Message-State: AOJu0YzJat+ULlZ2GL1Tw1C1pg+RL9WXO6N4AdUpPwr43GeyC/4DAqgW BOBlzcSnG6D67BayEQ4D9Vqwz4qh3e/hWUSB+uqxu9497Ef1WRP+dPK5uEfSePE= X-Gm-Gg: ASbGncu78XNmhF7aQN88FQgEk4/b5fHgxnOED7lHx4DIzfVbMjVKzDw9y3UHRYXXU1f iqpGFj+8DElPfkAwilzDidLZJ+eBtpMLXuUO7xrEtSEDuyBG6fli+aUb35++JxlWmltSdJuha+C +9JyA5hD+K3SuPHQX2Ouwv/RcomFZakYeIDnbGvn7rZGM9zw+7Mqgh8SEDW0SygDfUCPyTkgg2e ppJrXnckvqhrwQWSupAx1hnckdoh3RkYkOysaCKYXqVyPQ6KIOWmNS++HyqUKOqt4WxDHOk1g/4 wofB29+wxN4TEaelfPUBu7aXnSAAR/iRI7k9LbE= X-Google-Smtp-Source: AGHT+IFXUzyh1JDgZxDfRNSaLT91+CjoUHsqbfZzWFYHw+UfcAKCkoy5kRt0elA12T2NmN9zM6mJwQ== X-Received: by 2002:a05:6870:5488:b0:29e:3921:b1ea with SMTP id 586e51a60fabf-2b1c0c4c165mr22151281fac.30.1737876137758; Sat, 25 Jan 2025 23:22:17 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:17 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 09/12] target/riscv: handle vwadd.wv form mask and source overlap Date: Sun, 26 Jan 2025 07:20:53 +0000 Message-Id: <20250126072056.4004912-10-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::c33; envelope-from=antonb@tenstorrent.com; helo=mail-oo1-xc33.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index 45b2868c54..2309d9abd0 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -548,6 +548,7 @@ static bool vext_check_dss(DisasContext *s, int vd, int vs1, int vs2, int vm) static bool vext_check_dds(DisasContext *s, int vd, int vs1, int vs2, int vm) { return vext_check_ds(s, vd, vs1, vm) && + require_vm(vm, vs2) && require_align(vs2, s->lmul + 1); } From patchwork Sun Jan 26 07:20:54 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950580 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1CBE5C02181 for ; Sun, 26 Jan 2025 07:23:43 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyT-0005C2-RR; Sun, 26 Jan 2025 02:22:31 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyL-000566-UW for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:21 -0500 Received: from mail-oi1-x234.google.com ([2607:f8b0:4864:20::234]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyK-0004LJ-0C for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:21 -0500 Received: by mail-oi1-x234.google.com with SMTP id 5614622812f47-3eb7ca55c3bso2099106b6e.3 for ; Sat, 25 Jan 2025 23:22:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876138; x=1738480938; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5j+CC1ttOcPU9/MzZw7a97b5WwSaQqX+GDCoxcWiCQA=; b=fWFO7uFRF1sI1W+YZl7uGTek5PzGKOd0ZGeAmFUpmjznPZeXRra725Kg6N+QiL6Lm/ NPLBCdYqq0WkgQ4Rzat2Q035Y277elp5OTz6fijiI/I+GJs6NKu0ZJYVvY3qzV90fMBr 34+4hTYMgFNQHdA5Kxudfqi9a26N7Ep26gKMMRg35MXebm5tQo5IlKd27tUe9/q9XFY0 Cg4UzxxNoG63paTS50MINS5kXHdeCYYduaPrfA4YehCmiYR2aiNv8xJSFKkVTcbDwdQV 8vBcrSOX7utImxHbt8MTmlXhsWKCZ6qzLeilMDAmtQ4fr7/YnyJXxEA3nbzRPwZrPT/3 tx+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876138; x=1738480938; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5j+CC1ttOcPU9/MzZw7a97b5WwSaQqX+GDCoxcWiCQA=; b=J1ItuxBN7GdzmpWASc+SbEXjNcuTSNDFQ11nDdfGbzLQCeo+F62pV2J///Dfyew6JV l2BKjlNf6LL1xjJhX037L3fOiM0AME0iC1p3QhP3kwsqsI4uiyhaFc3vr0Ad9Vt6jjaj GUF2UpklzHZP5YbEOFrvllO16lZUYos3GskVVBsnEb26fqOPApXqN2sEIXS6uf/D0jdV 0I/cE/C+29OGcClLRAZ/mEt0Oy4yH8iyMieBcu7VrTjaf0jZx8LmQJl+RirCP0aGXrT6 Rfuu7lmEdgIB3SY4uZkvU6wzlGQu0Yi++ORT0/ZBTDU4YitCn5Xjy/58AZ1dxBV7f1a4 yzGg== X-Forwarded-Encrypted: i=1; AJvYcCUUiyGkgExYYszxgC43oSv+rWxv0befdPJNlVmnDo/3FiVVFkneJN0MbEHX09Tfw8amGBw8n4O7YU8q@nongnu.org X-Gm-Message-State: AOJu0YwccufhTWEtAeJ+1bY/SHFoUuhVOTJVVN+dRYoAhjNQBJLgJw11 ciIBu24FabLpoaQ7GPztxAaMdjiHUIoCbzu1K4/0pVf48uZFtqCRJs/NeDBNtL0= X-Gm-Gg: ASbGncvwd89QvWXuTS6p64PAjw79jitGHjVR4GKfo7P6dM7g0UcGDeb2Xhlanl6pcwQ 2HuvesJmAuA2qu9fAtYWetiRXDrcjiekfESW4OFPj6seJcLM5KcnoS071rJ22glKYZAAqu5/A3Y AvZeOGmqFyEArpQeCnyrykpUIXD9RcAjkC1XjPs42UU79+aBuoBIBR0xZSG+40hiTxt/gGWtlL9 Wr4jfoYCXSyUA0aNMsMskiL2rMz6wzaKBuAGyMAJ3chRpr3ajO1dLmNsMGnM8byk1LqMt9Ir09g JaaCBw5c++xOAPdIeUIWkUWq2jikiE/NQ90OiU8RlvFGZCqCGw== X-Google-Smtp-Source: AGHT+IGsl2uYaAhbvUL2RhNcfmTrrocQbDZzF/NO/AEBWo04ilyBMYUqQlX9hsEJ4vIz/k7Oip5tpw== X-Received: by 2002:a05:6870:e2d0:b0:29e:3eff:dea with SMTP id 586e51a60fabf-2b1c084f0bfmr21003237fac.8.1737876138641; Sat, 25 Jan 2025 23:22:18 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:18 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 10/12] target/riscv: handle vwadd.wv form vs1 and vs2 overlap Date: Sun, 26 Jan 2025 07:20:54 +0000 Message-Id: <20250126072056.4004912-11-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::234; envelope-from=antonb@tenstorrent.com; helo=mail-oi1-x234.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org for 2*SEW = 2*SEW op SEW instructions vs2 and vs1 cannot overlap because it would mean a register is read with two different SEW settings. Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index 2309d9abd0..312d8b1b81 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -549,7 +549,8 @@ static bool vext_check_dds(DisasContext *s, int vd, int vs1, int vs2, int vm) { return vext_check_ds(s, vd, vs1, vm) && require_vm(vm, vs2) && - require_align(vs2, s->lmul + 1); + require_align(vs2, s->lmul + 1) && + !is_overlapped(vs2, 1 << MAX(s->lmul+1, 0), vs1, 1 << MAX(s->lmul, 0)); } static bool vext_check_sd(DisasContext *s, int vd, int vs, int vm) From patchwork Sun Jan 26 07:20:55 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950589 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 5F18EC02181 for ; Sun, 26 Jan 2025 07:25:22 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyX-0005D3-KY; Sun, 26 Jan 2025 02:22:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyN-00056x-KM for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:25 -0500 Received: from mail-oi1-x231.google.com ([2607:f8b0:4864:20::231]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyK-0004Lh-RV for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:22 -0500 Received: by mail-oi1-x231.google.com with SMTP id 5614622812f47-3ebbec36900so2074947b6e.1 for ; Sat, 25 Jan 2025 23:22:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876139; x=1738480939; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=syG75RGOgTx5HelHgSXbA5JdmQr+MnA04/L5PwImB2c=; b=F3BgYyB4Dpm6bbmRZFbG8KkYpNkJk+BqFIwWuR7XsT9mBbmKtnwNBsZYieYY5rKX5V MUxIBqRAvx5yibJxBg27zy/uTjWRS8AEGze72zPeDvKLQDJUC3kj7+XMu0nlvi7u3/lD DdadIYLUqZymytK9NfLMh6AwjCMES15xGrogPFNhVVZefFJHRf1pnj60KIlxRSAbRwqd 6UovBHLQ+ec77AH2wc7XN5HRZcMqOjn9Xgmo8lna+pUEiFCpdCfRt7TQu8CSCrIMuwCb gL+bnpf+xA0a1NtvKzVkm1yiS1B1wEKFixoeJW3vfZgFqk1MsSxa/gLJXmqyCmkIxxB7 jKyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876139; x=1738480939; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=syG75RGOgTx5HelHgSXbA5JdmQr+MnA04/L5PwImB2c=; b=Vs6Xua4c6uBHQSXCKt8wQ1mDdNzjEbTEPSksR8j7KP8BhMNvJm4dI0LWq9S+Iozmhc yAV+xQvuW154bR15qBnXavJoWbwGyCCxRyA+2uP/UZ935tlOqEZIXimenIY1iEqbs3a/ bG2cRK0cYNX7CeP528Dwe6qI9CXmnTctR8HGVtE/JqS45TOSE0avnPRBeD9kOtc9tSMw 70xgfpqL8MT7jyze3MKp2gdUFd2oVKI+ogtlZrEBJJJvRMzx62kWO2DcnpRG/n/Z+1/E ufYY1BRBM9DbbSpuCN3utJRhrfj42lOjNUqGbnly+PHBDbqxY5UVGUbsGDbGfOEoLdae rO6w== X-Forwarded-Encrypted: i=1; AJvYcCXpInen5aP4rqOnYd0lB/6P/wxWCxnGXitFfLZEJAu1a3okGr5+4gFzQpmdFx/+HQKaRa2ijoXBFQSU@nongnu.org X-Gm-Message-State: AOJu0YzOvjSZ8pMcwW+ZRDfruLXYV2azjGh0BdNWmu98EKFtEvPg2319 Q8PDYqRHdrnT6vHYkaGKDFMq4EYysL56XfT1twN8GTdQUCRnRgttJVFY3CMREgA= X-Gm-Gg: ASbGncs/5nSNFpeIoF02lnvlkT77wqulEb8cnD6hAKRfY8EENTQG7sYI3vhOT3gQEpi uM6omJTbRjDG4tPLwNq1s5IHDawP8Qm7t1TJR6MdXtatboerZPaksTL7zEp1LaHkTRZCLX7WHod a+3X7KDF63m+A+TJcP9OK06WEA6tukOXWfVFnOh4FTFLp8RIcNTEqHk9p8C1YZBe0Zk3E6Pl3gV GKtdYxUfNVosfLNxk+7Mhf85qsSdbh4qdPj/fNC2FDjMi+3ZZobkDJEaeWkgIp6Xbq8LKN/aUjl btKQ7QYGONeGfo4cLnycauynTDGxwn4J/q1Hppi0Pot+al/v0w== X-Google-Smtp-Source: AGHT+IEvFjjt3Biv6lexHmdsgnDgIbtAfLY+IE2fqpn0uGZuav8odDy0o2FhhqaH61OfWqCgb8Qkbg== X-Received: by 2002:a05:6871:7a84:b0:29e:6394:fd4a with SMTP id 586e51a60fabf-2b1c08446cemr21835940fac.2.1737876139474; Sat, 25 Jan 2025 23:22:19 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:19 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 11/12] target/riscv: Add CHECK arg to GEN_OPFVF_WIDEN_TRANS Date: Sun, 26 Jan 2025 07:20:55 +0000 Message-Id: <20250126072056.4004912-12-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::231; envelope-from=antonb@tenstorrent.com; helo=mail-oi1-x231.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Anton Blanchard Reviewed-by: Max Chou --- target/riscv/insn_trans/trans_rvv.c.inc | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index 312d8b1b81..2741f8bd8e 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -2410,10 +2410,10 @@ static bool opfvf_widen_check(DisasContext *s, arg_rmrr *a) } /* OPFVF with WIDEN */ -#define GEN_OPFVF_WIDEN_TRANS(NAME) \ +#define GEN_OPFVF_WIDEN_TRANS(NAME, CHECK) \ static bool trans_##NAME(DisasContext *s, arg_rmrr *a) \ { \ - if (opfvf_widen_check(s, a)) { \ + if (CHECK(s, a)) { \ uint32_t data = 0; \ static gen_helper_opfvf *const fns[2] = { \ gen_helper_##NAME##_h, gen_helper_##NAME##_w, \ @@ -2429,8 +2429,8 @@ static bool trans_##NAME(DisasContext *s, arg_rmrr *a) \ return false; \ } -GEN_OPFVF_WIDEN_TRANS(vfwadd_vf) -GEN_OPFVF_WIDEN_TRANS(vfwsub_vf) +GEN_OPFVF_WIDEN_TRANS(vfwadd_vf, opfvf_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwsub_vf, opfvf_widen_check) static bool opfwv_widen_check(DisasContext *s, arg_rmrr *a) { @@ -2512,7 +2512,7 @@ GEN_OPFVF_TRANS(vfrdiv_vf, opfvf_check) /* Vector Widening Floating-Point Multiply */ GEN_OPFVV_WIDEN_TRANS(vfwmul_vv, opfvv_widen_check) -GEN_OPFVF_WIDEN_TRANS(vfwmul_vf) +GEN_OPFVF_WIDEN_TRANS(vfwmul_vf, opfvf_widen_check) /* Vector Single-Width Floating-Point Fused Multiply-Add Instructions */ GEN_OPFVV_TRANS(vfmacc_vv, opfvv_check) @@ -2537,10 +2537,10 @@ GEN_OPFVV_WIDEN_TRANS(vfwmacc_vv, opfvv_widen_check) GEN_OPFVV_WIDEN_TRANS(vfwnmacc_vv, opfvv_widen_check) GEN_OPFVV_WIDEN_TRANS(vfwmsac_vv, opfvv_widen_check) GEN_OPFVV_WIDEN_TRANS(vfwnmsac_vv, opfvv_widen_check) -GEN_OPFVF_WIDEN_TRANS(vfwmacc_vf) -GEN_OPFVF_WIDEN_TRANS(vfwnmacc_vf) -GEN_OPFVF_WIDEN_TRANS(vfwmsac_vf) -GEN_OPFVF_WIDEN_TRANS(vfwnmsac_vf) +GEN_OPFVF_WIDEN_TRANS(vfwmacc_vf, opfvf_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwnmacc_vf, opfvf_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwmsac_vf, opfvf_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwnmsac_vf, opfvf_widen_check) /* Vector Floating-Point Square-Root Instruction */ From patchwork Sun Jan 26 07:20:56 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anton Blanchard X-Patchwork-Id: 13950582 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 94A25C0218D for ; Sun, 26 Jan 2025 07:24:01 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tbwyY-0005Do-I1; Sun, 26 Jan 2025 02:22:34 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tbwyO-00057R-EQ for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:25 -0500 Received: from mail-oo1-xc2f.google.com ([2607:f8b0:4864:20::c2f]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tbwyL-0004M7-Lp for qemu-devel@nongnu.org; Sun, 26 Jan 2025 02:22:24 -0500 Received: by mail-oo1-xc2f.google.com with SMTP id 006d021491bc7-5fa2685c5c0so1541114eaf.3 for ; Sat, 25 Jan 2025 23:22:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tenstorrent.com; s=google; t=1737876140; x=1738480940; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=uz1MxGS/m+B7rusrD5nYn9e+LaPbU4UbVw6Vgl0czKA=; b=XbX9BElYP2N5hVEwYD4Ev7bPGgR7GhQbzDpwXQeKptAkup4wzA0wENl+zIaP56Cuul k1dRpGx6d8SGkoLQltzdQLVx0YAUGeFzyi2DpScrHsvQRA7hczA0lx0YvMSDXA3vRcAV EYbp/rPKt5InS08sqNBnTHAENVnSgUtEFCR1pqd5e7+ZuKtJqXDaWKCEPT2PbgoPi0x8 QA5F8F6v0VtJGizzyGSO0AwU5QDF0tf/ldmkKH9b5ahKuZv0EKdLrTLXCGDgFtr2h2fX Q3BhehfwAAIDjYfScMeeGVjw4oG22fAPyNzJ7HvkR7VeXJ6MguNySQ3Wys7uiRgrm3H7 N7aQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1737876140; x=1738480940; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=uz1MxGS/m+B7rusrD5nYn9e+LaPbU4UbVw6Vgl0czKA=; b=OcgRNYs5T0y5gic+gOQYocKq0stSYmq76tU3LicZyeLnN5uE1L2jeaFsxvuJnrBLSn v3GlDh1lfJw4ARju7VICrtFxSvvm1xgn2MblbmTF2lQ6ry66ALFaX+kS5XRjGcNVi/oF gWMkuM4t8xUXP05keRbM6BQamqiw0/T8X4I+SlkdEOaGQDftQpIIs8OWL9T6IRwkjIzI Ab11XkWM/aQ56e3GpFMjs8CAbD/QEwspcPup6XXEGwv7qesm8eB8kr7x2U0rU91X5cE8 JcwGYnSFvEoZpso9ux2mFuAHZpm0HUQoOzkZH9VHdnYgXNgibjzEhH9IMuGeU922v2Lg i0Tw== X-Forwarded-Encrypted: i=1; AJvYcCWLJ2BfzTot8T1jI+X9lRH16GC/tB4sY3n5j9HvHSePC59Uu/L7pbUME6cPtEip1VRKDkxuYTSn7eAp@nongnu.org X-Gm-Message-State: AOJu0YzGgdvu0kJV4PPHEr0ce1a5IcDKUd2JpofweHhXFJb/JitzbVtA ZLJeOgNbzhaIE6xDMB5tqB0mCEOOl10Xmp+AXlsKSViMWZKLCl92qZnu+BDIvd0= X-Gm-Gg: ASbGncutoza69pupqvA9oMa8aInnVkdRJCIO10ZKlEvrDo3kkZChRDqgGuSz5HzCYGs fQU0HKXrlYqwlOmpmFtKjFHW0j9HXA1z8r/DD0WeKND7fCLDdi/2YEZzEXQJ74O0RMgyx/ZxRZa 2V5A7fUp5SCjqv2jhfAD3H0pIUuZnDBYBMYodnNlvW8tGBIxPx1dKc9QXiDb/peBqlSWixrxkoJ te47uyhlALQi+oQt7dCp7an2EbcXZjEpqNqDcMwbQyTz7xH73X8Fk3M5MNT4PfiXczQk/aN9afo ZbFtxtm1V9r60qWxEWc2xPpnJMSHI6dfZHWWSzY= X-Google-Smtp-Source: AGHT+IFW2fL7Au6aeZykeUHYJRJwUwLndMczM9WYpgKLQ444g/Qsy9LHosf9+ZLMCPLuGMOMu//Ilg== X-Received: by 2002:a05:6871:10b:b0:29d:c832:7ef6 with SMTP id 586e51a60fabf-2b1c0cddb72mr19774250fac.39.1737876140434; Sat, 25 Jan 2025 23:22:20 -0800 (PST) Received: from ausc-rvsw-c-01-anton.tenstorrent.com ([38.104.49.66]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-2b28f1d887csm1814281fac.29.2025.01.25.23.22.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 25 Jan 2025 23:22:20 -0800 (PST) From: Anton Blanchard To: qemu-riscv@nongnu.org, qemu-devel@nongnu.org Cc: Anton Blanchard , Palmer Dabbelt , Alistair Francis , Bin Meng , Weiwei Li , Daniel Henrique Barboza , Liu Zhiwei Subject: [PATCH 12/12] target/riscv: handle overlap in widening instructions with overwrite Date: Sun, 26 Jan 2025 07:20:56 +0000 Message-Id: <20250126072056.4004912-13-antonb@tenstorrent.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250126072056.4004912-1-antonb@tenstorrent.com> References: <20250126072056.4004912-1-antonb@tenstorrent.com> MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::c2f; envelope-from=antonb@tenstorrent.com; helo=mail-oo1-xc2f.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org In these instructions vd is considered a source, so no overlap is allowed between vd and vs1/vs2. See: https://github.com/riscv/riscv-isa-manual/issues/1789 Signed-off-by: Anton Blanchard --- target/riscv/insn_trans/trans_rvv.c.inc | 71 +++++++++++++++++++------ 1 file changed, 56 insertions(+), 15 deletions(-) diff --git a/target/riscv/insn_trans/trans_rvv.c.inc b/target/riscv/insn_trans/trans_rvv.c.inc index 2741f8bd8e..715008db79 100644 --- a/target/riscv/insn_trans/trans_rvv.c.inc +++ b/target/riscv/insn_trans/trans_rvv.c.inc @@ -1505,6 +1505,16 @@ static bool opivv_widen_check(DisasContext *s, arg_rmrr *a) vext_check_dss(s, a->rd, a->rs1, a->rs2, a->vm); } +/* OPIVV with overwrite and WIDEN */ +static bool opivv_overwrite_widen_check(DisasContext *s, arg_rmrr *a) +{ + return require_rvv(s) && + vext_check_isa_ill(s) && + vext_check_dss(s, a->rd, a->rs1, a->rs2, a->vm) && + !is_overlapped(a->rd, 1 << MAX(s->lmul+1, 0), a->rs1, 1 << MAX(s->lmul, 0)) && + !is_overlapped(a->rd, 1 << MAX(s->lmul+1, 0), a->rs2, 1 << MAX(s->lmul, 0)); +} + static bool do_opivv_widen(DisasContext *s, arg_rmrr *a, gen_helper_gvec_4_ptr *fn, bool (*checkfn)(DisasContext *, arg_rmrr *)) @@ -1552,6 +1562,15 @@ static bool opivx_widen_check(DisasContext *s, arg_rmrr *a) vext_check_ds(s, a->rd, a->rs2, a->vm); } +/* OPIVX with overwrite and WIDEN */ +static bool opivx_overwrite_widen_check(DisasContext *s, arg_rmrr *a) +{ + return require_rvv(s) && + vext_check_isa_ill(s) && + vext_check_ds(s, a->rd, a->rs2, a->vm) && + !is_overlapped(a->rd, 1 << MAX(s->lmul+1, 0), a->rs2, 1 << MAX(s->lmul, 0)); +} + #define GEN_OPIVX_WIDEN_TRANS(NAME, CHECK) \ static bool trans_##NAME(DisasContext *s, arg_rmrr *a) \ { \ @@ -2023,13 +2042,13 @@ GEN_OPIVX_TRANS(vmadd_vx, opivx_check) GEN_OPIVX_TRANS(vnmsub_vx, opivx_check) /* Vector Widening Integer Multiply-Add Instructions */ -GEN_OPIVV_WIDEN_TRANS(vwmaccu_vv, opivv_widen_check) -GEN_OPIVV_WIDEN_TRANS(vwmacc_vv, opivv_widen_check) -GEN_OPIVV_WIDEN_TRANS(vwmaccsu_vv, opivv_widen_check) -GEN_OPIVX_WIDEN_TRANS(vwmaccu_vx, opivx_widen_check) -GEN_OPIVX_WIDEN_TRANS(vwmacc_vx, opivx_widen_check) -GEN_OPIVX_WIDEN_TRANS(vwmaccsu_vx, opivx_widen_check) -GEN_OPIVX_WIDEN_TRANS(vwmaccus_vx, opivx_widen_check) +GEN_OPIVV_WIDEN_TRANS(vwmaccu_vv, opivv_overwrite_widen_check) +GEN_OPIVV_WIDEN_TRANS(vwmacc_vv, opivv_overwrite_widen_check) +GEN_OPIVV_WIDEN_TRANS(vwmaccsu_vv, opivv_overwrite_widen_check) +GEN_OPIVX_WIDEN_TRANS(vwmaccu_vx, opivx_overwrite_widen_check) +GEN_OPIVX_WIDEN_TRANS(vwmacc_vx, opivx_overwrite_widen_check) +GEN_OPIVX_WIDEN_TRANS(vwmaccsu_vx, opivx_overwrite_widen_check) +GEN_OPIVX_WIDEN_TRANS(vwmaccus_vx, opivx_overwrite_widen_check) /* Vector Integer Merge and Move Instructions */ static bool trans_vmv_v_v(DisasContext *s, arg_vmv_v_v *a) @@ -2370,6 +2389,18 @@ static bool opfvv_widen_check(DisasContext *s, arg_rmrr *a) vext_check_dss(s, a->rd, a->rs1, a->rs2, a->vm); } +/* Vector Widening Floating-Point Add/Subtract Instructions with overwrite */ +static bool opfvv_overwrite_widen_check(DisasContext *s, arg_rmrr *a) +{ + return require_rvv(s) && + require_rvf(s) && + require_scale_rvf(s) && + vext_check_isa_ill(s) && + vext_check_dss(s, a->rd, a->rs1, a->rs2, a->vm) && + !is_overlapped(a->rd, 1 << MAX(s->lmul+1, 0), a->rs1, 1 << MAX(s->lmul, 0)) && + !is_overlapped(a->rd, 1 << MAX(s->lmul+1, 0), a->rs2, 1 << MAX(s->lmul, 0)); +} + /* OPFVV with WIDEN */ #define GEN_OPFVV_WIDEN_TRANS(NAME, CHECK) \ static bool trans_##NAME(DisasContext *s, arg_rmrr *a) \ @@ -2409,6 +2440,16 @@ static bool opfvf_widen_check(DisasContext *s, arg_rmrr *a) vext_check_ds(s, a->rd, a->rs2, a->vm); } +static bool opfvf_overwrite_widen_check(DisasContext *s, arg_rmrr *a) +{ + return require_rvv(s) && + require_rvf(s) && + require_scale_rvf(s) && + vext_check_isa_ill(s) && + vext_check_ds(s, a->rd, a->rs2, a->vm) && + !is_overlapped(a->rd, 1 << MAX(s->lmul+1, 0), a->rs2, 1 << MAX(s->lmul, 0)); +} + /* OPFVF with WIDEN */ #define GEN_OPFVF_WIDEN_TRANS(NAME, CHECK) \ static bool trans_##NAME(DisasContext *s, arg_rmrr *a) \ @@ -2533,14 +2574,14 @@ GEN_OPFVF_TRANS(vfmsub_vf, opfvf_check) GEN_OPFVF_TRANS(vfnmsub_vf, opfvf_check) /* Vector Widening Floating-Point Fused Multiply-Add Instructions */ -GEN_OPFVV_WIDEN_TRANS(vfwmacc_vv, opfvv_widen_check) -GEN_OPFVV_WIDEN_TRANS(vfwnmacc_vv, opfvv_widen_check) -GEN_OPFVV_WIDEN_TRANS(vfwmsac_vv, opfvv_widen_check) -GEN_OPFVV_WIDEN_TRANS(vfwnmsac_vv, opfvv_widen_check) -GEN_OPFVF_WIDEN_TRANS(vfwmacc_vf, opfvf_widen_check) -GEN_OPFVF_WIDEN_TRANS(vfwnmacc_vf, opfvf_widen_check) -GEN_OPFVF_WIDEN_TRANS(vfwmsac_vf, opfvf_widen_check) -GEN_OPFVF_WIDEN_TRANS(vfwnmsac_vf, opfvf_widen_check) +GEN_OPFVV_WIDEN_TRANS(vfwmacc_vv, opfvv_overwrite_widen_check) +GEN_OPFVV_WIDEN_TRANS(vfwnmacc_vv, opfvv_overwrite_widen_check) +GEN_OPFVV_WIDEN_TRANS(vfwmsac_vv, opfvv_overwrite_widen_check) +GEN_OPFVV_WIDEN_TRANS(vfwnmsac_vv, opfvv_overwrite_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwmacc_vf, opfvf_overwrite_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwnmacc_vf, opfvf_overwrite_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwmsac_vf, opfvf_overwrite_widen_check) +GEN_OPFVF_WIDEN_TRANS(vfwnmsac_vf, opfvf_overwrite_widen_check) /* Vector Floating-Point Square-Root Instruction */