summaryrefslogtreecommitdiff
path: root/opcodes/xtensa-dis.c
diff options
context:
space:
mode:
authorMax Filippov <jcmvbkbc@gmail.com>2023-01-02 21:17:53 -0800
committerMax Filippov <jcmvbkbc@gmail.com>2023-01-03 13:30:57 -0800
commit39086586b7111c3f8480e763ad205b7f4de65ffe (patch)
treee1e020fc4174641633181bcd02bfe7e71aff7572 /opcodes/xtensa-dis.c
parenta7d5fcaf8e15820f997ba7774a8eef7ab7e2f2e3 (diff)
downloadbinutils-gdb-39086586b7111c3f8480e763ad205b7f4de65ffe.tar.gz
opcodes: xtensa: implement styled disassembly
opcodes/ * xtensa-dis.c (print_xtensa_operand) (print_insn_xtensa): Replace fprintf_func with fprintf_styled_func.
Diffstat (limited to 'opcodes/xtensa-dis.c')
-rw-r--r--opcodes/xtensa-dis.c33
1 files changed, 22 insertions, 11 deletions
diff --git a/opcodes/xtensa-dis.c b/opcodes/xtensa-dis.c
index 8a26fd7c123..3631f7fad71 100644
--- a/opcodes/xtensa-dis.c
+++ b/opcodes/xtensa-dis.c
@@ -238,24 +238,28 @@ print_xtensa_operand (bfd_vma memaddr,
else
{
if ((signed_operand_val > -256) && (signed_operand_val < 256))
- (*info->fprintf_func) (info->stream, "%d", signed_operand_val);
+ (*info->fprintf_styled_func) (info->stream, dis_style_immediate,
+ "%d", signed_operand_val);
else
- (*info->fprintf_func) (info->stream, "0x%x", signed_operand_val);
+ (*info->fprintf_styled_func) (info->stream, dis_style_immediate,
+ "0x%x", signed_operand_val);
}
}
else
{
int i = 1;
xtensa_regfile opnd_rf = xtensa_operand_regfile (isa, opc, opnd);
- (*info->fprintf_func) (info->stream, "%s%u",
- xtensa_regfile_shortname (isa, opnd_rf),
- operand_val);
+ (*info->fprintf_styled_func) (info->stream, dis_style_register,
+ "%s%u",
+ xtensa_regfile_shortname (isa, opnd_rf),
+ operand_val);
while (i < xtensa_operand_num_regs (isa, opc, opnd))
{
operand_val++;
- (*info->fprintf_func) (info->stream, ":%s%u",
- xtensa_regfile_shortname (isa, opnd_rf),
- operand_val);
+ (*info->fprintf_styled_func) (info->stream, dis_style_register,
+ ":%s%u",
+ xtensa_regfile_shortname (isa, opnd_rf),
+ operand_val);
i++;
}
}
@@ -404,7 +408,13 @@ print_insn_xtensa (bfd_vma memaddr, struct disassemble_info *info)
}
else
{
- (*info->fprintf_func) (info->stream, ".byte %#02x", priv.byte_buf[0]);
+ (*info->fprintf_styled_func) (info->stream,
+ dis_style_assembler_directive,
+ ".byte");
+ (*info->fprintf_func) (info->stream, "\t");
+ (*info->fprintf_styled_func) (info->stream,
+ dis_style_immediate,
+ "%#02x", priv.byte_buf[0]);
return 1;
}
}
@@ -425,8 +435,9 @@ print_insn_xtensa (bfd_vma memaddr, struct disassemble_info *info)
xtensa_format_get_slot (isa, fmt, n, insn_buffer, slot_buffer);
opc = xtensa_opcode_decode (isa, fmt, n, slot_buffer);
- (*info->fprintf_func) (info->stream, "%s",
- xtensa_opcode_name (isa, opc));
+ (*info->fprintf_styled_func) (info->stream,
+ dis_style_mnemonic, "%s",
+ xtensa_opcode_name (isa, opc));
if (xtensa_opcode_is_branch (isa, opc))
info->insn_type = dis_condbranch;