4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-01-15 19:09:58 +08:00
Christopher Faylor 3700578ee8 * dcrt0.cc (_dll_crt0): Set _main_tls as early as possible.
* thread.cc (pthread_mutex::can_be_unlocked): Remove check for
MUTEX_OWNER_ANONYMOUS since it is racy and unsafe.
(pthread::init_mainthread): Initialize thread directly from _my_tls.
(pthread::self): Ditto.
(pthread::get_tls_self_pointer): Delete.
(pthread_mutex::pthread_mutex): Use an event rather than a semaphore.
(pthread_mutex::lock): Rename from _<func>.  Derive self directly.
(pthread_mutex::tryunlock): Ditto.
(pthread_mutex::destroy): Ditto.
(pthread_mutex::unlock): Ditto.  Accommodate change from semaphore to event.
(pthread_mutex::_fixup_after_fork): Accommodate change from semaphore to event.
(pthread_mutex::init): Don't attempt to initialize a semaphore unless it is in
an initialized state.  Do this check under mutex_initialization_lock.lock
* thread.h (fast_mutex::init): Use event rather than semaphore.
(fast_mutex::lock): Ditto.
(pthread_mutex::_lock): Delete.
(pthread_mutex::_unlock): Ditto.
(pthread_mutex::_trylock): Ditto.
(pthread_mutex::_destroy): Ditto.
(pthread_mutex::get_pthread_self): Ditto.
(pthread_mutex::get_tls_self_pointer): Ditto.
(pthread_mutex::lock): Un-inline.
(pthread_mutex::unlock): Ditto.
(pthread_mutex::trylock): Ditto.
(pthread_mutex::destroy): Ditto.
2010-02-10 07:25:26 +00:00
..
2009-01-21 17:14:39 +00:00
2009-09-22 02:49:15 +00:00
2007-01-03 11:14:53 +00:00
2009-09-22 02:49:15 +00:00
2010-01-01 19:28:15 +00:00
2009-01-21 17:14:39 +00:00
2009-01-21 17:14:39 +00:00
2009-01-21 17:14:39 +00:00
2009-08-01 19:52:46 +00:00
2009-10-31 13:24:06 +00:00
2009-07-07 20:12:44 +00:00
2010-02-02 02:00:01 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2010-01-15 15:40:05 +00:00
2010-02-02 02:00:01 +00:00
2009-01-21 17:14:39 +00:00
2008-11-26 17:21:04 +00:00
2008-05-20 15:11:23 +00:00
2010-01-14 18:46:02 +00:00
2010-01-14 18:46:02 +00:00
2009-01-21 17:14:39 +00:00
2009-01-21 17:14:39 +00:00
2009-10-31 13:24:06 +00:00
2009-10-14 04:17:05 +00:00
2008-05-22 01:25:37 +00:00
2009-07-03 18:05:51 +00:00
2009-07-03 18:05:51 +00:00
2009-08-01 19:52:46 +00:00
2009-08-01 19:52:46 +00:00
2009-02-19 16:12:02 +00:00