This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH, rs6000] fix visibility problems for out-of-line prologues/epilogues
- From: "David Edelsohn" <dje dot gcc at gmail dot com>
- To: "Jakub Jelinek" <jakub at redhat dot com>, "Alan Modra" <amodra at bigpond dot net dot au>
- Cc: "GCC Patches" <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 7 Oct 2008 17:31:01 -0400
- Subject: Re: [PATCH, rs6000] fix visibility problems for out-of-line prologues/epilogues
>>>>> Jakub Jelinek writes:
> On Tue, Oct 07, 2008 at 01:07:07PM -0700, Nathan Froyd wrote:
> > On Tue, Oct 07, 2008 at 09:53:55PM +0200, Jakub Jelinek wrote:
> > > On Tue, Oct 07, 2008 at 10:45:17AM -0700, Nathan Froyd wrote:
> > > > The patch below solves a problem related to the visibility of the
> > > > out-of-line prologue/epilogue functions. These functions are called by
> > > > the compiler at -Os; since they have non-standard calling conventions,
> > > > they are placed into static libgcc.a. However, they have default
> > > > visibility on ELF systems, which leads to the following failure mode:
> > >
> > > Many eons ago gas didn't support .hidden, do we still support such old
> > > binutils and if yes, shouldn't you add .hidden only if HAVE_GAS_HIDDEN
> > > is defined?
> > SH and Xtensa, at least, use .hidden unguarded by #if in some
> > configurations. So I suppose it's David's call as to whether he wants
> > to continue support for old (non-.hidden) binutils in the rs6000
> > backend. David?
> In the Xtensa case that's understandable, as xtensa support has been added
> to binutils more than 3 years after .hidden support (the latter 2000-01-03,
> the former 2003-04-01).
The patch is for GCC 4.4, not earlier releases. There are plenty of features
in the rs6000 port that require newer versions of Binutils, but GCC probably
can work with older Binutils.
Alan, do you have any opinion about guarding the use of .hidden so that GCC
can work with older versions of Binutils?