On Fri, 8 Nov 2013, Andreas Schwab wrote:

> "Joseph S. Myers" <jos...@codesourcery.com> writes:
> 
> > The test gcc.dg/atomic/c11-atomic-exec-5.c will indicate if this is 
> > working correctly for your architecture, as long as your system supports 
> > pthreads (required to run that test).  If any of the other 
> > c11-atomic-exec-* tests are failing, you should fix that first as it 
> > indicates a more serious issue with atomic operations on your target.
> 
> All of the tests require sync_long_long_runtime, so they are currently
> useless.

The tests do not require sync_long_long_runtime.  ISO C requires atomic 
operations to be available on types of all sizes, but they need not be 
lock-free and need not be inlined.  It is the function of libatomic to 
provide whatever atomic operations are not inlined or in libgcc, using 
locking when necessary.  If some required operation is not being provided 
by libatomic on some target, that's a pre-existing GCC bug on that target 
(the __atomic_* built-in functions are *also* meant to be available for 
types of all sizes on all targets, and I expect any such bug would have 
shown up with them as well).

-- 
Joseph S. Myers
jos...@codesourcery.com

Reply via email to