Author: faridz
Date: Mon Oct 13 09:25:34 2008
New Revision: 704152
URL: http://svn.apache.org/viewvc?rev=704152&view=rev
Log:
2008-10-13 Farid Zaripov <[EMAIL PROTECTED]>
Merged revs 696275, 696295, 697875, 697883, 700495, 700810, 700888,
701135, 702179, 702195, 702931, 703124, 703216 from 4.2.x branch.
2008-09-17 Farid Zaripov <[EMAIL PROTECTED]>
* src/random.cpp: #included <stddef.h> for size_t type.
2008-09-17 Farid Zaripov <[EMAIL PROTECTED]>
STDCXX-563
* include/rw/_atomic-deccxx.h: New header file with definitions of
inline functions for atomic operations on ALPHA platform.
* include/rw/_atomic-mipspro.h: New header file with definitions of
inline functions for atomic operations on MIPS platform.
* include/rw/_atomic-mutex.h: New header file with definitions of
inline functions for atomic operations with using mutex object.
* include/rw/_atomic-parisc.h: New header file with definitions of
inline functions for atomic operations on PA RISC platform.
* include/rw/_atomic-sparc.h: New header file with definitions of
inline functions for atomic operations on SPARC platform.
* include/rw/_atomic-x64.h: New header file with definitions of inline
functions for atomic operations on Intel IA64 and x64 platforms.
* include/rw/_atomic-x86.h: New header file with definitions of inline
functions for atomic operations on Intel x86 platform.
* include/rw/_atomic-xlc.h: New header file with definitions of inline
functions for atomic operations on POWERPC platform.
* include/rw/_atomic.h: New header file with definitions of inline
functions for atomic operations.
* include/rw/_mutex-dce.h: New header file with definitions of classes
for thread safety using DCE threads.
* include/rw/_mutex-os2.h: New header file with definitions of classes
for thread safety using OS2 threads.
* include/rw/_mutex-pthread.h: New header file with definitions of
classes for thread safety using POSIX threads.
* include/rw/_mutex-solaris.h: New header file with definitions of
classes for thread safety using Solaris threads.
* include/rw/_mutex-win32.h: New header file with definitions of
classes for thread safety using Windows threads.
* include/rw/_mutex.h: Split content of the file to the set of
platform specific and OS specific headers above.
(__rw_get_static_mutex) [!_RWSTD_NO_ATOMIC_OPS && !_PA_RISC2_0]: Use
_RWSTD_ATOMIC_PREINCREMENT() on all platforms where atomic increment is
available instead of using _InterlockedIncrement() only on Windows.
* src/i86: Directory renamed to src/x86 for consistency.
* src/i86_64: Directory renamed to src/x86_64 for consistency.
* src/atomic.asm: Renamed i86 to x86 and i86_64 to x86_64 respectively.
* src/atomic.s: Ditto.
* src/x86/atomic.inc: Ditto.
* src/x86/atomic.s: Ditto.
* src/x86_64/atomic.inc: Ditto.
* src/x86_64/atomic.s: Ditto.
2008-09-22 Farid Zaripov <[EMAIL PROTECTED]>
STDCXX-455
* util/ctype.cpp (process_ctype): Don't create symlink on Cygwin.
(write_ctype): Same.
* util/localedef.cpp (create_locale): Same.
* util/path.cpp (create_symlink): Don't define function on Cygwin.
2008-09-22 Farid Zaripov <[EMAIL PROTECTED]>
* tests/containers/23.list.erase.cpp (test_erase): Simplify type of the
pres_iter.
2008-09-30 Farid Zaripov <[EMAIL PROTECTED]>
* include/rw/_atomic-x86.h [!_MSC_VER && _RWSTD_INTERLOCKED_T]:
Moved closing brace of the extern "C" block to the proper location.
2008-10-01 Farid Zaripov <[EMAIL PROTECTED]>
* include/rw/_atomic-deccxx.h: Correct $Id: line.
* include/rw/_atomic-mipspro.h: Same.
* include/rw/_atomic-mutex.h: Same.
* include/rw/_atomic-parisc.h: Same.
* include/rw/_atomic-sparc.h: Same.
* include/rw/_atomic-x64.h: Same.
* include/rw/_atomic-x86.h: Same.
* include/rw/_atomic-xlc.h: Same.
* include/rw/_atomic.h: Same.
* include/rw/_mutex-dce.h: Same.
* include/rw/_mutex-os2.h: Same.
* include/rw/_mutex-pthread.h: Same.
* include/rw/_mutex-solaris.h: Same.
* include/rw/_mutex-win32.h: Same.
* tests/include/rw_containers.h: Same.
* tests/include/rw_lists.h: Same.
* tests/src/23.containers.cpp: Same.
2008-10-01 Farid Zaripov <[EMAIL PROTECTED]>
* include/rw/_atomic-mutex.h: Make _RWSTD_RW_MUTEX_H_INCLUDED
after #endif directive as comment to fix compile error.
2008-10-02 Farid Zaripov <[EMAIL PROTECTED]>
* include/rw/_atomic-sync.h: New header file with definitions
of inline functions for atomic operations using __sync_xxx()
built-in functions set.
* include/rw/_atomic.h: #include <rw/_atomic-sync.h> with
gcc >= 4.1 on x86, x86_64, ia64 platforms and icc on ia64 platform.
2008-10-06 Farid Zaripov <[EMAIL PROTECTED]>
* include/rw/_atomic-deccxx.h: #define corresponding
_RWSTD_NO_XXX_ATOMIC_OPS macros for types, which are
not supported in atomic operations.
* include/rw/_atomic-mipspro.h: Ditto.
* include/rw/_atomic-parisc.h: Ditto.
* include/rw/_atomic-sparc.h: Ditto.
* include/rw/_atomic-x86.h: Ditto.
* include/rw/_atomic-xlc.h: Ditto.
* include/rw/_atomic-x64.h: Ditto. Arrange 64-bit atomic
functions into single #if/#endif block.
* include/rw/_atomic-sync.h: Same.
* include/rw/_atomic.h: Define generic bool, long and
long long atomic functions only if the corresponding
char/short/int/long atomic functions are defined.
* include/rw/_mutex.h: Cleanup _RWSTD_NO_XXX_ATOMIC_OPS macros.
(__rw_get_static_mutex): Check for presence of the int atomic
operations instead of checking the PA RISC platform.
2008-10-06 Farid Zaripov <[EMAIL PROTECTED]>
* include/rw/_atomic.h: Check for __GNUG__ instead of __GNUC__ for
consistency.
Correct preprocessor condition for ICC on __i386__ and __x86_64
platforms.
2008-10-08 Farid Zaripov <[EMAIL PROTECTED]>
* include/rw/_atomic-sparc.h: Declare __rw_atomic_xxx64() functions
only if atomic-sparc64.s file will be #included in atomic.s
(use the same conditions as in the atomic.s file).
* include/rw/_atomic.h: Use __sync_xxx() builtins on x86 platform
on processors >= i486 only.
2008-10-09 Farid Zaripov <[EMAIL PROTECTED]>
* src/locale_body.h: Replace __CYGWIN32__ to __CYGWIN__ for consistency.
* util/ctype.cpp: Ditto.
* util/localedef.cpp: Ditto.
2008-10-09 Farid Zaripov <[EMAIL PROTECTED]>
* src/locale_body.h: Revert changes, accidentally committed in r703124.
* util/path.cpp: Replace __CYGWIN32__ to __CYGWIN__ for consistency.
Added:
stdcxx/branches/4.3.x/include/rw/_atomic-deccxx.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-deccxx.h
stdcxx/branches/4.3.x/include/rw/_atomic-mipspro.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-mipspro.h
stdcxx/branches/4.3.x/include/rw/_atomic-mutex.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-mutex.h
stdcxx/branches/4.3.x/include/rw/_atomic-parisc.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-parisc.h
stdcxx/branches/4.3.x/include/rw/_atomic-sparc.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-sparc.h
stdcxx/branches/4.3.x/include/rw/_atomic-sync.h
- copied, changed from r701135,
stdcxx/branches/4.2.x/include/rw/_atomic-sync.h
stdcxx/branches/4.3.x/include/rw/_atomic-x64.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-x64.h
stdcxx/branches/4.3.x/include/rw/_atomic-x86.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-x86.h
stdcxx/branches/4.3.x/include/rw/_atomic-xlc.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-xlc.h
stdcxx/branches/4.3.x/include/rw/_atomic.h
- copied, changed from r696295, stdcxx/branches/4.2.x/include/rw/_atomic.h
stdcxx/branches/4.3.x/include/rw/_mutex-dce.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-dce.h
stdcxx/branches/4.3.x/include/rw/_mutex-os2.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-os2.h
stdcxx/branches/4.3.x/include/rw/_mutex-pthread.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-pthread.h
stdcxx/branches/4.3.x/include/rw/_mutex-solaris.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-solaris.h
stdcxx/branches/4.3.x/include/rw/_mutex-win32.h
- copied, changed from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-win32.h
stdcxx/branches/4.3.x/src/x86/ (props changed)
- copied from r696295, stdcxx/branches/4.2.x/src/x86/
stdcxx/branches/4.3.x/src/x86/atomic.inc
- copied unchanged from r696295, stdcxx/branches/4.2.x/src/x86/atomic.inc
stdcxx/branches/4.3.x/src/x86/atomic.s
- copied unchanged from r696295, stdcxx/branches/4.2.x/src/x86/atomic.s
stdcxx/branches/4.3.x/src/x86_64/ (props changed)
- copied from r696295, stdcxx/branches/4.2.x/src/x86_64/
stdcxx/branches/4.3.x/src/x86_64/atomic.inc
- copied unchanged from r696295,
stdcxx/branches/4.2.x/src/x86_64/atomic.inc
stdcxx/branches/4.3.x/src/x86_64/atomic.s
- copied unchanged from r696295, stdcxx/branches/4.2.x/src/x86_64/atomic.s
Removed:
stdcxx/branches/4.3.x/src/i86/
stdcxx/branches/4.3.x/src/i86_64/
Modified:
stdcxx/branches/4.3.x/include/rw/_mutex.h
stdcxx/branches/4.3.x/src/atomic.asm
stdcxx/branches/4.3.x/src/atomic.s
stdcxx/branches/4.3.x/src/random.cpp
stdcxx/branches/4.3.x/tests/containers/23.list.erase.cpp
stdcxx/branches/4.3.x/tests/include/rw_containers.h
stdcxx/branches/4.3.x/tests/include/rw_lists.h
stdcxx/branches/4.3.x/tests/src/23.containers.cpp
stdcxx/branches/4.3.x/util/ctype.cpp
stdcxx/branches/4.3.x/util/localedef.cpp
stdcxx/branches/4.3.x/util/path.cpp
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-deccxx.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-deccxx.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-deccxx.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-deccxx.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-deccxx.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-deccxx.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-deccxx.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -33,6 +33,10 @@
// get declarations of __ATOMIC_XXX intrinsics
# include <machine/builtins.h>
+#define _RWSTD_NO_CHAR_ATOMIC_OPS
+#define _RWSTD_NO_SHORT_ATOMIC_OPS
+#define _RWSTD_NO_LLONG_ATOMIC_OPS
+
_RWSTD_NAMESPACE (__rw) {
// __ATOMIC_[DE|IN]CREMENT_[LONG|QUAD] and __ATOMIC_EXCH_[LONG|QUAD] are
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-mipspro.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-mipspro.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-mipspro.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-mipspro.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-mipspro.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-mipspro.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-mipspro.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -32,6 +32,10 @@
# include <mutex.h>
+#define _RWSTD_NO_CHAR_ATOMIC_OPS
+#define _RWSTD_NO_SHORT_ATOMIC_OPS
+#define _RWSTD_NO_LLONG_ATOMIC_OPS
+
_RWSTD_NAMESPACE (__rw) {
inline unsigned
@@ -127,6 +131,8 @@
false);
}
+# else // _RWSTD_INT_SIZE == _RWSTD_LONG_SIZE
+# define _RWSTD_NO_LONG_ATOMIC_OPS
# endif // _RWSTD_INT_SIZE < _RWSTD_LONG_SIZE
} // namespace __rw
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-mutex.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-mutex.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-mutex.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-mutex.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-mutex.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-mutex.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-mutex.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -36,7 +36,7 @@
#ifndef _RWSTD_RW_MUTEX_H_INCLUDED
# include <rw/_mutex.h>
-#endif _RWSTD_RW_MUTEX_H_INCLUDED
+#endif // _RWSTD_RW_MUTEX_H_INCLUDED
_RWSTD_NAMESPACE (__rw) {
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-parisc.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-parisc.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-parisc.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-parisc.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-parisc.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-parisc.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-parisc.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -30,6 +30,12 @@
*
**************************************************************************/
+#define _RWSTD_NO_CHAR_ATOMIC_OPS
+#define _RWSTD_NO_SHORT_ATOMIC_OPS
+#define _RWSTD_NO_INT_ATOMIC_OPS
+#define _RWSTD_NO_LONG_ATOMIC_OPS
+#define _RWSTD_NO_LLONG_ATOMIC_OPS
+
_RWSTD_NAMESPACE (__rw) {
extern "C" {
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-sparc.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-sparc.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-sparc.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-sparc.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-sparc.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-sparc.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-sparc.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -32,6 +32,10 @@
_RWSTD_NAMESPACE (__rw) {
+#define _RWSTD_NO_CHAR_ATOMIC_OPS
+#define _RWSTD_NO_SHORT_ATOMIC_OPS
+#define _RWSTD_NO_LLONG_ATOMIC_OPS
+
extern "C" {
// define in assembler file "atomic-sparc.s" and "atomic-sparc64.s"
@@ -41,12 +45,12 @@
int __rw_atomic_xchg32 (int*, int);
int __rw_atomic_add32 (int*, int);
-# if defined (_LP64)
+# if defined (__sparcv9) || defined (__sparcv9__)
long __rw_atomic_xchg64 (long*, long);
long __rw_atomic_add64 (long*, long);
-# endif // !_LP64
+# endif
} // extern "C"
@@ -149,6 +153,8 @@
_RWSTD_STATIC_CAST (long, __y));
}
+# else // _RWSTD_INT_SIZE == _RWSTD_LONG_SIZE
+# define _RWSTD_NO_LONG_ATOMIC_OPS
# endif // _RWSTD_INT_SIZE < _RWSTD_LONG_SIZE
} // namespace __rw
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-sync.h (from r701135,
stdcxx/branches/4.2.x/include/rw/_atomic-sync.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-sync.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-sync.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-sync.h&r1=701135&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-sync.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-sync.h Mon Oct 13 09:25:34 2008
@@ -92,49 +92,6 @@
}
-#if defined (__ia64) || defined (__x86_64)
-# if 4 < _RWSTD_LONG_SIZE
-
-inline long
-__rw_atomic_preincrement (long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
- return __sync_add_and_fetch (&__x, 1);
-}
-
-
-inline unsigned long
-__rw_atomic_preincrement (unsigned long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
- return __sync_add_and_fetch (&__x, 1);
-}
-
-# endif // _RWSTD_LONG_SIZE
-
-
-# ifdef _RWSTD_LONG_LONG
-# if _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-
-inline _RWSTD_LONG_LONG
-__rw_atomic_preincrement (_RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
- return __sync_add_and_fetch (&__x, 1);
-}
-
-
-inline unsigned _RWSTD_LONG_LONG
-__rw_atomic_preincrement (unsigned _RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
- return __sync_add_and_fetch (&__x, 1);
-}
-
-# endif // _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-# endif // _RWSTD_LONG_LONG
-#endif // __ia64 || __x86_64
-
inline char
__rw_atomic_predecrement (char &__x, bool)
{
@@ -191,50 +148,6 @@
}
-#if defined (__ia64) || defined (__x86_64)
-# if 4 < _RWSTD_LONG_SIZE
-
-inline long
-__rw_atomic_predecrement (long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
- return __sync_sub_and_fetch (&__x, 1);
-}
-
-
-inline unsigned long
-__rw_atomic_predecrement (unsigned long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
- return __sync_sub_and_fetch (&__x, 1);
-}
-
-# endif // _RWSTD_LONG_SIZE
-
-
-# ifdef _RWSTD_LONG_LONG
-# if _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-
-inline _RWSTD_LONG_LONG
-__rw_atomic_predecrement (_RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
- return __sync_sub_and_fetch (&__x, 1);
-}
-
-
-inline unsigned _RWSTD_LONG_LONG
-__rw_atomic_predecrement (unsigned _RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
- return __sync_sub_and_fetch (&__x, 1);
-}
-
-# endif // _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-# endif // _RWSTD_LONG_LONG
-#endif // __ia64 || __x86_64
-
-
inline char
__rw_atomic_exchange (char &__x, char __y, bool)
{
@@ -295,6 +208,38 @@
# if 4 < _RWSTD_LONG_SIZE
inline long
+__rw_atomic_preincrement (long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
+ return __sync_add_and_fetch (&__x, 1);
+}
+
+
+inline unsigned long
+__rw_atomic_preincrement (unsigned long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
+ return __sync_add_and_fetch (&__x, 1);
+}
+
+
+inline long
+__rw_atomic_predecrement (long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
+ return __sync_sub_and_fetch (&__x, 1);
+}
+
+
+inline unsigned long
+__rw_atomic_predecrement (unsigned long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
+ return __sync_sub_and_fetch (&__x, 1);
+}
+
+
+inline long
__rw_atomic_exchange (long &__x, long __y, bool)
{
_RWSTD_COMPILE_ASSERT (8 == sizeof (long));
@@ -309,11 +254,44 @@
return __sync_lock_test_and_set (&__x, __y);
}
-# endif // _RWSTD_LONG_SIZE == _RWSTD_INT_SIZE
+# else
+# define _RWSTD_NO_LONG_ATOMIC_OPS
+# endif // 4 < _RWSTD_LONG_SIZE
+
+
+# if defined (_RWSTD_LONG_LONG) && (_RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE)
+
+inline _RWSTD_LONG_LONG
+__rw_atomic_preincrement (_RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
+ return __sync_add_and_fetch (&__x, 1);
+}
+
+inline unsigned _RWSTD_LONG_LONG
+__rw_atomic_preincrement (unsigned _RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
+ return __sync_add_and_fetch (&__x, 1);
+}
+
+
+inline _RWSTD_LONG_LONG
+__rw_atomic_predecrement (_RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
+ return __sync_sub_and_fetch (&__x, 1);
+}
+
+
+inline unsigned _RWSTD_LONG_LONG
+__rw_atomic_predecrement (unsigned _RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
+ return __sync_sub_and_fetch (&__x, 1);
+}
-# ifdef _RWSTD_LONG_LONG
-# if _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
inline _RWSTD_LONG_LONG
__rw_atomic_exchange (_RWSTD_LONG_LONG &__x, _RWSTD_LONG_LONG __y, bool)
@@ -331,8 +309,13 @@
return __sync_lock_test_and_set (&__x, __y);
}
-# endif // _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-# endif // _RWSTD_LONG_LONG
+# else
+# define _RWSTD_NO_LLONG_ATOMIC_OPS
+# endif // _RWSTD_LONG_LONG && _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
+
+#else // !__ia64 && !__x86_64
+# define _RWSTD_NO_LONG_ATOMIC_OPS
+# define _RWSTD_NO_LLONG_ATOMIC_OPS
#endif // __ia64 || __x86_64
} // namespace __rw
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-x64.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-x64.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-x64.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-x64.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-x64.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-x64.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-x64.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -183,64 +183,6 @@
}
-#if 4 < _RWSTD_LONG_SIZE
-
-inline long
-__rw_atomic_preincrement (long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
-
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- +1);
-}
-
-
-inline unsigned long
-__rw_atomic_preincrement (unsigned long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
-
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- +1);
-}
-
-#endif // _RWSTD_LONG_SIZE
-
-
-#ifdef _RWSTD_LONG_LONG
-# if _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-
-inline _RWSTD_LONG_LONG
-__rw_atomic_preincrement (_RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
-
-#ifdef _MSC_VER
- return _InterlockedIncrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
-#else
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- +1);
-#endif
-}
-
-
-inline unsigned _RWSTD_LONG_LONG
-__rw_atomic_preincrement (unsigned _RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
-
-#ifdef _MSC_VER
- return _InterlockedIncrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
-#else
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- +1);
-#endif
-}
-
-# endif // _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-#endif // _RWSTD_LONG_LONG
-
-
inline char
__rw_atomic_predecrement (char &__x, bool)
{
@@ -327,64 +269,6 @@
}
-#if 4 < _RWSTD_LONG_SIZE
-
-inline long
-__rw_atomic_predecrement (long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
-
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- -1);
-}
-
-
-inline unsigned long
-__rw_atomic_predecrement (unsigned long &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
-
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- -1);
-}
-
-#endif // _RWSTD_LONG_SIZE
-
-
-#ifdef _RWSTD_LONG_LONG
-# if _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-
-inline _RWSTD_LONG_LONG
-__rw_atomic_predecrement (_RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
-
-#ifdef _MSC_VER
- return _InterlockedDecrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
-#else
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- -1);
-#endif
-}
-
-
-inline unsigned _RWSTD_LONG_LONG
-__rw_atomic_predecrement (unsigned _RWSTD_LONG_LONG &__x, bool)
-{
- _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
-
-#ifdef _MSC_VER
- return _InterlockedDecrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
-#else
- return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
- -1);
-#endif
-}
-
-# endif // _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-#endif // _RWSTD_LONG_LONG
-
-
inline char
__rw_atomic_exchange (char &__x, char __y, bool)
{
@@ -465,7 +349,47 @@
}
-# if 4 < _RWSTD_LONG_SIZE
+#if 4 < _RWSTD_LONG_SIZE
+
+inline long
+__rw_atomic_preincrement (long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
+
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ +1);
+}
+
+
+inline unsigned long
+__rw_atomic_preincrement (unsigned long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
+
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ +1);
+}
+
+
+inline long
+__rw_atomic_predecrement (long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (long));
+
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ -1);
+}
+
+
+inline unsigned long
+__rw_atomic_predecrement (unsigned long &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned long));
+
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ -1);
+}
+
inline long
__rw_atomic_exchange (long &__x, long __y, bool)
@@ -486,11 +410,68 @@
_RWSTD_STATIC_CAST (_RWSTD_INT64_T, __y));
}
-# endif // _RWSTD_LONG_SIZE == _RWSTD_INT_SIZE
+#else
+# define _RWSTD_NO_LONG_ATOMIC_OPS
+#endif // 4 < _RWSTD_LONG_SIZE
+
+
+#if defined (_RWSTD_LONG_LONG) && (_RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE)
+
+inline _RWSTD_LONG_LONG
+__rw_atomic_preincrement (_RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
+
+#ifdef _MSC_VER
+ return _InterlockedIncrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
+#else
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ +1);
+#endif
+}
+
+
+inline unsigned _RWSTD_LONG_LONG
+__rw_atomic_preincrement (unsigned _RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
+#ifdef _MSC_VER
+ return _InterlockedIncrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
+#else
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ +1);
+#endif
+}
+
+
+inline _RWSTD_LONG_LONG
+__rw_atomic_predecrement (_RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (_RWSTD_LONG_LONG));
+
+#ifdef _MSC_VER
+ return _InterlockedDecrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
+#else
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ -1);
+#endif
+}
+
+
+inline unsigned _RWSTD_LONG_LONG
+__rw_atomic_predecrement (unsigned _RWSTD_LONG_LONG &__x, bool)
+{
+ _RWSTD_COMPILE_ASSERT (8 == sizeof (unsigned _RWSTD_LONG_LONG));
+
+#ifdef _MSC_VER
+ return _InterlockedDecrement64 (_RWSTD_REINTERPRET_CAST (__int64*, &__x));
+#else
+ return __rw_atomic_add64 (_RWSTD_REINTERPRET_CAST (_RWSTD_INT64_T*, &__x),
+ -1);
+#endif
+}
-#ifdef _RWSTD_LONG_LONG
-# if _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
inline _RWSTD_LONG_LONG
__rw_atomic_exchange (_RWSTD_LONG_LONG &__x, _RWSTD_LONG_LONG __y, bool)
@@ -522,7 +503,8 @@
#endif
}
-# endif // _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
-#endif // _RWSTD_LONG_LONG
+#else
+# define _RWSTD_NO_LLONG_ATOMIC_OPS
+#endif // _RWSTD_LONG_LONG && _RWSTD_LLONG_SIZE > _RWSTD_LONG_SIZE
} // namespace __rw
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-x86.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-x86.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-x86.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-x86.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-x86.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-x86.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-x86.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -30,6 +30,9 @@
*
**************************************************************************/
+#define _RWSTD_NO_LONG_ATOMIC_OPS
+#define _RWSTD_NO_LLONG_ATOMIC_OPS
+
#ifdef _MSC_VER
extern "C" long __cdecl _InterlockedIncrement (volatile long*);
@@ -61,14 +64,14 @@
__declspec (dllimport) long __stdcall
InterlockedExchange (_RWSTD_INTERLOCKED_T*, long);
+} // extern "C"
+
inline long _InterlockedIncrement (volatile long *__x)
{
return InterlockedIncrement (
_RWSTD_CONST_CAST (_RWSTD_INTERLOCKED_T*, __x));
}
-} // extern "C"
-
inline long _InterlockedDecrement (volatile long *__x)
{
return InterlockedDecrement (
Copied: stdcxx/branches/4.3.x/include/rw/_atomic-xlc.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic-xlc.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic-xlc.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic-xlc.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic-xlc.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic-xlc.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic-xlc.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -32,6 +32,10 @@
#include <sys/atomic_op.h>
+#define _RWSTD_NO_CHAR_ATOMIC_OPS
+#define _RWSTD_NO_SHORT_ATOMIC_OPS
+#define _RWSTD_NO_LLONG_ATOMIC_OPS
+
_RWSTD_NAMESPACE (__rw) {
inline int
@@ -137,6 +141,8 @@
_RWSTD_STATIC_CAST (long, __y), false);
}
+# else // _RWSTD_INT_SIZE == _RWSTD_LONG_SIZE
+# define _RWSTD_NO_LONG_ATOMIC_OPS
# endif // _RWSTD_INT_SIZE < _RWSTD_LONG_SIZE
} // namespace __rw
Copied: stdcxx/branches/4.3.x/include/rw/_atomic.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_atomic.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_atomic.h?p2=stdcxx/branches/4.3.x/include/rw/_atomic.h&p1=stdcxx/branches/4.2.x/include/rw/_atomic.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_atomic.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_atomic.h Mon Oct 13 09:25:34 2008
@@ -5,7 +5,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
@@ -57,6 +57,11 @@
# include <rw/_atomic-mipspro.h>
# elif defined (_PA_RISC2_0)
# include <rw/_atomic-parisc.h>
+# elif defined (__GNUG__) && (__GNUC__ * 100 + __GNUC_MINOR__ >= 401) \
+ && (defined (__i486__) || defined (__x86_64) || defined (__ia64)) \
+ && !defined (__INTEL_COMPILER) \
+ || (defined (__INTEL_COMPILER) && defined (__ia64))
+# include <rw/_atomic-sync.h>
# elif defined (__i386__) && (defined (__GNUG__) \
|| defined (__INTEL_COMPILER)) || defined (_M_IX86)
# include <rw/_atomic-x86.h>
@@ -72,11 +77,14 @@
# ifndef _RWSTD_NO_BOOL
-# if _RWSTD_BOOL_SIZE == _RWSTD_CHAR_SIZE
+# if _RWSTD_BOOL_SIZE == _RWSTD_CHAR_SIZE \
+ && !defined (_RWSTD_NO_CHAR_ATOMIC_OPS)
# define _RWSTD_BOOL_TYPE char
-# elif _RWSTD_BOOL_SIZE == _RWSTD_SHORT_SIZE
+# elif _RWSTD_BOOL_SIZE == _RWSTD_SHORT_SIZE \
+ && !defined (_RWSTD_NO_SHORT_ATOMIC_OPS)
# define _RWSTD_BOOL_TYPE short
-# elif _RWSTD_BOOL_SIZE == _RWSTD_INT_SIZE
+# elif _RWSTD_BOOL_SIZE == _RWSTD_INT_SIZE \
+ && !defined (_RWSTD_NO_INT_ATOMIC_OPS)
# define _RWSTD_BOOL_TYPE int
# endif
@@ -103,7 +111,11 @@
/********************** generic long functions ************************/
-# if _RWSTD_LONG_SIZE == _RWSTD_INT_SIZE
+# if _RWSTD_LONG_SIZE == _RWSTD_INT_SIZE \
+ && defined (_RWSTD_NO_LONG_ATOMIC_OPS) \
+ && !defined (_RWSTD_NO_INT_ATOMIC_OPS)
+
+# undef _RWSTD_NO_LONG_ATOMIC_OPS
# if 6 == _RWSTD_HP_aCC_MAJOR
// suppress HP aCC 64 bit migration remark: conversion from
@@ -170,8 +182,12 @@
/********************** generic long long functions *******************/
-# ifdef _RWSTD_LONG_LONG
-# if _RWSTD_LLONG_SIZE == _RWSTD_LONG_SIZE
+# if defined (_RWSTD_LONG_LONG) \
+ && _RWSTD_LLONG_SIZE == _RWSTD_LONG_SIZE \
+ && defined (_RWSTD_NO_LLONG_ATOMIC_OPS) \
+ && !defined (_RWSTD_NO_LONG_ATOMIC_OPS)
+
+# undef _RWSTD_NO_LLONG_ATOMIC_OPS
_RWSTD_NAMESPACE (__rw) {
@@ -222,8 +238,7 @@
} // namespace __rw
-# endif // _RWSTD_LLONG_SIZE == _RWSTD_LONG_SIZE
-# endif // _RWSTD_LONG_LONG
+# endif // _RWSTD_LONG_LONG && _RWSTD_LLONG_SIZE == _RWSTD_LONG_SIZE
# endif // _RWSTD_NO_ATOMIC_OPS
Copied: stdcxx/branches/4.3.x/include/rw/_mutex-dce.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-dce.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_mutex-dce.h?p2=stdcxx/branches/4.3.x/include/rw/_mutex-dce.h&p1=stdcxx/branches/4.2.x/include/rw/_mutex-dce.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_mutex-dce.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_mutex-dce.h Mon Oct 13 09:25:34 2008
@@ -5,7 +5,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
Copied: stdcxx/branches/4.3.x/include/rw/_mutex-os2.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-os2.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_mutex-os2.h?p2=stdcxx/branches/4.3.x/include/rw/_mutex-os2.h&p1=stdcxx/branches/4.2.x/include/rw/_mutex-os2.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_mutex-os2.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_mutex-os2.h Mon Oct 13 09:25:34 2008
@@ -5,7 +5,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
Copied: stdcxx/branches/4.3.x/include/rw/_mutex-pthread.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-pthread.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_mutex-pthread.h?p2=stdcxx/branches/4.3.x/include/rw/_mutex-pthread.h&p1=stdcxx/branches/4.2.x/include/rw/_mutex-pthread.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_mutex-pthread.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_mutex-pthread.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
Copied: stdcxx/branches/4.3.x/include/rw/_mutex-solaris.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-solaris.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_mutex-solaris.h?p2=stdcxx/branches/4.3.x/include/rw/_mutex-solaris.h&p1=stdcxx/branches/4.2.x/include/rw/_mutex-solaris.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_mutex-solaris.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_mutex-solaris.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*
Copied: stdcxx/branches/4.3.x/include/rw/_mutex-win32.h (from r696295,
stdcxx/branches/4.2.x/include/rw/_mutex-win32.h)
URL:
http://svn.apache.org/viewvc/stdcxx/branches/4.3.x/include/rw/_mutex-win32.h?p2=stdcxx/branches/4.3.x/include/rw/_mutex-win32.h&p1=stdcxx/branches/4.2.x/include/rw/_mutex-win32.h&r1=696295&r2=704152&rev=704152&view=diff
==============================================================================
--- stdcxx/branches/4.2.x/include/rw/_mutex-win32.h (original)
+++ stdcxx/branches/4.3.x/include/rw/_mutex-win32.h Mon Oct 13 09:25:34 2008
@@ -6,7 +6,7 @@
* This is an internal header file used to implement the C++ Standard
* Library. It should never be #included directly by a program.
*
- * $Id $
+ * $Id$
*
***************************************************************************
*