aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>2004-02-28 22:46:32 +0000
committerJohn David Anglin <danglin@gcc.gnu.org>2004-02-28 22:46:32 +0000
commit3a1a4ed26ea8b4a0f4ec385eac2e41cba2e875ab (patch)
tree94149ba593bcd16f704c428eb1aac6a7defdee9d
parent5f1908384a6a173ed89192d47b4ef5aa10c31a60 (diff)
downloadgcc-3a1a4ed26ea8b4a0f4ec385eac2e41cba2e875ab.zip
gcc-3a1a4ed26ea8b4a0f4ec385eac2e41cba2e875ab.tar.gz
gcc-3a1a4ed26ea8b4a0f4ec385eac2e41cba2e875ab.tar.bz2
atomicity.h (__atomic_add): Make first argument volatile.
* config/cpu/hppa/atomicity.h (__atomic_add): Make first argument volatile. * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK. From-SVN: r78633
-rw-r--r--libstdc++-v3/ChangeLog7
-rw-r--r--libstdc++-v3/config/cpu/hppa/atomicity.h2
-rw-r--r--libstdc++-v3/config/os/hpux/os_defines.h4
3 files changed, 10 insertions, 3 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 9af9d86..44f6fcc 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,10 @@
+2004-02-28 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
+ volatile.
+ * config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
+ __GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
+
2004-02-28 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
diff --git a/libstdc++-v3/config/cpu/hppa/atomicity.h b/libstdc++-v3/config/cpu/hppa/atomicity.h
index 2b1ce90..d173976 100644
--- a/libstdc++-v3/config/cpu/hppa/atomicity.h
+++ b/libstdc++-v3/config/cpu/hppa/atomicity.h
@@ -76,7 +76,7 @@ namespace __gnu_cxx
void
__attribute__ ((__unused__))
- __atomic_add(_Atomic_word* __mem, int __val)
+ __atomic_add(volatile _Atomic_word* __mem, int __val)
{
int tmp;
volatile int& lock = _Atomicity_lock<0>::_S_atomicity_lock;
diff --git a/libstdc++-v3/config/os/hpux/os_defines.h b/libstdc++-v3/config/os/hpux/os_defines.h
index b83516d..64962fe 100644
--- a/libstdc++-v3/config/os/hpux/os_defines.h
+++ b/libstdc++-v3/config/os/hpux/os_defines.h
@@ -1,6 +1,6 @@
// Specific definitions for HPUX -*- C++ -*-
-// Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+// Copyright (C) 2000, 2002, 2004 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -93,7 +93,7 @@ typedef long int __padding_type;
/* We need explicit instantiation of the atomicity lock on HPPA if
there is no weak support. */
-#if !defined(_GLIBCXX_SUPPORTS_WEAK) && defined (__hppa__)
+#if !__GXX_WEAK__ && defined (__hppa__)
#define _GLIBCXX_INST_ATOMICITY_LOCK 1
#endif