diff options
author | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-26 22:00:28 +0000 |
---|---|---|
committer | danglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-01-26 22:00:28 +0000 |
commit | bfd7d80d7f5a6c61912465bfd81188dd9b6cacaf (patch) | |
tree | 85db8df0b86bd9d7411eb66fbd849450b99ac43d /gcc/gthr-tpf.h | |
parent | 32dea8e67e93e24418eb71510f4d248241510c30 (diff) | |
download | gcc-bfd7d80d7f5a6c61912465bfd81188dd9b6cacaf.tar.gz |
PR other/24829
PR target/24831
* gthr-dce.h: Do not gthrw-ify pthread_once_init,
pthread_key_delete. From John David Anglin. gthrw-ify
pthread_getunique_np only if it it's not a macro. Delete
UNUSED macro.
(__gthread_objc_condition_allocate, __gthread_objc_condition_deallocate,
__gthread_objc_condition_wait, __gthread_objc_condition_broadcast,
__gthread_objc_condition_signal, __gthread_key_delete): Add
"__attribute__ ((__unused__))" to unused arguments.
(__gthread_recursive_mutex_init_function): Add missing return.
* gthr-dce.h, gthr-tpf.h, gthr-solaris.h, gthr-posix.h,
gthr-posix95.h: Use macro-based approach for name redirection
on targets missing weakref.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@110278 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gthr-tpf.h')
-rw-r--r-- | gcc/gthr-tpf.h | 44 |
1 files changed, 21 insertions, 23 deletions
diff --git a/gcc/gthr-tpf.h b/gcc/gthr-tpf.h index f797a49671f..e6951e1a01d 100644 --- a/gcc/gthr-tpf.h +++ b/gcc/gthr-tpf.h @@ -70,25 +70,23 @@ typedef pthread_mutex_t __gthread_recursive_mutex_t; #if SUPPORTS_WEAK && GTHREAD_USE_WEAK # define __gthrw(name) \ - static __typeof(name) __gthrw_ ## name __attribute__ ((__weakref__(#name))) + static __typeof(name) __gthrw_ ## name __attribute__ ((__weakref__(#name))); +# define __gthrw_(name) __gthrw_ ## name #else -# define __gthrw_asmname(cname) __gthrw_asmnamep (__USER_LABEL_PREFIX__, cname) -# define __gthrw_asmnamep(prefix, cname) __gthrw_string (prefix) cname -# define __gthrw_string(x) #x -# define __gthrw(name) \ - extern __typeof(name) __gthrw_ ## name __asm (__gthrw_asmname (#name)) +# define __gthrw(name) +# define __gthrw_(name) name #endif -__gthrw(pthread_once); -__gthrw(pthread_key_create); -__gthrw(pthread_key_delete); -__gthrw(pthread_getspecific); -__gthrw(pthread_setspecific); -__gthrw(pthread_create); +__gthrw(pthread_once) +__gthrw(pthread_key_create) +__gthrw(pthread_key_delete) +__gthrw(pthread_getspecific) +__gthrw(pthread_setspecific) +__gthrw(pthread_create) -__gthrw(pthread_mutex_lock); -__gthrw(pthread_mutex_trylock); -__gthrw(pthread_mutex_unlock); +__gthrw(pthread_mutex_lock) +__gthrw(pthread_mutex_trylock) +__gthrw(pthread_mutex_unlock) static inline int __gthread_active_p (void) @@ -100,7 +98,7 @@ static inline int __gthread_once (__gthread_once_t *once, void (*func) (void)) { if (__tpf_pthread_active ()) - return __gthrw_pthread_once (once, func); + return __gthrw_(pthread_once) (once, func); else return -1; } @@ -109,7 +107,7 @@ static inline int __gthread_key_create (__gthread_key_t *key, void (*dtor) (void *)) { if (__tpf_pthread_active ()) - return __gthrw_pthread_key_create (key, dtor); + return __gthrw_(pthread_key_create) (key, dtor); else return -1; } @@ -118,7 +116,7 @@ static inline int __gthread_key_delete (__gthread_key_t key) { if (__tpf_pthread_active ()) - return __gthrw_pthread_key_delete (key); + return __gthrw_(pthread_key_delete) (key); else return -1; } @@ -127,7 +125,7 @@ static inline void * __gthread_getspecific (__gthread_key_t key) { if (__tpf_pthread_active ()) - return __gthrw_pthread_getspecific (key); + return __gthrw_(pthread_getspecific) (key); else return NULL; } @@ -136,7 +134,7 @@ static inline int __gthread_setspecific (__gthread_key_t key, const void *ptr) { if (__tpf_pthread_active ()) - return __gthrw_pthread_setspecific (key, ptr); + return __gthrw_(pthread_setspecific) (key, ptr); else return -1; } @@ -145,7 +143,7 @@ static inline int __gthread_mutex_lock (__gthread_mutex_t *mutex) { if (__tpf_pthread_active ()) - return __gthrw_pthread_mutex_lock (mutex); + return __gthrw_(pthread_mutex_lock) (mutex); else return 0; } @@ -154,7 +152,7 @@ static inline int __gthread_mutex_trylock (__gthread_mutex_t *mutex) { if (__tpf_pthread_active ()) - return __gthrw_pthread_mutex_trylock (mutex); + return __gthrw_(pthread_mutex_trylock) (mutex); else return 0; } @@ -163,7 +161,7 @@ static inline int __gthread_mutex_unlock (__gthread_mutex_t *mutex) { if (__tpf_pthread_active ()) - return __gthrw_pthread_mutex_unlock (mutex); + return __gthrw_(pthread_mutex_unlock) (mutex); else return 0; } |