aboutsummaryrefslogtreecommitdiff
path: root/gdb/nat/aarch64-scalable-linux-sigcontext.h
diff options
context:
space:
mode:
authorLuis Machado <luis.machado@arm.com>2023-02-07 09:47:27 +0000
committerLuis Machado <luis.machado@arm.com>2023-10-04 16:23:40 +0100
commitf62b3d21ec1f8c62905c55b76543d49666e2f717 (patch)
tree51ab84a95d21814bec496b91665eea382b9a6f42 /gdb/nat/aarch64-scalable-linux-sigcontext.h
parent1bb099a2449347510e164e253aea14a186fef0b1 (diff)
downloadgdb-f62b3d21ec1f8c62905c55b76543d49666e2f717.zip
gdb-f62b3d21ec1f8c62905c55b76543d49666e2f717.tar.gz
gdb-f62b3d21ec1f8c62905c55b76543d49666e2f717.tar.bz2
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 <thiago.bauermann@linaro.org>
Diffstat (limited to 'gdb/nat/aarch64-scalable-linux-sigcontext.h')
-rw-r--r--gdb/nat/aarch64-scalable-linux-sigcontext.h5
1 files changed, 4 insertions, 1 deletions
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];
};
/*