[OpenMP][AArch64] Enable BTI and PAC support on OpenBSD (#164337)
GitOrigin-RevId: d10af9d39805fb05d7e36cc815ce19014f6b4dae
diff --git a/runtime/src/z_Linux_asm.S b/runtime/src/z_Linux_asm.S
index de422f8..ec4d762 100644
--- a/runtime/src/z_Linux_asm.S
+++ b/runtime/src/z_Linux_asm.S
@@ -120,7 +120,8 @@
# endif // KMP_OS_DARWIN
#endif // KMP_ARCH_X86 || KMP_ARCH_x86_64
-#if (KMP_OS_LINUX || KMP_OS_DARWIN || KMP_OS_WINDOWS) && (KMP_ARCH_AARCH64 || KMP_ARCH_AARCH64_32 || KMP_ARCH_ARM)
+#if (KMP_OS_LINUX || KMP_OS_DARWIN || KMP_OS_WINDOWS || KMP_OS_OPENBSD) && \
+ (KMP_ARCH_AARCH64 || KMP_ARCH_AARCH64_32 || KMP_ARCH_ARM)
# if KMP_OS_DARWIN
# define KMP_PREFIX_UNDERSCORE(x) _##x // extra underscore for OS X* symbols
@@ -188,7 +189,7 @@
.endm
# endif // KMP_OS_DARWIN
-# if KMP_OS_LINUX
+# if KMP_OS_LINUX || KMP_OS_OPENBSD
// BTI and PAC gnu property note
# define NT_GNU_PROPERTY_TYPE_0 5
# define GNU_PROPERTY_AARCH64_FEATURE_1_AND 0xc0000000
@@ -235,7 +236,8 @@
# define PACBTI_RET
# define GNU_PROPERTY_BTI_PAC
# endif
-#endif // (KMP_OS_LINUX || KMP_OS_DARWIN || KMP_OS_WINDOWS) && (KMP_ARCH_AARCH64 || KMP_ARCH_AARCH64_32 || KMP_ARCH_ARM)
+#endif // (KMP_OS_LINUX || KMP_OS_DARWIN || KMP_OS_WINDOWS || KMP_OS_OPENBSD) && \
+ (KMP_ARCH_AARCH64 || KMP_ARCH_AARCH64_32 || KMP_ARCH_ARM)
.macro COMMON name, size, align_power
#if KMP_OS_DARWIN
@@ -2516,6 +2518,7 @@
# endif
#endif
-#if KMP_OS_LINUX && (KMP_ARCH_AARCH64 || KMP_ARCH_AARCH64_32)
+#if (KMP_OS_LINUX || KMP_OS_OPENBSD) && \
+ (KMP_ARCH_AARCH64 || KMP_ARCH_AARCH64_32)
GNU_PROPERTY_BTI_PAC
#endif