This is the mail archive of the libc-alpha@sourceware.cygnus.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Recommending gcc 2.95.1


> Date: Tue, 11 Jan 2000 17:53:54 +0100 (MET)
> From: Mark Kettenis <kettenis@wins.uva.nl>
> CC: libc-alpha@sourceware.cygnus.com
> 
>    Date: Tue, 11 Jan 2000 14:32:21 +0100
>    From: Thorsten Kukuk <kukuk@suse.de>
> 
>    Now we have again the problem with __register_frame_info and glibc,
>    this time on Alpha.
> 
> Argh...
> 
>    New binaries compiled with a gcc 2.95.x will not run on systems
>    where the same glibc is compiled with egcs :(
> 
> Programs that do not use exception handling (for example ordinary C
> programs) should not depend on __register_frame_info.  On ELF systems,
> programs should only contain a weak reference to
> __register_frame_info.  Could you check if this is indeed the case?

On powerpc, the fact that it's weak is not helpful, because it still
has a non-zero address in the executable (executables are not PIC on
powerpc) and so the program ends up executing code at location zero.


The way we fix this on powerpc is to extract the One True Version of
frame.o from libgcc.a and explicity link it into glibc.so---this is
made more entertaining because the mainline GCC still uses
setjmp/longjmp exception handling, so you need to dig it out of the
gcc binary package.

I'm seriously considering shipping this frame.o with the official
glibc.  Does anyone else think this is a good idea ;-)?

-- 
- Geoffrey Keating <geoffk@cygnus.com>

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]