diff options
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | nptl/ChangeLog | 5 | ||||
-rw-r--r-- | nptl/sysdeps/alpha/tcb-offsets.sym | 2 | ||||
-rw-r--r-- | sysdeps/alpha/dl-machine.h | 3 | ||||
-rw-r--r-- | sysdeps/unix/alpha/sysdep.S | 5 | ||||
-rw-r--r-- | sysdeps/unix/alpha/sysdep.h | 5 |
6 files changed, 25 insertions, 7 deletions
@@ -1,3 +1,15 @@ +2004-06-28 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/alpha/sysdep.h (inline_syscall6): Fix a typo. + + [BZ #231] + * sysdeps/unix/alpha/sysdep.S (__syscall_error): Avoid !samegp + relocation in librt.so. + + [BZ #230] + * sysdeps/alpha/dl-machine.h (_dl_start_user): Use ldah/ldl to load + _dl_skip_args. Patch by Jakub Bogusz <qboosh@pld-linux.org>. + 2004-06-27 Ulrich Drepper <drepper@redhat.com> * elf/ldconfig.c (add_dir): Take chroot into account. diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 275d1a7ff5..6ef7ff136f 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,5 +1,10 @@ 2004-06-28 Jakub Jelinek <jakub@redhat.com> + * sysdeps/alpha/tcb-offsets.sym (MULTIPLE_THREADS_OFFSET): Define + unconditionally. + +2004-06-28 Jakub Jelinek <jakub@redhat.com> + * sysdeps/pthread/pthread_rwlock_timedwrlock.c (pthread_rwlock_timedwrlock): Return EINVAL if tv_nsec is negative, instead of tv_sec. diff --git a/nptl/sysdeps/alpha/tcb-offsets.sym b/nptl/sysdeps/alpha/tcb-offsets.sym index a1a1e45951..14494ee2cd 100644 --- a/nptl/sysdeps/alpha/tcb-offsets.sym +++ b/nptl/sysdeps/alpha/tcb-offsets.sym @@ -7,7 +7,5 @@ # define __builtin_thread_pointer() ((void *) 0) # define thread_offsetof(mem) ((void *) &THREAD_SELF->mem - (void *) 0) -#if TLS_MULTIPLE_THREADS_IN_TCB MULTIPLE_THREADS_OFFSET thread_offsetof (header.multiple_threads) -#endif PID_OFFSET thread_offsetof (pid) diff --git a/sysdeps/alpha/dl-machine.h b/sysdeps/alpha/dl-machine.h index 35d7e1dbde..7c5f3c1518 100644 --- a/sysdeps/alpha/dl-machine.h +++ b/sysdeps/alpha/dl-machine.h @@ -321,7 +321,8 @@ _dl_start_user: \n\ mov $0, $9 \n\ /* See if we were run as a command with the executable \n\ file name as an extra leading argument. */ \n\ - ldl $1, _dl_skip_args($gp) !gprel \n\ + ldah $1, _dl_skip_args($gp) !gprelhigh \n\ + ldl $1, _dl_skip_args($1) !gprellow \n\ bne $1, $fixup_stack \n\ $fixup_stack_ret: \n\ /* The special initializer gets called with the stack \n\ diff --git a/sysdeps/unix/alpha/sysdep.S b/sysdeps/unix/alpha/sysdep.S index ce848f4e9b..c67a6542f6 100644 --- a/sysdeps/unix/alpha/sysdep.S +++ b/sysdeps/unix/alpha/sysdep.S @@ -1,4 +1,5 @@ -/* Copyright (C) 1993, 1996, 1998, 2002, 2003 Free Software Foundation, Inc. +/* Copyright (C) 1993, 1996, 1998, 2002, 2003, 2004 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Brendan Kehoe (brendan@zen.org). @@ -95,7 +96,7 @@ __syscall_error: PROLOGUE /* Find our per-thread errno address */ -#ifdef PIC +#if defined PIC && !defined IS_IN_librt bsr ra, __errno_location !samegp #else jsr ra, __errno_location diff --git a/sysdeps/unix/alpha/sysdep.h b/sysdeps/unix/alpha/sysdep.h index 26cf918c1c..f60eafea49 100644 --- a/sysdeps/unix/alpha/sysdep.h +++ b/sysdeps/unix/alpha/sysdep.h @@ -1,4 +1,5 @@ -/* Copyright (C) 1992, 1995, 1996, 2000, 2003 Free Software Foundation, Inc. +/* Copyright (C) 1992, 1995, 1996, 2000, 2003, 2004 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Brendan Kehoe (brendan@zen.org). @@ -364,7 +365,7 @@ __LABEL(name) \ __asm__ __volatile__ \ ("callsys # %0 %1 <= %2 %3 %4 %5 %6 %7 %8" \ : inline_syscall_r0_out_constraint (_sc_0), \ - "=r"(_sc_19) "=r"(_sc_16), "=r"(_sc_17), \ + "=r"(_sc_19), "=r"(_sc_16), "=r"(_sc_17), \ "=r"(_sc_18), "=r"(_sc_20), "=r"(_sc_21) \ : "0"(_sc_0), "2"(_sc_16), "3"(_sc_17), "4"(_sc_18), \ "1"(_sc_19), "5"(_sc_20), "6"(_sc_21) \ |