mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-14 10:30:56 +08:00
irix_threads.cc (GC_pthread_detach): Do not use REAL_FUNC.
* irix_threads.cc (GC_pthread_detach): Do not use REAL_FUNC. (GC_pthread_create): Fix typo. (GC_TRY_LOCK): Likewise. * include/private/gc_locks.h (GC_test_and_set): Only take one one argument. (LOCK): Adjust appropriately. * include/private/gc_priv.h (SIG_SUSPEND): Use SIGRTMIN if _SIGRTMIN is unavailable. From-SVN: r53636
This commit is contained in:
parent
bce0deb2b6
commit
61039cd09e
@ -1,3 +1,14 @@
|
||||
Sun May 19 11:32:03 2002 Mark P Mitchell <mark@codesourcery.com>
|
||||
|
||||
* irix_threads.cc (GC_pthread_detach): Do not use REAL_FUNC.
|
||||
(GC_pthread_create): Fix typo.
|
||||
(GC_TRY_LOCK): Likewise.
|
||||
* include/private/gc_locks.h (GC_test_and_set): Only take one
|
||||
one argument.
|
||||
(LOCK): Adjust appropriately.
|
||||
* include/private/gc_priv.h (SIG_SUSPEND): Use SIGRTMIN if
|
||||
_SIGRTMIN is unavailable.
|
||||
|
||||
2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
|
||||
|
||||
* acinclude.m4: Allow for PWDCMD to override hardcoded pwd.
|
||||
|
@ -221,9 +221,9 @@
|
||||
# ifdef MIPS
|
||||
# if __mips < 3 || !(defined (_ABIN32) || defined(_ABI64)) \
|
||||
|| !defined(_COMPILER_VERSION) || _COMPILER_VERSION < 700
|
||||
# define GC_test_and_set(addr, v) test_and_set(addr,v)
|
||||
# define GC_test_and_set(addr) test_and_set(addr, 1)
|
||||
# else
|
||||
# define GC_test_and_set(addr, v) __test_and_set(addr,v)
|
||||
# define GC_test_and_set(addr) __test_and_set(addr,1)
|
||||
# define GC_clear(addr) __lock_release(addr);
|
||||
# define GC_CLEAR_DEFINED
|
||||
# endif
|
||||
@ -431,7 +431,7 @@
|
||||
# define NO_THREAD (pthread_t)(-1)
|
||||
# define UNSET_LOCK_HOLDER() GC_lock_holder = NO_THREAD
|
||||
# define I_HOLD_LOCK() (pthread_equal(GC_lock_holder, pthread_self()))
|
||||
# define LOCK() { if (GC_test_and_set(&GC_allocate_lock, 1)) GC_lock(); }
|
||||
# define LOCK() { if (GC_test_and_set(&GC_allocate_lock)) GC_lock(); }
|
||||
# define UNLOCK() GC_clear(&GC_allocate_lock);
|
||||
extern VOLATILE GC_bool GC_collecting;
|
||||
# define ENTER_GC() \
|
||||
|
@ -1916,7 +1916,11 @@ void GC_err_puts GC_PROTO((GC_CONST char *s));
|
||||
# define SIG_SUSPEND SIGPWR
|
||||
# endif
|
||||
# else /* !GC_LINUX_THREADS */
|
||||
# define SIG_SUSPEND _SIGRTMIN + 6
|
||||
# if defined(_SIGRTMIN)
|
||||
# define SIG_SUSPEND _SIGRTMIN + 6
|
||||
# else
|
||||
# define SIG_SUSPEND SIGRTMIN + 6
|
||||
# endif
|
||||
# endif
|
||||
# endif /* !SIG_SUSPEND */
|
||||
|
||||
|
@ -519,7 +519,7 @@ int GC_pthread_detach(pthread_t thread)
|
||||
LOCK();
|
||||
thread_gc_id = GC_lookup_thread(thread);
|
||||
UNLOCK();
|
||||
result = REAL_FUNC(pthread_detach)(thread);
|
||||
result = pthread_detach(thread);
|
||||
if (result == 0) {
|
||||
LOCK();
|
||||
thread_gc_id -> flags |= DETACHED;
|
||||
@ -599,7 +599,7 @@ GC_pthread_create(pthread_t *new_thread,
|
||||
si -> start_routine = start_routine;
|
||||
si -> arg = arg;
|
||||
LOCK();
|
||||
if (!GC_initialized) GC_init();
|
||||
if (!GC_is_initialized) GC_init();
|
||||
if (NULL == attr) {
|
||||
stack = 0;
|
||||
(void) pthread_attr_init(&new_attr);
|
||||
@ -655,7 +655,7 @@ VOLATILE GC_bool GC_collecting = 0;
|
||||
#define SLEEP_THRESHOLD 3
|
||||
|
||||
unsigned long GC_allocate_lock = 0;
|
||||
# define GC_TRY_LOCK() !GC_test_and_set(&GC_allocate_lock,1)
|
||||
# define GC_TRY_LOCK() !GC_test_and_set(&GC_allocate_lock)
|
||||
# define GC_LOCK_TAKEN GC_allocate_lock
|
||||
|
||||
void GC_lock()
|
||||
|
Loading…
x
Reference in New Issue
Block a user