[PATCH] [aarch64/sme] binutils: Add new NT_ARM_ZA and NT_ARM_SSVE register set constants

Luis Machado luis.machado@arm.com
Mon Dec 19 13:11:49 GMT 2022


From: Ezra Sitorus <ezra.sitorus@arm.com>

The AArch64 SME feature exposes a couple new register sets: NT_ARM_ZA and
NT_ARM_SSVE.

Teach binutils/include about those.

Co-authored-by: Luis Machado  <luis.machado@arm.com>
---
 binutils/readelf.c   | 4 ++++
 include/elf/common.h | 5 +++++
 2 files changed, 9 insertions(+)

diff --git a/binutils/readelf.c b/binutils/readelf.c
index bce93782952..96e9502318a 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -19547,6 +19547,10 @@ get_note_type (Filedata * filedata, unsigned e_type)
 	return _("NT_ARM_PACG_KEYS (ARM pointer authentication generic keys)");
       case NT_ARM_TAGGED_ADDR_CTRL:
 	return _("NT_ARM_TAGGED_ADDR_CTRL (AArch tagged address control)");
+      case NT_ARM_SSVE:
+	return _("NT_ARM_SSVE (AArch64 streaming SVE registers)");
+      case NT_ARM_ZA:
+	return _("NT_ARM_ZA (AArch64 SME ZA register)");
       case NT_ARM_PAC_ENABLED_KEYS:
 	return _("NT_ARM_PAC_ENABLED_KEYS (AArch64 pointer authentication enabled keys)");
       case NT_ARC_V2:
diff --git a/include/elf/common.h b/include/elf/common.h
index 16587f6fb06..c935746148e 100644
--- a/include/elf/common.h
+++ b/include/elf/common.h
@@ -696,6 +696,11 @@
 #define NT_ARM_PAC_ENABLED_KEYS	0x40a	/* AArch64 pointer authentication
 					   enabled keys (prctl()) */
 					/*   note name must be "LINUX".  */
+#define NT_ARM_SSVE	0x40b		/* AArch64 SME streaming SVE
+					   registers.  */
+					/*   note name must be "LINUX".  */
+#define NT_ARM_ZA	0x40c		/* AArch64 SME ZA register.  */
+					/*   note name must be "LINUX".  */
 #define NT_ARC_V2	0x600		/* ARC HS accumulator/extra registers.  */
 					/*   note name must be "LINUX".  */
 #define NT_LARCH_CPUCFG 0xa00		/* LoongArch CPU config registers */
-- 
2.25.1



More information about the Binutils mailing list