diff options
| author | Roland McGrath <roland@gnu.org> | 2003-03-02 11:45:12 +0000 |
|---|---|---|
| committer | Roland McGrath <roland@gnu.org> | 2003-03-02 11:45:12 +0000 |
| commit | bb0ddc2f1eca652aa8af56825b2ba3182498cc5a (patch) | |
| tree | 8b03305facff745ff0bd14c50e811dfd77cef343 /linuxthreads/sysdeps/powerpc/powerpc64 | |
| parent | 3093b1c70cd227c3329d2bbb77cd59ce2cbdcbd4 (diff) | |
| download | glibc-bb0ddc2f1eca652aa8af56825b2ba3182498cc5a.tar.xz glibc-bb0ddc2f1eca652aa8af56825b2ba3182498cc5a.zip | |
* sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
Don't use weak_extern for dl_rtld_map. Instead check only if [SHARED].
(elf_machine_rela): Clean up.
* sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
* sysdeps/powerpc/powerpc32/elf/configure.in: New file.
* sysdeps/powerpc/powerpc32/elf/configure: New generated file.
* elf/tls-macros.h [__powerpc__ && !__powerpc64__]
(TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
* sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
new relocs for TLS.
* sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
macros out of [SHARED].
(TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
* elf/elf.h: Define R_PPC_* relocs for TLS support.
Clean up R_PPC64_* macro definition comments.
Diffstat (limited to 'linuxthreads/sysdeps/powerpc/powerpc64')
| -rw-r--r-- | linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h b/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h index a3dc26fe21..e3a153af14 100644 --- a/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h +++ b/linuxthreads/sysdeps/powerpc/powerpc64/pt-machine.h @@ -1,6 +1,6 @@ /* Machine-dependent pthreads configuration and inline functions. powerpc version. - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2003 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 @@ -57,6 +57,16 @@ register struct _pthread_descr_struct *__thread_self __asm__("r13"); /* Initialize the thread-unique value. */ #define INIT_THREAD_SELF(descr, nr) (__thread_self = (descr)) +/* Access to data in the thread descriptor is easy. */ +#define THREAD_GETMEM(descr, member) \ + ((void) (descr), THREAD_SELF->member) +#define THREAD_GETMEM_NC(descr, member) \ + ((void) (descr), THREAD_SELF->member) +#define THREAD_SETMEM(descr, member, value) \ + ((void) (descr), THREAD_SELF->member = (value)) +#define THREAD_SETMEM_NC(descr, member, value) \ + ((void) (descr), THREAD_SELF->member = (value)) + /* Compare-and-swap for semaphores. */ /* note that test-and-set(x) is the same as !compare-and-swap(x, 0, 1) */ |
