+2021-06-05 Shahab Vahedi <shahab@synopsys.com>
+
+ * NEWS: Document 'set disassembler-options' support for the ARC
+ target.
+ * arc-tdep.c (arc_gdbarch_init): Set
+ 'gdbarch_valid_disassembler_options'.
+
2021-06-04 Tom Tromey <tromey@adacore.com>
* dwarf2/read.h (dwarf2_fetch_die_type_sect_off): Add 'var_name'
*** Changes since GDB 10
+* The 'set disassembler-options' command now supports specifying options
+ for the ARC target.
+
* GDB now supports general memory tagging functionality if the underlying
architecture supports the proper primitives and hooks. Currently this is
enabled only for AArch64 MTE.
arc_disassembler_options = NULL;
break;
}
- set_gdbarch_disassembler_options (gdbarch,
- &arc_disassembler_options);
}
}
+ set_gdbarch_disassembler_options (gdbarch, &arc_disassembler_options);
+ set_gdbarch_valid_disassembler_options (gdbarch,
+ disassembler_options_arc ());
+
tdesc_use_registers (gdbarch, tdesc, std::move (tdesc_data));
return gdbarch;
+2021-06-05 Shahab Vahedi <shahab@synopsys.com>
+
+ * gdb.texinfo (Source and Machine Code): Document 'set
+ disassembler-options' support for the ARC target.
+
2021-06-04 Hannes Domani <ssbssa@yahoo.de>
* python.texi (TUI Windows In Python): Document Window.click.
If it is necessary to specify more than one disassembler option, then
multiple options can be placed together into a comma separated list.
-Currently this command is only supported on targets ARM, MIPS, PowerPC
-and S/390.
+Currently this command is only supported on targets ARC, ARM, MIPS,
+PowerPC and S/390.
@kindex show disassembler-options
@item show disassembler-options
+2021-06-05 Shahab Vahedi <shahab@synopsys.com>
+
+ * gdb.arch/arc-disassembler-options.exp: New test.
+ * gdb.arch/arc-disassembler-options.s: New test source.
+
2021-06-04 Tom Tromey <tromey@adacore.com>
* gdb.ada/array_of_symbolic_length.exp: New file.
--- /dev/null
+# Copyright 2021 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# Test ARC disassembler options.
+
+if { ![istarget "arc-*-*"] } then {
+ verbose "Skipping ARC disassembler option test."
+ return
+}
+
+standard_testfile .s
+set objfile [standard_output_file ${testfile}.o]
+
+if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${objfile}" object {}] \
+ != "" } {
+ return
+}
+
+clean_restart ${objfile}
+
+proc arc_disassemble_test { func insn mesg } {
+ gdb_test "disassemble $func" \
+ "Dump of assembler code for function $func:\r\n\
+ \[^:\]+:\t$insn\r\nEnd of assembler dump\." \
+ $mesg
+}
+
+# Verify defaults.
+arc_disassemble_test foo "lr\tr0,\\\[tlbpd0\\\]" "disassemble default"
+
+# Verify option overrides.
+gdb_test "set disassembler-options cpu=arcem"
+arc_disassemble_test foo "lr\tr0,\\\[1120\\\]" "disassemble cpu=arcem"
--- /dev/null
+# This test is part of GDB, the GNU debugger.
+#
+# Copyright 2021 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+.globl foo
+foo:
+ lr r0, [tlbpd0]
+.end foo