* sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>

instead of <pt-machine.h>.
	[_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
	testandset.
	From Ian Wienand <ianw@gelato.unsw.edu.au>.
This commit is contained in:
Roland McGrath 2002-11-12 08:31:50 +00:00
parent 1ab9366daa
commit 7ceef50ec9
2 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,11 @@
2002-11-12 Roland McGrath <roland@redhat.com>
* sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
instead of <pt-machine.h>.
[_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
testandset.
From Ian Wienand <ianw@gelato.unsw.edu.au>.
2002-11-10 Roland McGrath <roland@redhat.com>
* libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.

View File

@ -27,7 +27,7 @@
#include <elf/dynamic-link.h>
#include <dl-machine.h>
#ifdef _LIBC_REENTRANT
# include <pt-machine.h>
# include <ia64intrin.h>
# include <signal.h>
# include <time.h>
#endif
@ -73,7 +73,7 @@ local =
if (!__sigismember (&(l)->full_sigset, SIGINT)) \
__sigfillset (&(l)->full_sigset); \
\
while (testandset ((int *) &(l)->lock)) \
while (__sync_lock_test_and_set (&(l)->lock, 1)) \
{ \
struct timespec ts; \
if (i > 0) \
@ -88,7 +88,7 @@ local =
__sigprocmask (SIG_BLOCK, &(l)->full_sigset, &_saved_set);
# define unlock(l) \
__sigprocmask (SIG_SETMASK, &_saved_set, NULL); \
(l)->lock = 0; \
__sync_lock_release (&(l)->lock); \
}
#else
# define lock(l)