[libcxx-commits] [libcxx] 1431f8f - [libc++] Simplify definition of __libcpp_recursive_mutex_t (#147385)

via libcxx-commits libcxx-commits at lists.llvm.org
Wed Jul 9 09:53:11 PDT 2025


Author: Hervé Poussineau
Date: 2025-07-09T12:53:08-04:00
New Revision: 1431f8f76fa2270cedc88efdebcc236bf374b144

URL: https://github.com/llvm/llvm-project/commit/1431f8f76fa2270cedc88efdebcc236bf374b144
DIFF: https://github.com/llvm/llvm-project/commit/1431f8f76fa2270cedc88efdebcc236bf374b144.diff

LOG: [libc++] Simplify definition of __libcpp_recursive_mutex_t (#147385)

As it only depends of pointer size, use `_WIN64` define to simplify conditions.

Added: 
    

Modified: 
    libcxx/include/__cxx03/__thread/support/windows.h
    libcxx/include/__thread/support/windows.h

Removed: 
    


################################################################################
diff  --git a/libcxx/include/__cxx03/__thread/support/windows.h b/libcxx/include/__cxx03/__thread/support/windows.h
index 45252a57efaec..f9facbeefe4be 100644
--- a/libcxx/include/__cxx03/__thread/support/windows.h
+++ b/libcxx/include/__cxx03/__thread/support/windows.h
@@ -28,12 +28,10 @@ using __libcpp_timespec_t = ::timespec;
 typedef void* __libcpp_mutex_t;
 #define _LIBCPP_MUTEX_INITIALIZER 0
 
-#if defined(_M_IX86) || defined(__i386__) || defined(_M_ARM) || defined(__arm__)
-typedef void* __libcpp_recursive_mutex_t[6];
-#elif defined(_M_AMD64) || defined(__x86_64__) || defined(_M_ARM64) || defined(__aarch64__)
+#if defined(_WIN64)
 typedef void* __libcpp_recursive_mutex_t[5];
 #else
-#  error Unsupported architecture
+typedef void* __libcpp_recursive_mutex_t[6];
 #endif
 
 _LIBCPP_EXPORTED_FROM_ABI int __libcpp_recursive_mutex_init(__libcpp_recursive_mutex_t* __m);

diff  --git a/libcxx/include/__thread/support/windows.h b/libcxx/include/__thread/support/windows.h
index 5dc4fa14f45b6..2921ed900e716 100644
--- a/libcxx/include/__thread/support/windows.h
+++ b/libcxx/include/__thread/support/windows.h
@@ -28,12 +28,10 @@ using __libcpp_timespec_t = ::timespec;
 typedef void* __libcpp_mutex_t;
 #define _LIBCPP_MUTEX_INITIALIZER 0
 
-#if defined(_M_IX86) || defined(__i386__) || defined(_M_ARM) || defined(__arm__)
-typedef void* __libcpp_recursive_mutex_t[6];
-#elif defined(_M_AMD64) || defined(__x86_64__) || defined(_M_ARM64) || defined(__aarch64__)
+#if defined(_WIN64)
 typedef void* __libcpp_recursive_mutex_t[5];
 #else
-#  error Unsupported architecture
+typedef void* __libcpp_recursive_mutex_t[6];
 #endif
 
 _LIBCPP_EXPORTED_FROM_ABI int __libcpp_recursive_mutex_init(__libcpp_recursive_mutex_t* __m);


        


More information about the libcxx-commits mailing list