[PATCH v5 01/23] aarch64: Add asm helpers for GCS

Wilco Dijkstra Wilco.Dijkstra@arm.com
Wed Dec 11 14:05:41 GMT 2024


Hi Yury,

LGTM. OK.

Cheers,
Wilco
 
From: Szabolcs Nagy <szabolcs.nagy@arm.com>

The Guarded Control Stack instructions can be present even if the
hardware does not support the extension (runtime checked feature),
so the asm code should be backward compatible with old assemblers.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>
---
 sysdeps/aarch64/sysdep.h | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/sysdeps/aarch64/sysdep.h b/sysdeps/aarch64/sysdep.h
index 464674e89c..661d9fe8c1 100644
--- a/sysdeps/aarch64/sysdep.h
+++ b/sysdeps/aarch64/sysdep.h
@@ -74,6 +74,13 @@ strip_pac (void *p)
 #define PACIASP         hint    25
 #define AUTIASP         hint    29
 
+/* Guarded Control Stack support.  */
+#define CHKFEAT_X16    hint    40
+#define MRS_GCSPR(x)   mrs     x, s3_3_c2_c5_1
+#define GCSPOPM(x)     sysl    x, #3, c7, c7, #1
+#define GCSSS1(x)      sys     #3, c7, c7, #2, x
+#define GCSSS2(x)      sysl    x, #3, c7, c7, #3
+
 /* GNU_PROPERTY_AARCH64_* macros from elf.h for use in asm code.  */
 #define FEATURE_1_AND 0xc0000000
 #define FEATURE_1_BTI 1
--
2.39.5


More information about the Libc-alpha mailing list