From f62b3d21ec1f8c62905c55b76543d49666e2f717 Mon Sep 17 00:00:00 2001 From: Luis Machado Date: Tue, 7 Feb 2023 09:47:27 +0000 Subject: sme: Signal frame support Teach gdb about the ZA/SSVE state on signal frames and how to restore the contents of the registers. There is a new ZA_MAGIC context that the Linux Kernel uses to communicate the ZA register state to gdb. The SVE_MAGIC context has also been adjusted to contain a flag indicating whether it is a SVE or SSVE state. Regression-tested on aarch64-linux Ubuntu 22.04/20.04. Reviewed-by: Thiago Jung Bauermann --- gdb/nat/aarch64-scalable-linux-sigcontext.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'gdb/nat/aarch64-scalable-linux-sigcontext.h') diff --git a/gdb/nat/aarch64-scalable-linux-sigcontext.h b/gdb/nat/aarch64-scalable-linux-sigcontext.h index 74407bd..1862344 100644 --- a/gdb/nat/aarch64-scalable-linux-sigcontext.h +++ b/gdb/nat/aarch64-scalable-linux-sigcontext.h @@ -30,7 +30,10 @@ struct sve_context { struct _aarch64_ctx head; __u16 vl; - __u16 __reserved[3]; + /* Holds flags. This field was defined for SME support. Prior to it, + this used to be a reserved 16-bit value. */ + __u16 flags; + __u16 __reserved[2]; }; /* -- cgit v1.1