aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--NEWS7
-rw-r--r--sysdeps/generic/libc-start.c5
-rw-r--r--sysdeps/powerpc/powerpc64/dl-machine.h4
4 files changed, 13 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index f36934f..51010a5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2003-03-02 Roland McGrath <roland@redhat.com>
+ * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
+ variable.
+
* 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.
diff --git a/NEWS b/NEWS
index 890bcdc..4189492 100644
--- a/NEWS
+++ b/NEWS
@@ -1,10 +1,15 @@
-GNU C Library NEWS -- history of user-visible changes. 2003-1-12
+GNU C Library NEWS -- history of user-visible changes. 2003-3-2
Copyright (C) 1992-2002, 2003 Free Software Foundation, Inc.
See the end for copying conditions.
Please send GNU C library bug reports using the `glibcbug' script to
<bugs@gnu.org>. Please send questions and suggestions to <bug-glibc@gnu.org>.
+Version 2.3.3
+
+* ELF thread-local storage support (TLS) now works on PowerPC and PowerPC64;
+ implemented by Paul Mackerras, Steven Munroe, and Roland McGrath.
+
Version 2.3.2
* Thread-safe interfaces for many functions that access locale data
diff --git a/sysdeps/generic/libc-start.c b/sysdeps/generic/libc-start.c
index a6dbebe..b79c803 100644
--- a/sysdeps/generic/libc-start.c
+++ b/sysdeps/generic/libc-start.c
@@ -158,12 +158,11 @@ BP_SYM (__libc_start_main) (int (*main) (int, char **, char **),
/* One less thread. Decrement the counter. If it is zero we
terminate the entire process. */
result = 0;
- int *const ptr;
# ifdef SHARED
- ptr = __libc_pthread_functions.ptr_nthreads;
+ int *const ptr = __libc_pthread_functions.ptr_nthreads;
# else
extern int __nptl_nthreads __attribute ((weak));
- ptr = &__nptl_nthreads;
+ int *const ptr = &__nptl_nthreads;
# endif
if (! atomic_decrement_and_test (ptr))
diff --git a/sysdeps/powerpc/powerpc64/dl-machine.h b/sysdeps/powerpc/powerpc64/dl-machine.h
index 8798263..93cbc8b 100644
--- a/sysdeps/powerpc/powerpc64/dl-machine.h
+++ b/sysdeps/powerpc/powerpc64/dl-machine.h
@@ -610,14 +610,14 @@ elf_machine_rela (struct link_map *map,
# endif
return;
- case R_PPC_DTPREL64:
+ case R_PPC64_DTPREL64:
/* During relocation all TLS symbols are defined and used.
Therefore the offset is already correct. */
# ifndef RTLD_BOOTSTRAP
*reloc_addr = TLS_DTPREL_VALUE (sym, reloc);
# endif
break;
- case R_PPC_TPREL64:
+ case R_PPC64_TPREL64:
# ifndef RTLD_BOOTSTRAP
if (sym_map)
{