public inbox for binutils-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] opcodes: add new sub-mnemonic disassembler style
@ 2022-07-25 13:14 Andrew Burgess
0 siblings, 0 replies; only message in thread
From: Andrew Burgess @ 2022-07-25 13:14 UTC (permalink / raw)
To: bfd-cvs
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4f46c0bc36471b725de0253bfec1a42a36e2c5c5
commit 4f46c0bc36471b725de0253bfec1a42a36e2c5c5
Author: Andrew Burgess <aburgess@redhat.com>
Date: Mon Jul 4 17:45:25 2022 +0100
opcodes: add new sub-mnemonic disassembler style
When adding libopcodes disassembler styling support for AArch64, it
feels like the results would be improved by having a new sub-mnemonic
style. This will be used in cases like:
add w16, w7, w1, uxtb #2
^^^^----- Here
And:
cinc w0, w1, ne
^^----- Here
This commit just adds the new style, and prepares objdump to handle
the style. A later commit will add AArch64 styling, and will actually
make use of the style.
As this style is currently unused, there should be no user visible
changes after this commit.
Diff:
---
binutils/objdump.c | 2 ++
include/dis-asm.h | 7 +++++++
2 files changed, 9 insertions(+)
diff --git a/binutils/objdump.c b/binutils/objdump.c
index 67824053527..4076587151c 100644
--- a/binutils/objdump.c
+++ b/binutils/objdump.c
@@ -2167,6 +2167,7 @@ objdump_color_for_disassembler_style (enum disassembler_style style)
{
case dis_style_symbol: color = 32; break;
case dis_style_assembler_directive:
+ case dis_style_sub_mnemonic:
case dis_style_mnemonic: color = 33; break;
case dis_style_register: color = 34; break;
case dis_style_address:
@@ -2185,6 +2186,7 @@ objdump_color_for_disassembler_style (enum disassembler_style style)
{
case dis_style_symbol: color = 40; break;
case dis_style_assembler_directive:
+ case dis_style_sub_mnemonic:
case dis_style_mnemonic: color = 142; break;
case dis_style_register: color = 27; break;
case dis_style_address:
diff --git a/include/dis-asm.h b/include/dis-asm.h
index 4f91df12498..f1a83dc84e5 100644
--- a/include/dis-asm.h
+++ b/include/dis-asm.h
@@ -62,6 +62,13 @@ enum disassembler_style
instructions. */
dis_style_mnemonic,
+ /* Some architectures include additional mnemonic like fields within the
+ instruction operands, e.g. on aarch64 'add w16, w7, w1, lsl #2' where
+ the 'lsl' is an additional piece of text that describes how the
+ instruction should behave. This sub-mnemonic style can be used for
+ these pieces of text. */
+ dis_style_sub_mnemonic,
+
/* For things that aren't real machine instructions, but rather
assembler directives, e.g. .byte, etc. */
dis_style_assembler_directive,
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-07-25 13:14 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-25 13:14 [binutils-gdb] opcodes: add new sub-mnemonic disassembler style Andrew Burgess
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).