+2019-07-06 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/ext/atomicity.h (__exchange_and_add, __atomic_add): Replace
+ throw() with _GLIBCXX_NOTHROW.
+ (__atomic_add_dispatch): Return after performing atomic increment.
+
2019-07-05 Jonathan Wakely <jwakely@redhat.com>
* include/ext/atomicity.h [_GLIBCXX_ATOMIC_BUILTINS] (__atomic_add)
{ __atomic_fetch_add(__mem, __val, __ATOMIC_ACQ_REL); }
#else
_Atomic_word
- __exchange_and_add(volatile _Atomic_word*, int) throw ();
+ __exchange_and_add(volatile _Atomic_word*, int) _GLIBCXX_NOTHROW;
void
- __atomic_add(volatile _Atomic_word*, int) throw ();
+ __atomic_add(volatile _Atomic_word*, int) _GLIBCXX_NOTHROW;
#endif
inline _Atomic_word
{
#ifdef __GTHREADS
if (__gthread_active_p())
- __atomic_add(__mem, __val);
+ {
+ __atomic_add(__mem, __val);
+ return;
+ }
#endif
__atomic_add_single(__mem, __val);
}