[v3,3/6] RISC-V: Optimize riscv_disassemble_data printf

Message ID 0002ea716713ace4998a33dde0b81f4f890d10bf.1664793840.git.research_trasio@irq.a4lg.com
State Accepted, archived
Headers
Series RISC-V: Fix disassembler types and styles |

Checks

Context Check Description
snail/binutils-gdb-check success Github commit url

Commit Message

Tsukasa OI Oct. 3, 2022, 10:44 a.m. UTC
  This commit makes types of printf arguments on riscv_disassemble_data
as small as possible (as long as we can preserve the portability) to reduce
the cost of printf (especially on 32-bit host).

opcodes/ChangeLog:

	* riscv-dis.c (riscv_disassemble_data): Use smallest possible type
	to printing data.
---
 opcodes/riscv-dis.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)
  

Patch

diff --git a/opcodes/riscv-dis.c b/opcodes/riscv-dis.c
index 503b839f19e..70f484189f5 100644
--- a/opcodes/riscv-dis.c
+++ b/opcodes/riscv-dis.c
@@ -963,24 +963,22 @@  riscv_disassemble_data (bfd_vma memaddr ATTRIBUTE_UNUSED,
       (*info->fprintf_styled_func)
 	(info->stream, dis_style_assembler_directive, ".byte\t");
       (*info->fprintf_styled_func)
-	(info->stream, dis_style_immediate, "0x%02llx",
-	 (unsigned long long) data);
+	(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->fprintf_styled_func)
-	(info->stream, dis_style_immediate, "0x%04llx",
-	 (unsigned long long) data);
+	(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->fprintf_styled_func)
-	(info->stream, dis_style_immediate, "0x%08llx",
-	 (unsigned long long) data);
+	(info->stream, dis_style_immediate, "0x%08lx",
+	 (unsigned long) data);
       break;
     case 8:
       info->bytes_per_line = 8;