views:

525

answers:

1

It would be a very simple question (could be duplicated), but I was unable to find it.

Win32 API provides a very handy set of atomic operations (as intrinsics) such as InterlockedIncrement which emits lock add x86 code. Also, InterlockedCompareExchange is mapped to lock cmpxchg.

But, I want to do that in Linux with gcc. Since I'm working 64-bit, it's impossible to use inline assembly. Are there intrinsics for gcc?

+10  A: 

GCC Atomic Built-ins

Nikolai N Fetissov
Thanks! `__sync_fetch_and_add` was the one.
minjang