From nobody Mon Feb 9 16:34:29 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1527036132446429.8800274663597; Tue, 22 May 2018 17:42:12 -0700 (PDT) Received: from localhost ([::1]:58614 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fLHqr-0000u3-Vr for importer@patchew.org; Tue, 22 May 2018 20:42:02 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42876) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fLHU5-0000br-7G for qemu-devel@nongnu.org; Tue, 22 May 2018 20:18:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fLHTz-0001RG-RX for qemu-devel@nongnu.org; Tue, 22 May 2018 20:18:29 -0400 Received: from mail-pg0-x242.google.com ([2607:f8b0:400e:c05::242]:35803) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fLHTz-0001Qy-Ir for qemu-devel@nongnu.org; Tue, 22 May 2018 20:18:23 -0400 Received: by mail-pg0-x242.google.com with SMTP id 11-v6so6942781pge.2 for ; Tue, 22 May 2018 17:18:23 -0700 (PDT) Received: from localhost.localdomain (122-58-167-22-fibre.bb.spark.co.nz. [122.58.167.22]) by smtp.gmail.com with ESMTPSA id j1-v6sm28935626pfh.95.2018.05.22.17.18.19 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 22 May 2018 17:18:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=PumSRZDrkB4+FxR9UIVl6KAJRSziU4iholOVqQp6TUQ=; b=Mn53AEknhud9fKIGH+6n7SUCoPqGO/ZHfqq9qn7JAKvB04IKmBbRS44SKVY5CEw8Zp n4niAfvrClXEMg8wgpu5JVJXYViPYZss6qoTQCJbmNqnFOJoZt0JSMoQtmi6D/w9SJHB 97YR4AwfFNqXKJdb/DTJ0D0UZ2DergMER7wJWOllM9V+MUaDgl5oADpg+LEVgyAdcGUy ZZGs1dAtevIxLyJQP0EKStCRpzXv77V0a3Me/LdbzOdoJ24Uzj5MVgrjjE6hXc+g1opk r1mSYS5R26KHHWPNOgRQmEXWJeDeG8fePBfInyij77pr1jk3oGHkJvMiGvwDtr69gA3L xIzw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=PumSRZDrkB4+FxR9UIVl6KAJRSziU4iholOVqQp6TUQ=; b=mruHLXmokfgsh3eq7ZH39I4xgFPEMZUyhUyiVPr7Rxmp+W9gd5eLRxbelJEE3royAK 1jDAJWMiKDSJa8Bl9doT+MvLUeFzQ/j5pYD78c+z73XyKNu5o0dDDohQfxoXd5oSgmdd Byd8HyWV/wsOvSEkNJLhw7GFOK7wLvcRn3zXLt0ux/Oafg11n4YYJQo7IQ8tKkFeTGbh OYukx2ZkvryrxYfzPcTDdCTBUqwpn0NJfpF/C0yCAEgdMcOjWhhGNGBbtvqfK5ALFPsu EiCrzK06wDgnXxna8Oav5orTmlkYPbl6KQINTvtj2xkaTwqPr0J7liNzQZtpcAek3ybB u4EQ== X-Gm-Message-State: ALKqPwdzxZVZG/f1a0MqKjhLX34kleJsISnRqCxsHtFxT4XEyd/Zyy09 JGm70TeuA/xLidIsNouwyWNLpDM0wH8= X-Google-Smtp-Source: AB8JxZoN0yHpOR3dplZKq2fJNv/8cKkIW+d+Aaf2TUGzbc3Qc0UEX99Rb6KWcAdyX5Exkdd6KdeOnQ== X-Received: by 2002:a63:7804:: with SMTP id t4-v6mr483962pgc.323.1527034702377; Tue, 22 May 2018 17:18:22 -0700 (PDT) From: Michael Clark To: qemu-devel@nongnu.org Date: Wed, 23 May 2018 12:15:13 +1200 Message-Id: <1527034517-7851-27-git-send-email-mjc@sifive.com> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1527034517-7851-1-git-send-email-mjc@sifive.com> References: <1527034517-7851-1-git-send-email-mjc@sifive.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c05::242 Subject: [Qemu-devel] [PATCH v1 26/30] RISC-V: Remove unnecessary disassembler constraints X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Sagar Karandikar , Bastian Koppelmann , Palmer Dabbelt , Michael Clark , Alistair Francis , patches@groups.riscv.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Remove machine generated constraints that are not referenced by the pseudo-instruction constraints. Cc: Palmer Dabbelt Cc: Sagar Karandikar Cc: Bastian Koppelmann Cc: Alistair Francis Signed-off-by: Michael Clark Acked-by: Alistair Francis --- disas/riscv.c | 138 ------------------------------------------------------= ---- 1 file changed, 138 deletions(-) diff --git a/disas/riscv.c b/disas/riscv.c index 7fd1019623ee..27546dd7902c 100644 --- a/disas/riscv.c +++ b/disas/riscv.c @@ -87,33 +87,10 @@ typedef enum { =20 typedef enum { rvc_end, - rvc_simm_6, - rvc_imm_6, - rvc_imm_7, - rvc_imm_8, - rvc_imm_9, - rvc_imm_10, - rvc_imm_12, - rvc_imm_18, - rvc_imm_nz, - rvc_imm_x2, - rvc_imm_x4, - rvc_imm_x8, - rvc_imm_x16, - rvc_rd_b3, - rvc_rs1_b3, - rvc_rs2_b3, - rvc_rd_eq_rs1, rvc_rd_eq_ra, - rvc_rd_eq_sp, rvc_rd_eq_x0, - rvc_rs1_eq_sp, rvc_rs1_eq_x0, rvc_rs2_eq_x0, - rvc_rd_ne_x0_x2, - rvc_rd_ne_x0, - rvc_rs1_ne_x0, - rvc_rs2_ne_x0, rvc_rs2_eq_rs1, rvc_rs1_eq_ra, rvc_imm_eq_zero, @@ -2522,111 +2499,16 @@ static bool check_constraints(rv_decode *dec, cons= t rvc_constraint *c) uint8_t rd =3D dec->rd, rs1 =3D dec->rs1, rs2 =3D dec->rs2; while (*c !=3D rvc_end) { switch (*c) { - case rvc_simm_6: - if (!(imm >=3D -32 && imm < 32)) { - return false; - } - break; - case rvc_imm_6: - if (!(imm <=3D 63)) { - return false; - } - break; - case rvc_imm_7: - if (!(imm <=3D 127)) { - return false; - } - break; - case rvc_imm_8: - if (!(imm <=3D 255)) { - return false; - } - break; - case rvc_imm_9: - if (!(imm <=3D 511)) { - return false; - } - break; - case rvc_imm_10: - if (!(imm <=3D 1023)) { - return false; - } - break; - case rvc_imm_12: - if (!(imm <=3D 4095)) { - return false; - } - break; - case rvc_imm_18: - if (!(imm <=3D 262143)) { - return false; - } - break; - case rvc_imm_nz: - if (!(imm !=3D 0)) { - return false; - } - break; - case rvc_imm_x2: - if (!((imm & 0b1) =3D=3D 0)) { - return false; - } - break; - case rvc_imm_x4: - if (!((imm & 0b11) =3D=3D 0)) { - return false; - } - break; - case rvc_imm_x8: - if (!((imm & 0b111) =3D=3D 0)) { - return false; - } - break; - case rvc_imm_x16: - if (!((imm & 0b1111) =3D=3D 0)) { - return false; - } - break; - case rvc_rd_b3: - if (!(rd >=3D 8 && rd <=3D 15)) { - return false; - } - break; - case rvc_rs1_b3: - if (!(rs1 >=3D 8 && rs1 <=3D 15)) { - return false; - } - break; - case rvc_rs2_b3: - if (!(rs2 >=3D 8 && rs2 <=3D 15)) { - return false; - } - break; - case rvc_rd_eq_rs1: - if (!(rd =3D=3D rs1)) { - return false; - } - break; case rvc_rd_eq_ra: if (!(rd =3D=3D 1)) { return false; } break; - case rvc_rd_eq_sp: - if (!(rd =3D=3D 2)) { - return false; - } - break; case rvc_rd_eq_x0: if (!(rd =3D=3D 0)) { return false; } break; - case rvc_rs1_eq_sp: - if (!(rs1 =3D=3D 2)) { - return false; - } - break; case rvc_rs1_eq_x0: if (!(rs1 =3D=3D 0)) { return false; @@ -2637,26 +2519,6 @@ static bool check_constraints(rv_decode *dec, const = rvc_constraint *c) return false; } break; - case rvc_rd_ne_x0_x2: - if (!(rd !=3D 0 && rd !=3D 2)) { - return false; - } - break; - case rvc_rd_ne_x0: - if (!(rd !=3D 0)) { - return false; - } - break; - case rvc_rs1_ne_x0: - if (!(rs1 !=3D 0)) { - return false; - } - break; - case rvc_rs2_ne_x0: - if (!(rs2 !=3D 0)) { - return false; - } - break; case rvc_rs2_eq_rs1: if (!(rs2 =3D=3D rs1)) { return false; --=20 2.7.0