[LLVMdev] [PATCH] Replace the Execution Engine's mutex with std::recursive_mutex

Zachary Turner zturner at google.com
Fri Jun 20 09:26:44 PDT 2014


+llvmdev.

I find this pretty surprising.  Actually, we already use std::mutex and
std::recursive_mutex in clang, lld, and other llvm projects, it's just a
coincidence that it hadn't been introduced into LLVM until my commits.

I'm not sure what the right thing to do here is.  If I understand
correctly, it seems like in order to encounter this, a) you must be using
GCC, b) you must be using the MinGW flavor of GCC, and c) you must be using
the threads-win32 flavor of this toolchain.   Only if all 3 of those are
true, then std::mutex and std::recursive_mutex don't exist.

Anybody else have thoughts on whether this necessitates reverting the mutex
changes, or whether this toolchain configuration should be supported?


On Fri, Jun 20, 2014 at 12:07 AM, Vadim Chugunov <vadimcn at gmail.com> wrote:

> FYI - this commit broke LLVM build using [[
> http://stackoverflow.com/questions/13212342/whats-the-difference-between-thread-posixs-and-thread-win32-in-gcc-port-of-windo
> | win32 threads ]] flavor of the mingw toolchain.  I am getting [[
> http://stackoverflow.com/questions/14191566/c-mutex-in-namespace-std-does-not-name-a-type
> | error: 'recursive_mutex' in namespace 'std' does not name a type ]].
> Not sure if this would be considered a problem for LLVM...
>
> http://reviews.llvm.org/D4196
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140620/adacdec6/attachment.html>


More information about the llvm-dev mailing list