diff options
author | Benjamin Kosnik <bkoz@redhat.com> | 2006-08-31 22:20:09 +0000 |
---|---|---|
committer | Benjamin Kosnik <bkoz@gcc.gnu.org> | 2006-08-31 22:20:09 +0000 |
commit | 1b98c24e32ce7df2d03bc03e26ae91431c90a693 (patch) | |
tree | c12dbe2c10f18d3245e82eafef8051e20aa47a4a | |
parent | e282a2bc9f65e7476487a3e4e4e3476c20407c4e (diff) | |
download | gcc-1b98c24e32ce7df2d03bc03e26ae91431c90a693.zip gcc-1b98c24e32ce7df2d03bc03e26ae91431c90a693.tar.gz gcc-1b98c24e32ce7df2d03bc03e26ae91431c90a693.tar.bz2 |
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
-rw-r--r-- | libstdc++-v3/ChangeLog | 8 | ||||
-rw-r--r-- | libstdc++-v3/acinclude.m4 | 2 | ||||
-rwxr-xr-x | libstdc++-v3/configure | 2 | ||||
-rw-r--r-- | libstdc++-v3/include/bits/atomicity.h | 10 |
4 files changed, 20 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 8fe4374..705b2ca 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -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 diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4 index a904427..8fe294d 100644 --- a/libstdc++-v3/acinclude.m4 +++ b/libstdc++-v3/acinclude.m4 @@ -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 diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure index cdabc3b..0050af3 100755 --- a/libstdc++-v3/configure +++ b/libstdc++-v3/configure @@ -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=$? diff --git a/libstdc++-v3/include/bits/atomicity.h b/libstdc++-v3/include/bits/atomicity.h index 75d9893f..79af99e 100644 --- a/libstdc++-v3/include/bits/atomicity.h +++ b/libstdc++-v3/include/bits/atomicity.h @@ -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) |