glib/docs
Ryan Lortie aba0f0c38b gatomic: introduce G_ATOMIC_LOCK_FREE
We clean up the detection of if we should do 'real' atomic operations or
mutex-emulated ones with the introduction of a new (public) macro:
G_ATOMIC_LOCK_FREE.  If defined, our atomic operations are guaranteed to
be done in hardware.

We need to use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 to determine if our
compiler supports GCC-style atomic operations from the gatomic.h header
because we might be building a program against GLib using a different
set of compiler options (or a different compiler) than was used to build
GLib itself.

Unfortunately, this macro is not available on clang, so it has currently
regressed to using the mutex emulation.  A bug about that has been
opened here:

  http://llvm.org/bugs/show_bug.cgi?id=11174
2011-10-18 16:45:28 -04:00
..
reference gatomic: introduce G_ATOMIC_LOCK_FREE 2011-10-18 16:45:28 -04:00
debugging.txt Remove references to gruntime. This includes renaming the test program 2002-02-26 21:23:52 +00:00
macros.txt honour g_mem_gc_friendly settings when freeing slices, make sure 2006-01-25 15:51:43 +00:00
Makefile.am initialize automake variables EXTRA_DIST and TEST_PROGS for unconditional 2007-11-21 20:09:46 +00:00