summaryrefslogtreecommitdiff
path: root/binutils
diff options
context:
space:
mode:
authorclaziss <claziss@synopsys.com>2017-11-03 15:36:42 +0100
committerclaziss <claziss@synopsys.com>2017-11-03 15:36:54 +0100
commitfdddd2900f39584e7d6cee27127593fba2cb0cf2 (patch)
treee275e77f8026e669737a770701265b922620ec97 /binutils
parent7605d944531519ddf9026bf059475a4347c83aa4 (diff)
downloadbinutils-gdb-fdddd2900f39584e7d6cee27127593fba2cb0cf2.tar.gz
[ARC] Force the disassam to use the hexadecimal number for printing
Force printing of the short/signed values using hexadecimal representation via disassembler option. opcode/ 2017-11-03 Claudiu Zissulescu <claziss@synopsys.com> * arc-dis.c (print_hex): New variable. (parse_option): Check for hex option. (print_insn_arc): Use hexadecimal representation for short immediate values when requested. (print_arc_disassembler_options): Add hex option to the list. binutils/ 2017-11-03 Claudiu Zissulescu <claziss@synopsys.com> * doc/binutils.texi (ARC): Update disassembler options. * testsuite/binutils-all/arc/hexprint.s: New file. * testsuite/binutils-all/arc/objdump.exp: Test hex printing feature.
Diffstat (limited to 'binutils')
-rw-r--r--binutils/ChangeLog7
-rw-r--r--binutils/doc/binutils.texi4
-rw-r--r--binutils/testsuite/binutils-all/arc/hexprint.s2
-rw-r--r--binutils/testsuite/binutils-all/arc/objdump.exp7
4 files changed, 19 insertions, 1 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index aa76e27cf66..ede61022f61 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,10 @@
+2017-11-03 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * doc/binutils.texi (ARC): Update disassembler options.
+ * testsuite/binutils-all/arc/hexprint.s: New file.
+ * testsuite/binutils-all/arc/objdump.exp: Test hex printing
+ feature.
+
2017-11-03 Mingi Cho <mgcho.minic@gmail.com>
Nick Clifton <nickc@redhat.com>
diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi
index ad924d81629..03706dbd64f 100644
--- a/binutils/doc/binutils.texi
+++ b/binutils/doc/binutils.texi
@@ -2313,6 +2313,10 @@ special QuarkSE-EM instructions, @option{fpuda} selects the printing
of double precision assist instructions, @option{fpus} selects the
printing of FPU single precision FP instructions, while @option{fpud}
selects the printing of FPU souble precision FP instructions.
+Additionally, one can choose to have all the immediates printed in
+hexadecimal using @option{hex}. By default, the short immediates are
+printed using the decimal representation, while the long immediate
+values are printed as hexadecimal.
@option{cpu=...} allows to enforce a particular ISA when disassembling
instructions, overriding the @option{-m} value or whatever is in the ELF file.
diff --git a/binutils/testsuite/binutils-all/arc/hexprint.s b/binutils/testsuite/binutils-all/arc/hexprint.s
new file mode 100644
index 00000000000..bdc61b087ab
--- /dev/null
+++ b/binutils/testsuite/binutils-all/arc/hexprint.s
@@ -0,0 +1,2 @@
+ .cpu EM
+ st r0,[r1,-9]
diff --git a/binutils/testsuite/binutils-all/arc/objdump.exp b/binutils/testsuite/binutils-all/arc/objdump.exp
index 2037b2b4833..669d57ace75 100644
--- a/binutils/testsuite/binutils-all/arc/objdump.exp
+++ b/binutils/testsuite/binutils-all/arc/objdump.exp
@@ -91,4 +91,9 @@ check_assembly "arc double_store -Mcpu=em,fpus" $objfile \
# Make sure that the last cpu= value is used.
check_assembly "arc double_store -Mcpu=hs,cpu=em" $objfile \
$double_store_em_expected "-Mcpu=hs,cpu=em"
-
+# Check the hex printing for short immediates.
+set thexobj [do_objfile hexprint.s]
+check_assembly "arc hex printing" $thexobj \
+ {st\s*r0,\[r1,0xfffffff7\]} "-Mhex"
+check_assembly "arc normal printing" $thexobj \
+ {st\s*r0,\[r1,-9\]}