header & multilib rearrangement for ppc ELF.

Geoff Keating geoffk@cygnus.com
Wed Apr 5 01:57:00 GMT 2000


> Date: Tue, 4 Apr 2000 21:23:49 -0700
> From: Richard Henderson <rth@cygnus.com>
> Cc: gcc-patches@gcc.gnu.org
> 
> On Tue, Apr 04, 2000 at 06:21:45PM -0700, Geoff Keating wrote:
> > +	* config/rs6000/sysv4.h (STARTFILE_LINUX_SPEC): Always use crtbegin.
> > +	(ENDFILE_LINUX_SPEC): Always use crtend.
> 
> This is a mistake.  It means you're not tracking
> the C++ ABI changes that have been made in that file.
> 
> Pay special attention to the handling of __dso_handle.

Hmmm.  I see.  I need to also generate multilibbed versions of
crtbeginS.o and crtendS.o.  That's slightly annoying, as I was hoping
to get rid of them, but I guess not.

Wait.  I don't see.  How is this really supposed to work?  It seems to
assume a limited model of the execution environment, in which each
process holds exactly one object which is not compiled with -shared;
this is not a safe assumption, as both the all-shared-object and
multiple-nonshared-object cases can occur (the first more frequently).

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


More information about the Gcc-patches mailing list