[libcxx-commits] [libcxx] r369537 - [libcxx] Only declare contents of threading API when

Hans Wennborg via libcxx-commits libcxx-commits at lists.llvm.org
Thu Aug 22 03:31:35 PDT 2019


Merged to release_90 in r369639

On Wed, Aug 21, 2019 at 6:39 PM David Spickett via libcxx-commits
<libcxx-commits at lists.llvm.org> wrote:
>
> Author: davidspickett
> Date: Wed Aug 21 08:38:24 2019
> New Revision: 369537
>
> URL: http://llvm.org/viewvc/llvm-project?rev=369537&view=rev
> Log:
> [libcxx] Only declare contents of threading API when
> _LIBCPP_HAS_THREAD_API_EXTERNAL is not defined.
>
> When it is defined they will be declared by the
> __external_threading header instead.
>
> Differential revision: https://reviews.llvm.org/D66518
>
> Modified:
>     libcxx/trunk/include/__threading_support
>
> Modified: libcxx/trunk/include/__threading_support
> URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/__threading_support?rev=369537&r1=369536&r2=369537&view=diff
> ==============================================================================
> --- libcxx/trunk/include/__threading_support (original)
> +++ libcxx/trunk/include/__threading_support Wed Aug 21 08:38:24 2019
> @@ -79,7 +79,7 @@ typedef pthread_t __libcpp_thread_t;
>  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 void* __libcpp_thread_t;
>  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 @@ void *__libcpp_tls_get(__libcpp_tls_key
>  _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)
>
>
> _______________________________________________
> libcxx-commits mailing list
> libcxx-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/libcxx-commits


More information about the libcxx-commits mailing list