git: c2628accc029 - main - sys: Build arm64 per-thread SSP with GCC
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 22 May 2024 08:32:07 UTC
The branch main has been updated by andrew:
URL: https://cgit.FreeBSD.org/src/commit/?id=c2628accc029a07eb8ff73b6df7f7d6af194ca2d
commit c2628accc029a07eb8ff73b6df7f7d6af194ca2d
Author: Andrew Turner <andrew@FreeBSD.org>
AuthorDate: 2024-05-22 08:20:01 +0000
Commit: Andrew Turner <andrew@FreeBSD.org>
CommitDate: 2024-05-22 08:20:01 +0000
sys: Build arm64 per-thread SSP with GCC
It has been supported since GCC 9. It is unlikely anything older than
that will build the kernel so mark it as supported by GCC.
Reviewed by: brooks, jhb
Sponsored by: Arm Ltd
Differential Revision: https://reviews.freebsd.org/D45267
---
sys/conf/Makefile.arm64 | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/sys/conf/Makefile.arm64 b/sys/conf/Makefile.arm64
index 1505b6c2a45b..52f0f9052db3 100644
--- a/sys/conf/Makefile.arm64
+++ b/sys/conf/Makefile.arm64
@@ -30,7 +30,8 @@ CFLAGS += -DLINUX_DTS_VERSION=\"${LINUX_DTS_VERSION}\"
PERTHREAD_SSP_ENABLED!= grep PERTHREAD_SSP opt_global.h || true ; echo
.if !empty(PERTHREAD_SSP_ENABLED)
-. if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 130000
+. if (${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 130000) || \
+ ${COMPILER_TYPE} == "gcc"
ARM64_SSP_CFLAGS = -mstack-protector-guard=sysreg
ARM64_SSP_CFLAGS += -mstack-protector-guard-reg=sp_el0
ARM64_SSP_CFLAGS += -mstack-protector-guard-offset=0