-
Notifications
You must be signed in to change notification settings - Fork 14.4k
[libc++] Define __libcpp_recursive_mutex_t on MIPS architecture #144272
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
MIPS is a 32-bit architecture, so use the same definition as other 32-bit architectures.
@llvm/pr-subscribers-libcxx Author: Hervé Poussineau (hpoussin) ChangesMIPS is a 32-bit architecture, so use the same definition as other 32-bit architectures. Full diff: https://github.com/llvm/llvm-project/pull/144272.diff 2 Files Affected:
diff --git a/libcxx/include/__cxx03/__thread/support/windows.h b/libcxx/include/__cxx03/__thread/support/windows.h
index 45252a57efaec..ee4a74dd1267d 100644
--- a/libcxx/include/__cxx03/__thread/support/windows.h
+++ b/libcxx/include/__cxx03/__thread/support/windows.h
@@ -28,7 +28,8 @@ 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__)
+#if defined(_M_IX86) || defined(__i386__) || defined(_M_ARM) || defined(__arm__) || defined(_M_MRX000) || \
+ defined(__mips__)
typedef void* __libcpp_recursive_mutex_t[6];
#elif defined(_M_AMD64) || defined(__x86_64__) || defined(_M_ARM64) || defined(__aarch64__)
typedef void* __libcpp_recursive_mutex_t[5];
diff --git a/libcxx/include/__thread/support/windows.h b/libcxx/include/__thread/support/windows.h
index 5dc4fa14f45b6..bc06082880427 100644
--- a/libcxx/include/__thread/support/windows.h
+++ b/libcxx/include/__thread/support/windows.h
@@ -28,7 +28,8 @@ 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__)
+#if defined(_M_IX86) || defined(__i386__) || defined(_M_ARM) || defined(__arm__) || defined(_M_MRX000) || \
+ defined(__mips__)
typedef void* __libcpp_recursive_mutex_t[6];
#elif defined(_M_AMD64) || defined(__x86_64__) || defined(_M_ARM64) || defined(__aarch64__)
typedef void* __libcpp_recursive_mutex_t[5];
|
Ping |
Which windows has support for MIPS? |
Windows supported MIPS architecture up to NT4. |
Ping. Maybe @mstorsjo ? |
Thanks; this change looks reasonable in itself to me. While I'm unsure if libcxx is willing to spend much effort on supporting Windows on MIPS (libcxx itself requires Windows 7 or newer overall), this condition looks quite complicated. Couldn't this be changed to simply a check for That way, this change could just be a change that simplifies the current architecture handling, which implicitly does the right thing for fringe Windows architectures. |
Superseded by #147385 |
MIPS is a 32-bit architecture, so use the same definition as other 32-bit architectures.