gcc/libstdc++-v3/include/ext
Doug Kwan afd82ef5ab gthr-posix.h (__gthread_cond_broadcast, [...]): Add to extend interface for POSIX conditional variables.
2007-09-13  Doug Kwan  <dougkwan@google.com>

        * gcc/gthr-posix.h (__gthread_cond_broadcast, __gthread_cond_wait,
        __gthread_cond_wait_recursive): Add to extend interface for POSIX
        conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
        support of conditional variables.
        * gcc/gthr-posix95.h (__gthread_cond_broadcast, __gthread_cond_wait,
        __gthread_cond_wait_recursive): Add to extend interface for POSIX
        conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
        support of conditional variables.
        * gcc/gthr-single.h (__gthread_cond_broadcast, __gthread_cond_wait,
        __gthread_cond_wait_recursive): Add to extend interface for POSIX
        conditional variables.
        * gcc/gthr.h: Update comments to document new interface.
        * libstdc++-v3/include/ext/concurrent.h (class __mutex,
        class __recursive_mutex): Add new method gthread_mutex to access
        inner gthread mutex.
        [__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
        class __concurrence_wait_error, class __cond): Add.
        * guard.cc (recursive_push, recursive_pop): Delete.
        (init_in_progress_flag, set_init_in_progress_flag): Add to
        replace recursive_push and recursive_pop.
        (throw_recursive_init_exception): Add.
        (acquire, __cxa_guard_acquire, __cxa_guard_abort and
        __cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
        for synchronization of static variable initialization.
        The global mutex is only held briefly when guards are
        accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
        which deadlocks.
        * testsuite/thread/guard.cc: Add new test. It deadlocks with the
        old locking code in libstdc++-v3/libsup++/guard.cc.

From-SVN: r129030
2007-10-05 01:35:46 -04:00
..
pb_ds all_pedantic_errors.cc: New. 2007-09-14 17:46:56 +00:00
algorithm stl_algobase.h: Do not include <cstring>. 2007-05-07 20:36:40 +00:00
array_allocator.h array (array<>::_M_at): New. 2006-10-28 22:02:44 +00:00
atomicity.h valarray-inst.cc, [...]: Fix comment typos. 2007-10-01 21:49:39 +01:00
bitmap_allocator.h throw_allocator.h: Consistent @file markup. 2006-11-29 20:59:22 +00:00
codecvt_specializations.h enc_filebuf.h: Resurrect, update. 2007-01-29 18:22:37 +00:00
concurrence.h gthr-posix.h (__gthread_cond_broadcast, [...]): Add to extend interface for POSIX conditional variables. 2007-10-05 01:35:46 -04:00
debug_allocator.h re PR libstdc++/27199 (ptrdiff_t and size_t outside of namespace std) 2006-04-23 14:54:26 +00:00
enc_filebuf.h enc_filebuf.h: Resurrect, update. 2007-01-29 18:22:37 +00:00
functional PR libstdc++/28080 (partial) 2007-02-26 09:36:39 +00:00
hash_fun.h c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
hash_map Add parallel mode. 2007-09-11 22:32:51 +00:00
hash_set Add parallel mode. 2007-09-11 22:32:51 +00:00
hashtable.h libstdc++.exp: Check CXXFLAGS. 2007-09-07 03:01:53 +00:00
iterator c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
malloc_allocator.h cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify namespace std members. 2007-04-11 01:11:56 +00:00
memory c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
mt_allocator.h mt_allocator.h (__pool_base::_M_get_align): Remove redundant const qualifier on the return type. 2006-12-02 00:31:34 +00:00
new_allocator.h re PR libstdc++/27199 (ptrdiff_t and size_t outside of namespace std) 2006-04-23 14:54:26 +00:00
numeric c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
numeric_traits.h numeric_traits.h: Do not include <limits>. 2007-04-13 10:54:37 +00:00
pod_char_traits.h pod_char_traits.h (char_traits<>::move): Use __builtin_memmove. 2007-05-11 18:58:08 +00:00
pool_allocator.h re PR libstdc++/31777 (GLIBCXX_FORCE_NEW doesn't always work in pool_allocator) 2007-05-02 18:37:00 +00:00
rb_tree c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
rc_string_base.h DR 438, [DR]. 2007-04-27 22:59:36 +00:00
rope libstdc++.exp: Check CXXFLAGS. 2007-09-07 03:01:53 +00:00
ropeimpl.h stl_construct.h (_Destroy(_ForwardIterator, _ForwardIterator __last, _Allocator)): Change the last parameter to _Allocator&. 2007-05-04 15:06:46 +00:00
slist libstdc++.exp: Check CXXFLAGS. 2007-09-07 03:01:53 +00:00
sso_string_base.h re PR libstdc++/32907 (Inefficient operator== in std::string) 2007-07-27 17:25:04 +00:00
stdio_filebuf.h c++config: Add in revised namespace associations. 2005-12-19 00:56:05 +00:00
stdio_sync_filebuf.h PR libstdc++/28080 (final) 2007-03-11 12:03:34 +00:00
throw_allocator.h Makefile.am (install-data-local): Remove pch-install rules. 2007-08-22 01:26:43 +00:00
type_traits.h re PR libstdc++/31426 (TR1 includes do not work with -std=c++0x) 2007-05-31 23:37:56 +00:00
typelist.h typelist.h (type_to_type): Remove. 2006-09-28 01:23:58 +00:00
vstring.h valarray-inst.cc, [...]: Fix comment typos. 2007-10-01 21:49:39 +01:00
vstring.tcc cxxabi-internal.h: Remove, to be replaced by... 2007-05-08 02:50:32 -04:00
vstring_fwd.h PR libstdc++/28080 (partial) 2007-02-18 11:32:44 +00:00
vstring_util.h numeric_traits.h: Do not include <limits>. 2007-04-13 10:54:37 +00:00