AArch64: Implement the memory tagging gdbarch hooks
authorLuis Machado <luis.machado@linaro.org>
Fri, 19 Jun 2020 20:37:33 +0000 (17:37 -0300)
committerLuis Machado <luis.machado@linaro.org>
Wed, 24 Mar 2021 17:55:14 +0000 (14:55 -0300)
commitc7782e50b13b4ca522dd6da2c7c22760c9603e6a
tree9565f890c9d345299d95e98a398781fd6fe427cf
parent1e735120b95236b1f0fd8c383e64b02b64909d7c
AArch64: Implement the memory tagging gdbarch hooks

This patch implements the memory tagging gdbarch hooks for AArch64, for
the MTE feature.

gdb/ChangeLog:

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

* aarch64-linux-tdep.c: Include target.h, arch-utils.h, value.h.
(aarch64_mte_get_atag, aarch64_linux_tagged_address_p)
(aarch64_linux_memtag_mismatch_p, aarch64_linux_set_memtags)
(aarch64_linux_get_memtag, aarch64_linux_memtag_to_string): New
functions.
(aarch64_linux_init_abi): Initialize MTE-related gdbarch hooks.
* arch/aarch64-mte-linux.c (aarch64_mte_make_ltag_bits)
(aarch64_mte_make_ltag, aarch64_linux_set_ltag)
(aarch64_linux_get_ltag): New functions.
* arch/aarch64-mte-linux.h (AARCH64_MTE_LOGICAL_TAG_START_BIT)
(AARCH64_MTE_LOGICAL_MAX_VALUE): Define.
(aarch64_mte_make_ltag_bits, aarch64_mte_make_ltag)
(aarch64_mte_set_ltag, aarch64_mte_get_ltag): New prototypes.
gdb/ChangeLog
gdb/aarch64-linux-tdep.c
gdb/arch/aarch64-mte-linux.c
gdb/arch/aarch64-mte-linux.h