From patchwork Fri May 19 03:48:34 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Liao Shihua X-Patchwork-Id: 96177 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp963979vqo; Thu, 18 May 2023 20:50:00 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7/U5XkiEeP6HIcYreASk5mSqIjoDDGJAIR9atT05hz6qyP3G2PMEhGtEVioKcAfUBf+MBp X-Received: by 2002:aa7:c716:0:b0:50b:c58a:a7ae with SMTP id i22-20020aa7c716000000b0050bc58aa7aemr419689edq.4.1684468199894; Thu, 18 May 2023 20:49:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1684468199; cv=none; d=google.com; s=arc-20160816; b=XwNAT1JwF0vPqv+QmdzufUaTWroy3cFWtxvtHz9og4sa6siCZoA0WQyx6krhRaQQRh kjs8B9zgtaiOGgLJt2aoKgjFl+54MOysgmRFln3vEnotCTjLSB4dJbSl0XV/H1C3Dh0t Ix3NxzdGkzsp/OWiS/pGiG8Og3i0vsLMqN8CZpXirvEdW78UQJOTgxpkfjfkODGONyIA 9pp1+PyExsvTXu53ix/BQj2aw1C9YLo34pSDiljKnSvj+wyOQ5bJpI06gZ7N0jJ8/khl nxn0z91001v/gQa6kFi+TZAnrgjYN0EREVKiIkp/DD/V0WZFX+g/m2hN7NrqcAS0/V4I B3Yw== 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:references:in-reply-to:message-id:date:subject:cc:to :from:dmarc-filter:delivered-to; bh=5qYEje3zvSQT0V7J4fmp94KPHcPdbyaqaaCxwASyFac=; b=GOtLP3ZT/IMcoBQQeQ5t/K5/khR0L4mcL9WHdVI1QwJNDzVSCrD8plG9jnCtzyJrqA 7y4Pb5nngsSZGTvODOd3BYy5lRHSitnrJk8JOybAZoq1dKaqMpg3VJJKc5qiS3j5olTQ Ry9pOboPjxeu1bs/Bled+jkUb9TjBGe0RK2mFTZofNHs/wMOBzIxS3fwVl/CB4KJ1p6p l42IWMNXBrZJzBpK7a75F0jll2vN2wZ7Mx6iqzlIZtQcxpVlxTdc4ruQ5AYVVNNNs6fV LZofpS2ayh5lciw09xU1np9W1E5kNFgDU3NsijKpM7vmZc9gPA7kfdgo69eZ9/BV2o8U 4Www== ARC-Authentication-Results: i=1; mx.google.com; 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 c10-20020aa7c74a000000b0051085449b4fsi2043168eds.450.2023.05.18.20.49.59 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 18 May 2023 20:49:59 -0700 (PDT) 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; 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 CB0CE3870F30 for ; Fri, 19 May 2023 03:49:26 +0000 (GMT) X-Original-To: binutils@sourceware.org Delivered-To: binutils@sourceware.org Received: from cstnet.cn (smtp25.cstnet.cn [159.226.251.25]) by sourceware.org (Postfix) with ESMTPS id DAF843856972 for ; Fri, 19 May 2023 03:49:09 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org DAF843856972 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=iscas.ac.cn Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=iscas.ac.cn Received: from localhost.localdomain (unknown [39.170.88.238]) by APP-05 (Coremail) with SMTP id zQCowAAHuxGt8WZk_iYmAQ--.24085S5; Fri, 19 May 2023 11:49:03 +0800 (CST) From: Liao Shihua To: binutils@sourceware.org Cc: kito.cheng@sifive.com, jiawei@iscas.ac.cn, palmer@dabbelt.com, guoren@kernel.org, wuwei2016@iscas.ac.cn, shiyulong@iscas.ac.cn, chenyixuan@iscas.ac.cn, Liao Shihua Subject: [RFC PATCH 3/4] RISC-V : Add rv64 ilp32 support in disassemble Date: Fri, 19 May 2023 11:48:34 +0800 Message-Id: <20230519034835.664-4-shihua@iscas.ac.cn> X-Mailer: git-send-email 2.38.1.windows.1 In-Reply-To: <20230519034835.664-1-shihua@iscas.ac.cn> References: <20230519034835.664-1-shihua@iscas.ac.cn> MIME-Version: 1.0 X-CM-TRANSID: zQCowAAHuxGt8WZk_iYmAQ--.24085S5 X-Coremail-Antispam: 1UD129KBjvJXoW7WFWxKFy3trykJF4UWw4rZrb_yoW8AFyxpa y5KF4DZ3WrZF18Crs8CayDWF4jyFWYgr98KrsrWF45AF13Xr47XFs7t3WS93y8tF4fCw1j v3W29r42qwsaqaDanT9S1TB71UUUUU7qnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUU9G14x267AKxVWrJVCq3wAFc2x0x2IEx4CE42xK8VAvwI8IcIk0 rVWrJVCq3wAFIxvE14AKwVWUJVWUGwA2048vs2IY020E87I2jVAFwI0_JrWl82xGYIkIc2 x26xkF7I0E14v26ryj6s0DM28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48ve4kI8wA2z4x0 Y4vE2Ix0cI8IcVAFwI0_Gr0_Xr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI0_Cr0_Gr1UM2 8EF7xvwVC2z280aVAFwI0_Gr1j6F4UJwA2z4x0Y4vEx4A2jsIEc7CjxVAFwI0_Cr1j6rxd M2AIxVAIcxkEcVAq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6xIIjx v20xvE14v26r106r15McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_Gr1l F7xvr2IYc2Ij64vIr41lF7I21c0EjII2zVCS5cI20VAGYxC7MxAIw28IcxkI7VAKI48JMx C20s026xCaFVCjc4AY6r1j6r4UMI8I3I0E5I8CrVAFwI0_Jr0_Jr4lx2IqxVCjr7xvwVAF wI0_JrI_JrWlx4CE17CEb7AF67AKxVWUtVW8ZwCIc40Y0x0EwIxGrwCI42IY6xIIjxv20x vE14v26r1j6r1xMIIF0xvE2Ix0cI8IcVCY1x0267AKxVW8JVWxJwCI42IY6xAIw20EY4v2 0xvaj40_Jr0_JF4lIxAIcVC2z280aVAFwI0_Jr0_Gr1lIxAIcVC2z280aVCY1x0267AKxV W8JVW8JrUvcSsGvfC2KfnxnUUI43ZEXa7VU1VOJ5UUUUU== X-Originating-IP: [39.170.88.238] X-CM-SenderInfo: xvklx33d6l2u1dvotugofq/1tbiAwcQEWRmwMazpQAAsX X-Spam-Status: No, score=-13.2 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, RCVD_IN_DNSWL_LOW, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , 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?1766292927140204983?= X-GMAIL-MSGID: =?utf-8?q?1766292927140204983?= This patch supports rv64 ilp32 in disassemble. opcodes/ChangeLog: * riscv-dis.c (print_insn_args): (riscv_disassemble_insn): --- opcodes/riscv-dis.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/opcodes/riscv-dis.c b/opcodes/riscv-dis.c index f25993d1e45..550cabf875e 100644 --- a/opcodes/riscv-dis.c +++ b/opcodes/riscv-dis.c @@ -263,7 +263,7 @@ print_insn_args (const char *oparg, insn_t l, bfd_vma pc, disassemble_info *info case 'j': if (((l & MASK_C_ADDI) == MATCH_C_ADDI) && rd != 0) maybe_print_address (pd, rd, EXTRACT_CITYPE_IMM (l), 0); - if (info->mach == bfd_mach_riscv64 + if ((info->mach == bfd_mach_riscv64 || info->mach == bfd_mach_riscv64x32) && ((l & MASK_C_ADDIW) == MATCH_C_ADDIW) && rd != 0) maybe_print_address (pd, rd, EXTRACT_CITYPE_IMM (l), 1); print (info->stream, dis_style_immediate, "%d", @@ -463,7 +463,7 @@ print_insn_args (const char *oparg, insn_t l, bfd_vma pc, disassemble_info *info if (((l & MASK_ADDI) == MATCH_ADDI && rs1 != 0) || (l & MASK_JALR) == MATCH_JALR) maybe_print_address (pd, rs1, EXTRACT_ITYPE_IMM (l), 0); - if (info->mach == bfd_mach_riscv64 + if ((info->mach == bfd_mach_riscv64 || info->mach == bfd_mach_riscv64x32) && ((l & MASK_ADDIW) == MATCH_ADDIW) && rs1 != 0) maybe_print_address (pd, rs1, EXTRACT_ITYPE_IMM (l), 1); print (info->stream, dis_style_immediate, "%d", @@ -724,7 +724,7 @@ riscv_disassemble_insn (bfd_vma memaddr, if (op != NULL) { /* If XLEN is not known, get its value from the ELF class. */ - if (info->mach == bfd_mach_riscv64) + if (info->mach == bfd_mach_riscv64 || info->mach == bfd_mach_riscv64x32) xlen = 64; else if (info->mach == bfd_mach_riscv32) xlen = 32;