mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-23 11:20:07 +00:00
* sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap
prototpyes. * sysdeps/alpha/pt-machine.h: Likewise. * sysdeps/arm/pt-machine.h: Likewise. * sysdeps/cris/pt-machine.h: Likewise. * sysdeps/hppa/pt-machine.h: Likewise. * sysdeps/i386/i686/pt-machine.h: Likewise. * sysdeps/ia64/pt-machine.h: Likewise. * sysdeps/m68k/pt-machine.h: Likewise. * sysdeps/mips/pt-machine.h: Likewise. * sysdeps/powerpc/pt-machine.h: Likewise. * sysdeps/s390/s390-32/pt-machine.h: Likewise. * sysdeps/s390/s390-64/pt-machine.h: Likewise. * sysdeps/sh/pt-machine.h: Likewise. * sysdeps/sparc/sparc32/pt-machine.h: Likewise. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. * sysdeps/x86_64/pt-machine.h: Likewise. * internals.h: Move testandset and __compare_and_swap prototypes to pt-machine.h. 2002-03-17 Andreas Jaeger <aj@suse.de> * sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap prototpyes. * sysdeps/alpha/pt-machine.h: Likewise. * sysdeps/arm/pt-machine.h: Likewise. * sysdeps/cris/pt-machine.h: Likewise. * sysdeps/hppa/pt-machine.h: Likewise. * sysdeps/i386/i686/pt-machine.h: Likewise. * sysdeps/ia64/pt-machine.h: Likewise. * sysdeps/m68k/pt-machine.h: Likewise. * sysdeps/mips/pt-machine.h: Likewise. * sysdeps/powerpc/pt-machine.h: Likewise. * sysdeps/s390/s390-32/pt-machine.h: Likewise. * sysdeps/s390/s390-64/pt-machine.h: Likewise. * sysdeps/sh/pt-machine.h: Likewise. * sysdeps/sparc/sparc32/pt-machine.h: Likewise. * sysdeps/sparc/sparc64/pt-machine.h: Likewise. * sysdeps/x86_64/pt-machine.h: Likewise. * internals.h: Move testandset and __compare_and_swap prototypes to pt-machine.h.
This commit is contained in:
parent
7f0244deed
commit
f68137c94b
@ -1,3 +1,26 @@
|
||||
2002-03-17 Andreas Jaeger <aj@suse.de>
|
||||
|
||||
* sysdeps/i386/pt-machine.h: Add testandset and __compare_and_swap
|
||||
prototpyes.
|
||||
* sysdeps/alpha/pt-machine.h: Likewise.
|
||||
* sysdeps/arm/pt-machine.h: Likewise.
|
||||
* sysdeps/cris/pt-machine.h: Likewise.
|
||||
* sysdeps/hppa/pt-machine.h: Likewise.
|
||||
* sysdeps/i386/i686/pt-machine.h: Likewise.
|
||||
* sysdeps/ia64/pt-machine.h: Likewise.
|
||||
* sysdeps/m68k/pt-machine.h: Likewise.
|
||||
* sysdeps/mips/pt-machine.h: Likewise.
|
||||
* sysdeps/powerpc/pt-machine.h: Likewise.
|
||||
* sysdeps/s390/s390-32/pt-machine.h: Likewise.
|
||||
* sysdeps/s390/s390-64/pt-machine.h: Likewise.
|
||||
* sysdeps/sh/pt-machine.h: Likewise.
|
||||
* sysdeps/sparc/sparc32/pt-machine.h: Likewise.
|
||||
* sysdeps/sparc/sparc64/pt-machine.h: Likewise.
|
||||
* sysdeps/x86_64/pt-machine.h: Likewise.
|
||||
|
||||
* internals.h: Move testandset and __compare_and_swap prototypes
|
||||
to pt-machine.h.
|
||||
|
||||
2002-03-03 Andreas Jaeger <aj@suse.de>
|
||||
|
||||
* errno.c: Include resolv.h to avoid warning.
|
||||
|
@ -26,9 +26,6 @@
|
||||
#include <tls.h>
|
||||
#include "descr.h"
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
#include "semaphore.h"
|
||||
|
||||
#ifndef THREAD_GETMEM
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
Alpha version.
|
||||
Copyright (C) 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 1996, 1997, 1998, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Richard Henderson <rth@tamu.edu>.
|
||||
|
||||
@ -25,6 +25,8 @@
|
||||
|
||||
#include <asm/pal.h>
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Get some notion of the current stack. Need not be exactly the top
|
||||
of the stack, just something somewhere in the current frame. */
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
ARM version.
|
||||
Copyright (C) 1997, 1998, 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997, 1998, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Philip Blundell <philb@gnu.org>.
|
||||
|
||||
@ -19,10 +19,13 @@
|
||||
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
|
||||
#ifndef PT_EI
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* This will not work on ARM1 or ARM2 because SWP is lacking on those
|
||||
machines. Unfortunately we have no way to detect this at compile
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
CRIS version.
|
||||
Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -22,6 +22,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
PT_EI long int
|
||||
testandset (int *spinlock)
|
||||
{
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
hppa version.
|
||||
Copyright (C) 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Richard Henderson <rth@tamu.edu>.
|
||||
|
||||
@ -25,6 +25,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Get some notion of the current stack. Need not be exactly the top
|
||||
of the stack, just something somewhere in the current frame. */
|
||||
#define CURRENT_STACK_FRAME stack_pointer
|
||||
|
@ -27,6 +27,9 @@
|
||||
#endif
|
||||
#include "kernel-features.h"
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Get some notion of the current stack. Need not be exactly the top
|
||||
of the stack, just something somewhere in the current frame. */
|
||||
#define CURRENT_STACK_FRAME __builtin_frame_address (0)
|
||||
|
@ -26,6 +26,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Get some notion of the current stack. Need not be exactly the top
|
||||
of the stack, just something somewhere in the current frame. */
|
||||
#define CURRENT_STACK_FRAME __builtin_frame_address (0)
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
IA-64 version.
|
||||
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -22,6 +22,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Make sure gcc doesn't try to be clever and move things around on
|
||||
us. We need to use _exactly_ the address the user gave us, not some
|
||||
alias that contains the same information. */
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
m68k version.
|
||||
Copyright (C) 1996, 1998, 2000 Free Software Foundation, Inc.
|
||||
Copyright (C) 1996, 1998, 2000, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Richard Henderson <rth@tamu.edu>.
|
||||
|
||||
@ -23,6 +23,8 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Spinlock implementation; required. */
|
||||
PT_EI long int
|
||||
|
@ -27,6 +27,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Memory barrier. */
|
||||
#define MEMORY_BARRIER() __asm__ ("" : : : "memory")
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
powerpc version.
|
||||
Copyright (C) 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
The GNU C Library is free software; you can redistribute it and/or
|
||||
@ -25,6 +25,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* For multiprocessor systems, we want to ensure all memory accesses
|
||||
are completed before we reset a lock. On other systems, we still
|
||||
need to make sure that the compiler has flushed everything to memory. */
|
||||
@ -65,7 +68,7 @@ __compare_and_swap (long int *p, long int oldval, long int newval)
|
||||
}
|
||||
|
||||
PT_EI int
|
||||
__compare_and_swap_with_release_semantics (long int *p,
|
||||
__compare_and_swap_with_release_semantics (long int *p,
|
||||
long int oldval, long int newval)
|
||||
{
|
||||
int ret;
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
S390 version.
|
||||
Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
@ -23,6 +23,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* For multiprocessor systems, we want to ensure all memory accesses
|
||||
are completed before we reset a lock. On other systems, we still
|
||||
need to make sure that the compiler has flushed everything to memory. */
|
||||
@ -98,4 +101,3 @@ __compare_and_swap(long int *p, long int oldval, long int newval)
|
||||
: "cc", "0", "1" );
|
||||
return retval == 0;
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
64 bit S/390 version.
|
||||
Copyright (C) 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001, 2002 Free Software Foundation, Inc.
|
||||
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
|
||||
This file is part of the GNU C Library.
|
||||
|
||||
@ -23,6 +23,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* For multiprocessor systems, we want to ensure all memory accesses
|
||||
are completed before we reset a lock. On other systems, we still
|
||||
need to make sure that the compiler has flushed everything to memory. */
|
||||
@ -103,4 +106,3 @@ __compare_and_swap(long int *p, long int oldval, long int newval)
|
||||
: "cc", "0");
|
||||
return retval == 0;
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
SuperH version.
|
||||
Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Niibe Yutaka <gniibe@m17n.org>.
|
||||
|
||||
@ -23,6 +23,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Spinlock implementation; required. */
|
||||
PT_EI long int
|
||||
testandset (int *spinlock)
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
sparc version.
|
||||
Copyright (C) 1996, 1997, 1998, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Richard Henderson <rth@tamu.edu>.
|
||||
|
||||
@ -23,6 +23,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Spinlock implementation; required. */
|
||||
PT_EI long int
|
||||
testandset (int *spinlock)
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Machine-dependent pthreads configuration and inline functions.
|
||||
Sparc v9 version.
|
||||
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Richard Henderson <rth@tamu.edu>.
|
||||
|
||||
@ -23,6 +23,8 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Spinlock implementation; required. */
|
||||
PT_EI long int
|
||||
|
@ -27,6 +27,9 @@
|
||||
# define PT_EI extern inline
|
||||
#endif
|
||||
|
||||
extern long int testandset (int *spinlock);
|
||||
extern int __compare_and_swap (long int *p, long int oldval, long int newval);
|
||||
|
||||
/* Get some notion of the current stack. Need not be exactly the top
|
||||
of the stack, just something somewhere in the current frame. */
|
||||
#define CURRENT_STACK_FRAME stack_pointer
|
||||
|
Loading…
Reference in New Issue
Block a user