binutils-gdb/gdb/arch
Luis Machado c1bd443b4d AArch64: Add target description/feature for MTE registers
This patch adds a target description and feature "mte" for aarch64.

It includes one new register, tag_ctl, that can be used to configure the
tag generation rules and sync/async modes.  It is 64-bit in size.

The patch also adjusts the code that creates the target descriptions at
runtime based on CPU feature checks.

gdb/ChangeLog:

2021-03-24  Luis Machado  <luis.machado@linaro.org>

	* aarch64-linux-nat.c
	(aarch64_linux_nat_target::read_description): Take MTE flag into
	account.
	Slight refactor to hwcap flag checking.
	* aarch64-linux-tdep.c
	(aarch64_linux_core_read_description): Likewise.
	* aarch64-tdep.c (tdesc_aarch64_list): Add one more dimension for
	MTE.
	(aarch64_read_description): Add mte_p parameter and update to use it.
	Update the documentation.
	(aarch64_gdbarch_init): Update call to aarch64_read_description.
	* aarch64-tdep.h (aarch64_read_description): Add mte_p parameter.
	* arch/aarch64.c: Include ../features/aarch64-mte.c.
	(aarch64_create_target_description): Add mte_p parameter and update
	the code to use it.
	* arch/aarch64.h (aarch64_create_target_description): Add mte_p
	parameter.
	* features/Makefile (FEATURE_XMLFILES): Add aarch64-mte.xml.
	* features/aarch64-mte.c: New file, generated.
	* features/aarch64-mte.xml: New file.

gdbserver/ChangeLog:

2021-03-24  Luis Machado  <luis.machado@linaro.org>

	* linux-aarch64-ipa.cc (get_ipa_tdesc): Update call to
	aarch64_linux_read_description.
	(initialize_low_tracepoint): Likewise.
	* linux-aarch64-low.cc (aarch64_target::low_arch_setup): Take MTE flag
	into account.
	* linux-aarch64-tdesc.cc (tdesc_aarch64_list): Add one more dimension
	for MTE.
	(aarch64_linux_read_description): Add mte_p parameter and update to
	use it.
	* linux-aarch64-tdesc.h (aarch64_linux_read_description): Add mte_p
	parameter.
2021-03-24 14:52:08 -03:00
..
aarch32.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
aarch32.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
aarch64-insn.c gdb: convert aarch64 to new-style debug macros 2021-01-11 16:52:42 -05:00
aarch64-insn.h GDB: aarch64: Add ability to displaced step over a BR/BLR instruction 2021-01-27 17:12:25 +00:00
aarch64-mte-linux.h AArch64: Add MTE CPU feature check support 2021-03-24 14:51:10 -03:00
aarch64.c AArch64: Add target description/feature for MTE registers 2021-03-24 14:52:08 -03:00
aarch64.h AArch64: Add target description/feature for MTE registers 2021-03-24 14:52:08 -03:00
amd64.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
amd64.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arc.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arc.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-get-next-pcs.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-get-next-pcs.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-linux.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm-linux.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
arm.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
i386.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
i386.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
ppc-linux-common.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
ppc-linux-common.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
ppc-linux-tdesc.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
riscv.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
riscv.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
tic6x.c Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
tic6x.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00
xtensa.h Update copyright year range in all GDB files 2021-01-01 12:12:21 +04:00