GCC Atomic Operations

Andrew Haley aph@redhat.com
Tue Feb 23 11:57:00 GMT 2010


On 02/22/2010 09:00 PM, Peng Du wrote:

> I am using GCC Atomic operations, e.g. __sync_bool_compare_and_swap to
> do some low level sync stuff. I have the following questions: 
> 
> 1) are these SMP-safe on x86, i.e. will the result be visible to all
> CPUs after applying these functions? 

Yes: that's the whole idea.

> 2) otherwise, does it requires some sort of memory barrier/fence to
> flush the result? 
> 3) do I have to use "volatile" with atomic operations? 

Yes.

Andrew.



More information about the Gcc-help mailing list