From 1e50662964de0684256118a2775ac05cf80e4f6f Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Sun, 8 Dec 2002 09:41:40 +0000 Subject: Update. * pthreadP.h: Enable pthread_cleanup_{push,pop} optimizations only inside libpthread. --- nptl/ChangeLog | 3 +++ nptl/pthreadP.h | 10 ++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/nptl/ChangeLog b/nptl/ChangeLog index b97c5120c8..a1152ea1a5 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,5 +1,8 @@ 2002-12-08 Ulrich Drepper + * pthreadP.h: Enable pthread_cleanup_{push,pop} optimizations only + inside libpthread. + * pt-fcntl.c (__fcntl): Initialize oldtype to avoid warning. * pthreadP.h: Declare __pthread_enable_asynccancel and diff --git a/nptl/pthreadP.h b/nptl/pthreadP.h index c90b782722..4fba194108 100644 --- a/nptl/pthreadP.h +++ b/nptl/pthreadP.h @@ -190,19 +190,21 @@ extern int __pthread_setcanceltype (int type, int *oldtype); extern int __pthread_enable_asynccancel (void) attribute_hidden; extern void __pthread_disable_asynccancel (int oldtype) attribute_hidden; +#ifdef IS_IN_libpthread /* Special versions which use non-exported functions. */ extern void _GI_pthread_cleanup_push (struct _pthread_cleanup_buffer *buffer, void (*routine) (void *), void *arg) attribute_hidden; -#undef pthread_cleanup_push -#define pthread_cleanup_push(routine,arg) \ +# undef pthread_cleanup_push +# define pthread_cleanup_push(routine,arg) \ { struct _pthread_cleanup_buffer _buffer; \ _GI_pthread_cleanup_push (&_buffer, (routine), (arg)); extern void _GI_pthread_cleanup_pop (struct _pthread_cleanup_buffer *buffer, int execute) attribute_hidden; -#undef pthread_cleanup_pop -#define pthread_cleanup_pop(execute) \ +# undef pthread_cleanup_pop +# define pthread_cleanup_pop(execute) \ _GI_pthread_cleanup_pop (&_buffer, (execute)); } +#endif #endif /* pthreadP.h */ -- cgit 1.4.1