[libdispatch-dev] lib dispatch worker threads may loop depending on compiler optimization

Paolo Bonzini bonzini at gnu.org
Mon Sep 12 13:48:47 PDT 2011


On Mon, Sep 12, 2011 at 21:57, Jordan K. Hubbard <jkh at apple.com> wrote:
> > It doesn't even consider it an acquire barrier, in fact.  Even for a cmpxchg
> > or any other sync builtin, the barrier semantics remain in the assembly,
> > but are lost for the compiler midway through the compilation.
>
> that loss sounds like a clear bug in GCC to me (it doesn't make sense for
> the __sync builtins not to be compiler barriers given that they are defined
> to generate memory barrier instructions), is there a reference to this issue
> that we can track ?

Not yet.  It is a clear bug, though.

Paolo


More information about the libdispatch-dev mailing list