This is the mail archive of the libc-hacker@sources.redhat.com mailing list for the glibc project.
Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Hi! This is what I had to apply to make glibc build on alpha. There are still many testsuite failures, but they all seem to be unrelated to this (lots of regex tests failed (which work on all other arches and there is nothing arch specific about that, maybe b0rken compiler), some math test failures, backtrace failures, 2 aio failures). Richard, I hope doing jsr ra, __errno_location is the right thing to do for librt.so (__errno_location symbol is defined only in libc.so and libpthread.so, not in librt.so, so it can't be !samegp). I was testing this on a kernel without POSIX mq support, so this hunk probably did not get as much testing as it ought to. 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>. nptl/ * sysdeps/alpha/tcb-offsets.sym (MULTIPLE_THREADS_OFFSET): Define unconditionally. --- libc/sysdeps/unix/alpha/sysdep.S.jj 2003-01-17 11:19:55.000000000 -0800 +++ libc/sysdeps/unix/alpha/sysdep.S 2004-06-28 12:33:47.000000000 -0700 @@ -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 --- libc/sysdeps/unix/alpha/sysdep.h.jj 2004-01-15 22:04:53.000000000 -0800 +++ libc/sysdeps/unix/alpha/sysdep.h 2004-06-28 08:51:09.000000000 -0700 @@ -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) \ --- libc/sysdeps/alpha/dl-machine.h.jj 2004-03-05 02:20:29.000000000 -0800 +++ libc/sysdeps/alpha/dl-machine.h 2004-06-28 08:59:52.000000000 -0700 @@ -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\ --- libc/nptl/sysdeps/alpha/tcb-offsets.sym.jj 2004-03-11 13:34:25.000000000 -0800 +++ libc/nptl/sysdeps/alpha/tcb-offsets.sym 2004-06-28 12:22:33.000000000 -0700 @@ -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) Jakub
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |