mirror of
https://github.com/llvm/llvm-project.git
synced 2025-05-13 01:56:05 +00:00

Summary: This patch adds an llvm_call_once which is a wrapper around std::call_once on platforms where it is available and devoid of bugs. The patch also migrates the ManagedStatic mutex to be allocated using llvm_call_once. These changes are philosophically equivalent to the changes added in r219638, which were reverted due to a hang on Win32 which was the result of a bug in the Windows implementation of std::call_once. Reviewers: aaron.ballman, chapuni, chandlerc, rnk Reviewed By: rnk Subscribers: majnemer, llvm-commits Differential Revision: http://reviews.llvm.org/D5922 llvm-svn: 220932
6 lines
111 B
C++
6 lines
111 B
C++
#include <thread>
|
|
|
|
void llvm::call_once(once_flag& flag, void (*fptr)(void)) {
|
|
std::call_once(flag, fptr);
|
|
}
|