diff options
Diffstat (limited to 'include/llvm/Support/Threading.h')
-rw-r--r-- | include/llvm/Support/Threading.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/llvm/Support/Threading.h b/include/llvm/Support/Threading.h index 09b96dfb4c1c..fe407b725314 100644 --- a/include/llvm/Support/Threading.h +++ b/include/llvm/Support/Threading.h @@ -20,11 +20,11 @@ #include <ciso646> // So we can check the C++ standard lib macros. #include <functional> -// We use std::call_once on all Unix platforms except for NetBSD with -// libstdc++. That platform has a bug they are working to fix, and they'll -// remove the NetBSD checks once fixed. -#if defined(LLVM_ON_UNIX) && \ - !(defined(__NetBSD__) && !defined(_LIBCPP_VERSION)) && !defined(__ppc__) +// std::call_once from libc++ is used on all Unix platforms. Other +// implementations like libstdc++ are known to have problems on NetBSD, +// OpenBSD and PowerPC. +#if defined(LLVM_ON_UNIX) && (defined(_LIBCPP_VERSION) || \ + !(defined(__NetBSD__) || defined(__OpenBSD__) || defined(__ppc__))) #define LLVM_THREADING_USE_STD_CALL_ONCE 1 #else #define LLVM_THREADING_USE_STD_CALL_ONCE 0 |