This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: GCC 3.0 Release Criteria
> Date: Thu, 27 Apr 2000 17:22:31 -0700
> From: Chip Salzenberg <chip@valinux.com>
> According to Geoff Keating:
> > Actually, this doesn't happen for __register_frame_info under linux:
> >
> > 00000000 w DF *UND* 000000e4 GLIBC_2.1.3 __cxa_finalize
> > 00000000 w DF *UND* 000000f0 GLIBC_2.0 __deregister_frame_info
> > 00000000 w DF *UND* 000000a8 GLIBC_2.0 __register_frame_info
> >
> > I don't understand why, it's something to do with their being exported
> > from libc.so.
>
> I asked Ulrich about that, and he said that they're still being
> exported from glibc2 because in glibc1 they were exporting them,
> and if they stopped exporting them they'd break bincompat.
I think this is a simplified version of the whole long discussion.
Another reason they are exported is that they have to be for EH to
work across glibc functions. There must be only one copy of
__register_frame_info in any application.
Anyway, what I was wondering about was not why they were exported, but
why they weren't being overriden by copies from libgcc.a placed into
the application; or, to be more precise, why no such copies are made.
--
- Geoffrey Keating <geoffk@cygnus.com>