sme2: Enable SME2 for AArch64 gdb on Linux
authorLuis Machado <luis.machado@arm.com>
Tue, 4 Apr 2023 16:20:46 +0000 (17:20 +0100)
committerLuis Machado <luis.machado@arm.com>
Wed, 4 Oct 2023 15:23:40 +0000 (16:23 +0100)
commit42019af621005a274d1a658f4c752a98fe5bab8e
treee1ffbb608ef942726edb6a813fde7c2b5f4ac384
parent6762e153a9e4e450b1a9904f9c96ec9f9b4cbc31
sme2: Enable SME2 for AArch64 gdb on Linux

SME2 defines a new 512-bit register named ZT0, and it is only available
if SME is also supported.  The ZT0 state is valid only if the SVCR ZA bit
is enabled.  Otherwise its contents are empty (0).

The target description is dynamic and gets generated at runtime based on the
availability of the feature.

Validated under Fast Models.

Reviewed-by: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
gdb/aarch64-linux-nat.c
gdb/aarch64-tdep.c
gdb/aarch64-tdep.h
gdb/arch/aarch64-scalable-linux.h
gdb/arch/aarch64.c
gdb/arch/aarch64.h
gdb/features/aarch64-sme2.c [new file with mode: 0644]
gdb/nat/aarch64-scalable-linux-ptrace.c
gdb/nat/aarch64-scalable-linux-ptrace.h