This is the mail archive of the libc-hacker@sourceware.org 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] |
On ven, 2005-11-18 at 20:19 +0100, Andreas Schwab wrote: > The current binutils revealed some symbol redefinition bugs in the > ppc/ppc64 port. > > Andreas. > > 2005-11-18 Andreas Schwab <schwab@suse.de> > > * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Remove useless alias. > > * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Handle > NO_WEAK_ALIAS. > * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Likewise. Done this way, readelf -a showed that the various symbols went from being WEAK to being GLOBAL. I've been testing the following patch instead for upload to Ubuntu. (identical readelf -a output on ppc; .free, .realloc and .malloc are GLOBAL instead of WEAK on ppc64 and I don't know why yet) 2005-11-17 Jeff Bailey <jbailey@ubuntu.com> * sysdeps/powerpc/powerpc32/fpu/s_lround.S: Extra strong_alias confuses new binutils * sysdeps/unix/sysv/linux/bind.S: bind should be the alias, not __bind. * sysdeps/unix/sysv/linux/getsockname.S: getsockname should be the alias, not __getsockname. * sysdeps/unix/sysv/linux/listen.S: listen should be the alias, not __listen. * sysdeps/unix/sysv/linux/setsockopt.S: setsockopt should be the alias, not __setsockopt. * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Don't set weak_alias if NO_WEAK_ALIAS is set. diff -ru build-tree/glibc-2.3.5/sysdeps/powerpc/powerpc32/fpu/s_lround.S glibc-2.3.5/sysdeps/powerpc/powerpc32/fpu/s_lround.S --- sysdeps/powerpc/powerpc32/fpu/s_lround.S 2004-06-30 18:29:12.000000000 -0400 +++ powerpc/powerpc32/fpu/s_lround.S 2005-11-17 18:35:46.000000000 -0500 @@ -88,7 +88,6 @@ b .L9 END (__lround) -strong_alias (__lround, __lround) weak_alias (__lround, lround) strong_alias (__lround, __lroundf) diff -ru build-tree/glibc-2.3.5/sysdeps/unix/sysv/linux/bind.S glibc-2.3.5/sysdeps/unix/sysv/linux/bind.S --- sysdeps/unix/sysv/linux/bind.S 2002-05-14 20:17:25.000000000 -0400 +++ sysdeps/unix/sysv/linux/bind.S 2005-11-17 20:21:57.000000000 -0500 @@ -2,4 +2,4 @@ #define NARGS 3 #define NO_WEAK_ALIAS 1 #include <socket.S> -weak_alias (bind, __bind) +weak_alias (__bind, bind) diff -ru build-tree/glibc-2.3.5/sysdeps/unix/sysv/linux/getsockname.S glibc-2.3.5/sysdeps/unix/sysv/linux/getsockname.S --- sysdeps/unix/sysv/linux/getsockname.S 2002-05-14 20:17:58.000000000 -0400 +++ sysdeps/unix/sysv/linux/getsockname.S 2005-11-17 20:34:14.000000000 -0500 @@ -2,4 +2,4 @@ #define NARGS 3 #define NO_WEAK_ALIAS 1 #include <socket.S> -weak_alias (getsockname, __getsockname) +weak_alias (__getsockname, getsockname) diff -ru build-tree/glibc-2.3.5/sysdeps/unix/sysv/linux/listen.S glibc-2.3.5/sysdeps/unix/sysv/linux/listen.S --- sysdeps/unix/sysv/linux/listen.S 2002-05-14 20:18:37.000000000 -0400 +++ sysdeps/unix/sysv/linux/listen.S 2005-11-17 20:49:01.000000000 -0500 @@ -2,4 +2,4 @@ #define NARGS 2 #define NO_WEAK_ALIAS 1 #include <socket.S> -weak_alias (listen, __listen) +weak_alias (__listen, listen) diff -ru build-tree/glibc-2.3.5/sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S glibc-2.3.5/sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S --- sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S 2003-07-11 18:46:12.000000000 -0400 +++ sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S 2005-11-17 20:29:56.000000000 -0500 @@ -116,4 +116,6 @@ PSEUDO_END (__socket) +#ifndef NO_WEAK_ALIAS weak_alias (__socket, socket) +#endif diff -ru build-tree/glibc-2.3.5/sysdeps/unix/sysv/linux/setsockopt.S glibc-2.3.5/sysdeps/unix/sysv/linux/setsockopt.S --- sysdeps/unix/sysv/linux/setsockopt.S 2002-05-14 20:19:09.000000000 -0400 +++ sysdeps/unix/sysv/linux/setsockopt.S 2005-11-17 20:49:48.000000000 -0500 @@ -2,4 +2,4 @@ #define NARGS 5 #define NO_WEAK_ALIAS 1 #include <socket.S> -weak_alias (setsockopt, __setsockopt) +weak_alias (__setsockopt, setsockopt)
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |