This is the mail archive of the
libc-alpha@sources.redhat.com
mailing list for the glibc project.
Re: libgcc-compat patch and gcc 2.95.4 on ppclinux
- From: Jakub Jelinek <jakub at redhat dot com>
- To: "H. J. Lu" <hjl at lucon dot org>
- Cc: Jack Howarth <howarth at bromo dot med dot uc dot edu>, libc-alpha at sources dot redhat dot com
- Date: Sat, 13 Jul 2002 09:31:37 +0200
- Subject: Re: libgcc-compat patch and gcc 2.95.4 on ppclinux
- References: <200207120230.WAA76132@bromo.msbb.uc.edu> <20020712224302.A10311@lucon.org>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Fri, Jul 12, 2002 at 10:43:02PM -0700, H. J. Lu wrote:
> Please try this patch. The problem is gcc 2.95.4 won't make those
> libgcc functions hidden. We have to help it.
>
> --- libc/sysdeps/powerpc/libgcc-compat.c.gcc Mon May 20 17:19:09 2002
> +++ libc/sysdeps/powerpc/libgcc-compat.c Fri Jul 12 22:39:18 2002
> @@ -23,6 +23,7 @@
>
> #if SHLIB_COMPAT(libc, GLIBC_2_0, GLIBC_2_2_6)
>
> +__asm__(".hidden __ashldi3");
> extern int64_t __ashldi3 (int64_t, int32_t);
> int64_t INTUSE (__ashldi3) (int64_t u, int32_t b)
> {
Err, isn't this an exact opposite of what is desirable?
This would make __ashldi3 in libgcc-compat.o hidden, while it has to
be visible, so with gcc-3.1+ you'd end up
with not exporting those functions at all, while with 2.95.x you'd
be exporting the libgcc.a functions (yes, that's what you want in that
case).
IMHO libgcc-compat.c should be only compiled in if the functions are .hidden
in libgcc.a (ie. gcc 3.1+), otherwise glibc just needs to ensure all
the needed libgcc.a functions are included in the link.
Jakub