Equivalent of InterlockedIncrement in Linux/gcc

minjang picture minjang · Jan 24, 2010 · Viewed 17.4k times · Source

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?

Answer