re PR libstdc++/24704 (__gnu_cxx::__exchange_and_add is called even for single thread...
authorPaolo Carlini <pcarlini@suse.de>
Wed, 24 May 2006 16:37:42 +0000 (16:37 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Wed, 24 May 2006 16:37:42 +0000 (16:37 +0000)
commitb7ee72de2db0a89db568b94650e06ead6ed1feaf
treeb8b2c3c4ae586040aae8bf0603bd2720d6524ce1
parentcc07b2dbebe3a752b1d01e6f62d8a2e71abb5c4e
re PR libstdc++/24704 (__gnu_cxx::__exchange_and_add is called even for single threaded applications)

2006-05-24  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/24704
* include/bits/atomicity.h (__exchange_and_add_single,
__atomic_add_single): New, single thread versions of the atomic
functions.
(__exchange_and_add_dispatch, __atomic_add_dispatch): New,
depending on __GTHREADS and __gthread_active_p() dispatch either
to the above or to the existing atomic functions.
* include/ext/pool_allocator.h: Update callers.
* include/ext/rc_string_base.h: Likewise.
* include/bits/locale_classes.h: Likewise.
* include/bits/basic_string.h: Likewise.
* include/bits/ios_base.h: Likewise.
* include/tr1/boost_shared_ptr.h: Likewise.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/ios_init.cc: Likewise.

From-SVN: r114044
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/atomicity.h
libstdc++-v3/include/bits/basic_string.h
libstdc++-v3/include/bits/ios_base.h
libstdc++-v3/include/bits/locale_classes.h
libstdc++-v3/include/ext/pool_allocator.h
libstdc++-v3/include/ext/rc_string_base.h
libstdc++-v3/include/tr1/boost_shared_ptr.h
libstdc++-v3/src/ios.cc
libstdc++-v3/src/ios_init.cc
libstdc++-v3/src/locale.cc