From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-sender-0.a4lg.com (mail-sender-0.a4lg.com [IPv6:2401:2500:203:30b:4000:6bfe:4757:0]) by sourceware.org (Postfix) with ESMTPS id 7AC2F3857829 for ; Wed, 3 Aug 2022 04:28:50 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 7AC2F3857829 Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail-sender-0.a4lg.com (Postfix) with ESMTPSA id CF0A0300089; Wed, 3 Aug 2022 04:28:48 +0000 (UTC) From: Tsukasa OI To: Tsukasa OI , Nelson Chu , Kito Cheng , Palmer Dabbelt Cc: binutils@sourceware.org Subject: [PATCH 4/4] RISC-V: Print comma and tabs as the `text' style Date: Wed, 3 Aug 2022 13:27:51 +0900 Message-Id: <13432197297737fb0f449ec6ef123cfdc0bff8a1.1659500861.git.research_trasio@irq.a4lg.com> In-Reply-To: References: <4919138bb21768d0cdc3a6da81dbbbd62cc96855.1657719581.git.research_trasio@irq.a4lg.com> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-12.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, GIT_PATCH_0, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: binutils@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Binutils mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Aug 2022 04:28:52 -0000 On the RISC-V disassembler, some separators have non-`text' style when printed with another word with another style. This commit splits those, making sure that those comma and tabs are printed with the `text' style. opcodes/ChangeLog: * riscv-dis.c (print_insn_args): Split and print the comma as text. (riscv_disassemble_insn): Split and print tabs as text. (riscv_disassemble_data): Likewise. --- opcodes/riscv-dis.c | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/opcodes/riscv-dis.c b/opcodes/riscv-dis.c index fe18c18642e..460f77676d2 100644 --- a/opcodes/riscv-dis.c +++ b/opcodes/riscv-dis.c @@ -373,9 +373,12 @@ print_insn_args (const char *oparg, insn_t l, bfd_vma pc, disassemble_info *info (int)EXTRACT_RVV_OFFSET (l)); break; case 'm': - if (! EXTRACT_OPERAND (VMASK, l)) - print (info->stream, dis_style_register, ",%s", - riscv_vecm_names_numeric[0]); + if (!EXTRACT_OPERAND (VMASK, l)) + { + print (info->stream, dis_style_text, ","); + print (info->stream, dis_style_register, "%s", + riscv_vecm_names_numeric[0]); + } break; } break; @@ -709,7 +712,8 @@ riscv_disassemble_insn (bfd_vma memaddr, insn_t word, disassemble_info *info) case 4: case 8: (*info->fprintf_styled_func) - (info->stream, dis_style_assembler_directive, ".%dbyte\t", insnlen); + (info->stream, dis_style_assembler_directive, ".%dbyte", insnlen); + (*info->fprintf_styled_func) (info->stream, dis_style_text, "\t"); (*info->fprintf_styled_func) (info->stream, dis_style_immediate, "0x%llx", (unsigned long long) word); break; @@ -717,7 +721,8 @@ riscv_disassemble_insn (bfd_vma memaddr, insn_t word, disassemble_info *info) { int i; (*info->fprintf_styled_func) - (info->stream, dis_style_assembler_directive, ".byte\t"); + (info->stream, dis_style_assembler_directive, ".byte"); + (*info->fprintf_styled_func) (info->stream, dis_style_text, "\t"); for (i = 0; i < insnlen; ++i) { if (i > 0) @@ -905,21 +910,24 @@ riscv_disassemble_data (bfd_vma memaddr ATTRIBUTE_UNUSED, case 1: info->bytes_per_line = 6; (*info->fprintf_styled_func) - (info->stream, dis_style_assembler_directive, ".byte\t"); - (*info->fprintf_styled_func) - (info->stream, dis_style_immediate, "0x%02x", (unsigned) data); + (info->stream, dis_style_assembler_directive, ".byte"); + (*info->fprintf_styled_func) (info->stream, dis_style_text, "\t"); + (*info->fprintf_styled_func) (info->stream, dis_style_immediate, + "0x%02x", (unsigned)data); break; case 2: info->bytes_per_line = 8; (*info->fprintf_styled_func) - (info->stream, dis_style_assembler_directive, ".short\t"); + (info->stream, dis_style_assembler_directive, ".short"); + (*info->fprintf_styled_func) (info->stream, dis_style_text, "\t"); (*info->fprintf_styled_func) (info->stream, dis_style_immediate, "0x%04x", (unsigned) data); break; case 4: info->bytes_per_line = 8; (*info->fprintf_styled_func) - (info->stream, dis_style_assembler_directive, ".word\t"); + (info->stream, dis_style_assembler_directive, ".word"); + (*info->fprintf_styled_func) (info->stream, dis_style_text, "\t"); (*info->fprintf_styled_func) (info->stream, dis_style_immediate, "0x%08lx", (unsigned long) data); @@ -927,7 +935,8 @@ riscv_disassemble_data (bfd_vma memaddr ATTRIBUTE_UNUSED, case 8: info->bytes_per_line = 8; (*info->fprintf_styled_func) - (info->stream, dis_style_assembler_directive, ".dword\t"); + (info->stream, dis_style_assembler_directive, ".dword"); + (*info->fprintf_styled_func) (info->stream, dis_style_text, "\t"); (*info->fprintf_styled_func) (info->stream, dis_style_immediate, "0x%016llx", (unsigned long long) data); -- 2.34.1