This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: [RFA:] elflink.c: Hide _GLOBAL_OFFSET_TABLE_
- From: Hans-Peter Nilsson <hans-peter dot nilsson at axis dot com>
- To: amodra at bigpond dot net dot au
- Cc: hans-peter dot nilsson at axis dot com, binutils at sources dot redhat dot com
- Date: Fri, 29 Oct 2004 13:45:52 +0200
- Subject: Re: [RFA:] elflink.c: Hide _GLOBAL_OFFSET_TABLE_
> Date: Fri, 29 Oct 2004 15:08:48 +0930
> From: Alan Modra <amodra@bigpond.net.au>
> On Fri, Oct 29, 2004 at 06:37:12AM +0200, Hans-Peter Nilsson wrote:
> > A long time ago, in
> > <URL:http://sources.redhat.com/ml/binutils/2003-04/msg00117.html>,
> > I suggested a patch to make the visibility of
> > _GLOBAL_OFFSET_TABLE_ target-selectable through a bfd hook, with
> > the intent on making it hidden, but keeping it visible to avoid
> > breaking something obscure somewhere. Alan Modra thought it'd
> > be just as good to make it *always* hidden. Here's the patch
>
> Jakub's changes to decrease the number of emitted sections symbols
> might interact badly with this change. It might be a good idea to
> test this on sparc before you go ahead. The problem is that if
> _GLOBAL_OFFSET_TABLE_ is hidden any relocs against it will be
> reduced to the .got section symbol, which may no longer be dynamic.
*Without* the patch, I see this failure:
FAIL: TLS -fno-pic -shared
In ld.log:
/home/hp/binutils/obj/ld/ld-new: BFD 2.15.94 20041029 assertion fail /home/hp/binutils/src/bfd/elf32-sparc.c:2485
/home/hp/binutils/obj/ld/ld-new: tmpdir/tlssunnopic32.o: probably compiled without -fPIC?
/home/hp/binutils/obj/ld/ld-new: final link failed: Bad value
*With* the patch applied and testsuite adjusted similar to i386,
there are no regressions for sparc-unknown-linux-gnu, cross from
i686-pc-linux-gnu. (I.e. the failure remains the same.)
Any other tests needed (besides running and adjusting testsuites
for other targets mentioning _GLOBAL_OFFSET_TABLE_ in their
testsuites)?
brgds, H-P