You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[libc++] Implement library support for MCF thread model
This commit allows building libcxx and libcxxabi with
cmake -DLIBCXX_HAS_MCF_THREAD_API=ON \
-DLIBCXXABI_HAS_MCF_THREAD_API=ON \
...
This commit adds a new macro, `_LIBCPP_HAS_THREAD_API_MCF`, to indicate that
the libraries have been built with MCF thread model.
These functions, and member functions of these classes, are implemented
directly in libmcfgthread. The list is exhaustive. If someone wants to
implement more, such as `std::counting_semaphore` and `std::timed_mutex`,
please let me know:
* `__cxa_guard_acquire()`
* `__cxa_guard_release()`
* `__cxa_guard_abort()`
* `std::mutex`
* `std::call_once()`
* `std::recursive_mutex`
* `std::condition_variable`
* `std::thread`
* `std::this_thread::get_id()`
* `std::this_thread::sleep_for()`
* `std::this_thread::yield()`
Reference: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=f036d759ecee538555fa8c6b11963e4033732463
Reference: https://github.com/lhmouse/mcfgthread/wiki/How-the-MCF-thread-model-works
Signed-off-by: LIU Hao <[email protected]>
0 commit comments