[OpenMP] libomp: disable definitions of 5.1 atomics for non-x86 arch.
Declarations of 5.1 atomic entries were added under
"#if KMP_ARCH_X86 || KMP_ARCH_X86_64" in kmp_atomic.h,
but definitions of the functions missed architecture guard in kmp_atomic.cpp.
As a result mangled symbols were available on non-x86 architecture.
The patch eliminates these unexpected symbols from the library.
Differential Revision: https://reviews.llvm.org/D112261
GitOrigin-RevId: e38a1deb66c0b29257710e914d92b44d7946ceea
diff --git a/runtime/src/kmp_atomic.cpp b/runtime/src/kmp_atomic.cpp
index 701f157..83d6460 100644
--- a/runtime/src/kmp_atomic.cpp
+++ b/runtime/src/kmp_atomic.cpp
@@ -3694,6 +3694,8 @@
__kmp_release_atomic_lock(&__kmp_atomic_lock, gtid);
}
+#if KMP_ARCH_X86 || KMP_ARCH_X86_64
+
// OpenMP 5.1 compare and swap
/*!
@@ -3855,6 +3857,7 @@
}
// End OpenMP 5.1 compare + capture
+#endif // KMP_ARCH_X86 || KMP_ARCH_X86_64
/*!
@}