Commit 7ebb8242 by Paolo Carlini Committed by Paolo Carlini

re PR libstdc++/43394 (Spurious warnings while building parallel_list.cc on x86_64 -m32)

2010-03-16  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/43394
	* include/parallel/compatibility.h: Add __k8 and __core2 among the
	i386 targets supporting atomic operations.

From-SVN: r157498
parent 5ecfce5c
2010-03-16 Paolo Carlini <paolo.carlini@oracle.com> 2010-03-16 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/43394
* include/parallel/compatibility.h: Add __k8 and __core2 among the
i386 targets supporting atomic operations.
2010-03-16 Paolo Carlini <paolo.carlini@oracle.com>
* include/backward/hash_map: Use consistently the _BACKWARD_* * include/backward/hash_map: Use consistently the _BACKWARD_*
prefix for the include guard. prefix for the include guard.
* include/backward/hash_fun.h: Likewise. * include/backward/hash_fun.h: Likewise.
......
// -*- C++ -*- // -*- C++ -*-
// Copyright (C) 2007, 2008, 2009 Free Software Foundation, Inc. // Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
// //
// This file is part of the GNU ISO C++ Library. This library is free // 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 terms // software; you can redistribute it and/or modify it under the terms
...@@ -147,7 +147,8 @@ namespace __gnu_parallel ...@@ -147,7 +147,8 @@ namespace __gnu_parallel
#elif defined(__GNUC__) && defined(__x86_64) #elif defined(__GNUC__) && defined(__x86_64)
return __sync_fetch_and_add(__ptr, __addend); return __sync_fetch_and_add(__ptr, __addend);
#elif defined(__GNUC__) && defined(__i386) && \ #elif defined(__GNUC__) && defined(__i386) && \
(defined(__i686) || defined(__pentium4) || defined(__athlon)) (defined(__i686) || defined(__pentium4) || defined(__athlon) \
|| defined(__k8) || defined(__core2))
return __sync_fetch_and_add(__ptr, __addend); return __sync_fetch_and_add(__ptr, __addend);
#elif defined(__SUNPRO_CC) && defined(__sparc) #elif defined(__SUNPRO_CC) && defined(__sparc)
volatile int64_t __before, __after; volatile int64_t __before, __after;
...@@ -299,7 +300,8 @@ namespace __gnu_parallel ...@@ -299,7 +300,8 @@ namespace __gnu_parallel
#elif defined(__GNUC__) && defined(__x86_64) #elif defined(__GNUC__) && defined(__x86_64)
return __sync_bool_compare_and_swap(__ptr, __comparand, __replacement); return __sync_bool_compare_and_swap(__ptr, __comparand, __replacement);
#elif defined(__GNUC__) && defined(__i386) && \ #elif defined(__GNUC__) && defined(__i386) && \
(defined(__i686) || defined(__pentium4) || defined(__athlon)) (defined(__i686) || defined(__pentium4) || defined(__athlon) \
|| defined(__k8) || defined(__core2))
return __sync_bool_compare_and_swap(__ptr, __comparand, __replacement); return __sync_bool_compare_and_swap(__ptr, __comparand, __replacement);
#elif defined(__SUNPRO_CC) && defined(__sparc) #elif defined(__SUNPRO_CC) && defined(__sparc)
return atomic_cas_64((volatile unsigned long long*)__ptr, return atomic_cas_64((volatile unsigned long long*)__ptr,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment