summaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-24 22:18:07 +0000
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-24 22:18:07 +0000
commit3800fc98841bb2f8efc6389744f62afa126f8b83 (patch)
tree3bfa6a470bd6be1ca4555501134261c037862558 /libstdc++-v3
parent93340cae61a8e297849da9aa10df5f4503237171 (diff)
downloadgcc-3800fc98841bb2f8efc6389744f62afa126f8b83.tar.gz
2007-05-24 Paolo Carlini <pcarlini@suse.de>
* include/ext/concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125044 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog6
-rw-r--r--libstdc++-v3/include/ext/concurrence.h7
2 files changed, 8 insertions, 5 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 96da24af999..7e5513a89c1 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,4 +1,8 @@
-2007-05-23 Steve Ellcey <sje@cup.hp.com>
+2007-05-24 Paolo Carlini <pcarlini@suse.de>
+
+ * include/ext/concurrence.h: Use __GCC_HAVE_SYNC_COMPARE_AND_SWAP_*.
+
+2007-05-24 Steve Ellcey <sje@cup.hp.com>
* Makefile.in: Regenerate.
* configure: Regenerate.
diff --git a/libstdc++-v3/include/ext/concurrence.h b/libstdc++-v3/include/ext/concurrence.h
index 6efb2a6be08..de4934c63c5 100644
--- a/libstdc++-v3/include/ext/concurrence.h
+++ b/libstdc++-v3/include/ext/concurrence.h
@@ -53,9 +53,8 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
// the current configuration.
static const _Lock_policy __default_lock_policy =
#ifdef __GTHREADS
- // NB: This macro doesn't actually exist yet in the compiler, but is
- // set somewhat haphazardly at configure time.
-#ifdef _GLIBCXX_ATOMIC_BUILTINS
+#if (defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2) \
+ && defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4))
_S_atomic;
#else
_S_mutex;
@@ -63,7 +62,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#else
_S_single;
#endif
-
+
// NB: As this is used in libsupc++, need to only depend on
// exception. No stdexception classes, no use of std::string.
class __concurrence_lock_error : public std::exception