summaryrefslogtreecommitdiff
path: root/opcodes/riscv-dis.c
diff options
context:
space:
mode:
authorTsukasa OI <research_trasio@irq.a4lg.com>2022-09-26 11:13:51 +0000
committerTsukasa OI <research_trasio@irq.a4lg.com>2022-10-06 02:23:31 +0000
commit15543290129fde8b89b71f6e6494b88ca833c59c (patch)
tree6c3cbe057ba6428d5a30a40703c7725c5d9c3646 /opcodes/riscv-dis.c
parentf3a8023579897b27442654d7819bcc00726c352f (diff)
downloadbinutils-gdb-15543290129fde8b89b71f6e6494b88ca833c59c.tar.gz
RISC-V: Fix T-Head immediate types on printing
This commit fixes two minor typing-related issues for T-Head immediate operands. 1. A signed type must be specified when printing with %i. 2. unsigned/signed int is not portable enough for max 32-bit immediates. Instead, we should use unsigned/signed long. The format string is changed accordingly. opcodes/ChangeLog: * riscv-dis.c (print_insn_args): Fix T-Head immediate types on printing.
Diffstat (limited to 'opcodes/riscv-dis.c')
-rw-r--r--opcodes/riscv-dis.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/opcodes/riscv-dis.c b/opcodes/riscv-dis.c
index 50e634ebfda..9d733565549 100644
--- a/opcodes/riscv-dis.c
+++ b/opcodes/riscv-dis.c
@@ -597,11 +597,11 @@ print_insn_args (const char *oparg, insn_t l, bfd_vma pc, disassemble_info *info
oparg--;
if (!sign)
- print (info->stream, dis_style_immediate, "%u",
- (unsigned)EXTRACT_U_IMM (n, s, l));
+ print (info->stream, dis_style_immediate, "%lu",
+ (unsigned long)EXTRACT_U_IMM (n, s, l));
else
- print (info->stream, dis_style_immediate, "%i",
- (unsigned)EXTRACT_S_IMM (n, s, l));
+ print (info->stream, dis_style_immediate, "%li",
+ (signed long)EXTRACT_S_IMM (n, s, l));
break;
default:
goto undefined_modifier;