aboutsummaryrefslogtreecommitdiff
path: root/sysdeps
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-06-28 21:05:24 +0000
committerUlrich Drepper <drepper@redhat.com>2004-06-28 21:05:24 +0000
commit346f18ae184514eacd3b90ae2e727dec0a3c34bb (patch)
tree7d07d03d260ec7fd7a396c7faef1555146d04fb0 /sysdeps
parentf3a1975474102f51d4276fb1bde7e48dadab0757 (diff)
downloadglibc-346f18ae184514eacd3b90ae2e727dec0a3c34bb.tar
glibc-346f18ae184514eacd3b90ae2e727dec0a3c34bb.tar.gz
glibc-346f18ae184514eacd3b90ae2e727dec0a3c34bb.tar.bz2
glibc-346f18ae184514eacd3b90ae2e727dec0a3c34bb.zip
[BZ #230, BZ #231]
Update. 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>.
Diffstat (limited to 'sysdeps')
-rw-r--r--sysdeps/alpha/dl-machine.h3
-rw-r--r--sysdeps/unix/alpha/sysdep.S5
-rw-r--r--sysdeps/unix/alpha/sysdep.h5
3 files changed, 8 insertions, 5 deletions
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) \