http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51798
--- Comment #11 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-01-26 13:01:58 UTC --- What about the other files that use __sync_* in libstdc++? include/tr1/shared_ptr.h, include/bits/shared_ptr_base.h, include/profile/impl/profiler_state.h, libsupc++/guard.cc and parts of include/parallel/compatibility.h use __sync_*compare_and_swap or __sync_lock_test_and_set, so I assume that we have the same code for those on ppc* as before, but in include/parallel/compatibility.h, libsupc++/eh_tm.cc, libsupc++/eh_ptr.cc and libsupc++/eh_throw.cc __sync_*fetch* is used. Should we change all those to use acq_rel semantics __atomic* counterparts in addition to include/ext/atomicity.h and config/cpu/generic/atomicity_builtins/atomicity.h?