PR libstdc++/28671 continued

2006-08-31  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/28671 continued
	* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't use
	CXXFLAGS when checking for atomic builtins.
	* configure: Regenerate.
	* include/bits/atomicity.h: Revert.

From-SVN: r116608
This commit is contained in:
Benjamin Kosnik 2006-08-31 22:20:09 +00:00 committed by Benjamin Kosnik
parent e282a2bc9f
commit 1b98c24e32
4 changed files with 20 additions and 2 deletions

View File

@ -1,3 +1,11 @@
2006-08-31 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28671 continued
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Don't use
CXXFLAGS when checking for atomic builtins.
* configure: Regenerate.
* include/bits/atomicity.h: Revert.
2006-08-31 Richard Guenther <rguenther@suse.de>
* include/ext/mt_allocator.h: Remove volatile qualifiers

View File

@ -2007,7 +2007,7 @@ int main()
}
EOF
old_CXXFLAGS="$CXXFLAGS"
CXXFLAGS="$CXXFLAGS -S"
CXXFLAGS=-S
if AC_TRY_EVAL(ac_compile); then
if grep __sync_fetch_and_add conftest.s >/dev/null 2>&1 ; then
enable_atomic_builtins=no

View File

@ -8025,7 +8025,7 @@ int main()
}
EOF
old_CXXFLAGS="$CXXFLAGS"
CXXFLAGS="$CXXFLAGS -S"
CXXFLAGS=-S
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
(eval $ac_compile) 2>&5
ac_status=$?

View File

@ -41,6 +41,15 @@
_GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
#ifdef _GLIBCXX_ATOMIC_BUILTINS
static inline _Atomic_word
__exchange_and_add(volatile _Atomic_word* __mem, int __val)
{ return __sync_fetch_and_add(__mem, __val); }
static inline void
__atomic_add(volatile _Atomic_word* __mem, int __val)
{ __sync_fetch_and_add(__mem, __val); }
#else
_Atomic_word
__attribute__ ((__unused__))
__exchange_and_add(volatile _Atomic_word* __mem, int __val);
@ -48,6 +57,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
void
__attribute__ ((__unused__))
__atomic_add(volatile _Atomic_word* __mem, int __val);
#endif
static inline _Atomic_word
__exchange_and_add_single(_Atomic_word* __mem, int __val)