[libcxx-commits] [PATCH] D66518: [libcxx] Only declare contents of threading API when _LIBCPP_HAS_THREAD_API_EXTERNAL is not defined.
David Spickett via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Wed Aug 21 07:55:46 PDT 2019
DavidSpickett updated this revision to Diff 216400.
DavidSpickett added a comment.
Addressed Michael's comment by not moving the initial:
#endif // defined(_LIBCPP_HAS_THREAD_API_PTHREAD)
Instead adding a separate block with:
#if !defined(_LIBCPP_HAS_THREAD_API_EXTERNAL)
further down.
So that these things are still present with pthreads.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D66518/new/
https://reviews.llvm.org/D66518
Files:
libcxx/include/__threading_support
Index: libcxx/include/__threading_support
===================================================================
--- libcxx/include/__threading_support
+++ libcxx/include/__threading_support
@@ -79,7 +79,7 @@
typedef pthread_key_t __libcpp_tls_key;
#define _LIBCPP_TLS_DESTRUCTOR_CC
-#else
+#elif !defined(_LIBCPP_HAS_THREAD_API_EXTERNAL)
// Mutex
typedef void* __libcpp_mutex_t;
#define _LIBCPP_MUTEX_INITIALIZER 0
@@ -112,8 +112,9 @@
typedef long __libcpp_tls_key;
#define _LIBCPP_TLS_DESTRUCTOR_CC __stdcall
-#endif // defined(_LIBCPP_HAS_THREAD_API_PTHREAD)
+#endif // !defined(_LIBCPP_HAS_THREAD_API_PTHREAD) && !defined(_LIBCPP_HAS_THREAD_API_EXTERNAL)
+#if !defined(_LIBCPP_HAS_THREAD_API_EXTERNAL)
// Mutex
_LIBCPP_THREAD_ABI_VISIBILITY
int __libcpp_recursive_mutex_init(__libcpp_recursive_mutex_t *__m);
@@ -208,6 +209,8 @@
_LIBCPP_THREAD_ABI_VISIBILITY
int __libcpp_tls_set(__libcpp_tls_key __key, void *__p);
+#endif // !defined(_LIBCPP_HAS_THREAD_API_EXTERNAL)
+
#if (!defined(_LIBCPP_HAS_THREAD_LIBRARY_EXTERNAL) || \
defined(_LIBCPP_BUILDING_THREAD_LIBRARY_EXTERNAL)) && \
defined(_LIBCPP_HAS_THREAD_API_PTHREAD)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66518.216400.patch
Type: text/x-patch
Size: 1156 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20190821/757cc90d/attachment.bin>
More information about the libcxx-commits
mailing list