This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [gold] Merging string literals with bigger alignment
- From: Alan Modra <amodra at gmail dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: Cary Coutant <ccoutant at google dot com>, Alexander Ivchenko <aivchenk at gmail dot com>, binutils <binutils at sourceware dot org>
- Date: Thu, 2 May 2013 12:59:20 +0930
- Subject: Re: [gold] Merging string literals with bigger alignment
- References: <CAKOQZ8y7DMUSWh5dozvxBD1a8uW981K+Gwn95JTqcGFkAHdVOg at mail dot gmail dot com> <CACysShhF+sh1vebktXwoc6epBJ8FQTMTjXRURm7nJT9MfjUvLA at mail dot gmail dot com> <CAHACq4p4fqA2YiJLPsxoP=+KMy-9H+r2Jyp_WXhzxxcDgxa0aQ at mail dot gmail dot com> <CACysShiw_kcnug9u8ShzS-k0qQVdrz3wk5kB2Aqh=cZmaQrPhA at mail dot gmail dot com> <CAHACq4q7CReFbYaeK+APLLhi+oKxBcv4d-2o4wjvkxRpx=Uj_A at mail dot gmail dot com> <20130501022527 dot GC5221 at bubble dot grove dot modra dot org> <CAHACq4otE1CiMUanv0paiMu=cDNE8UsyrpLCpBbBYaZDH4kQrQ at mail dot gmail dot com> <CAMe9rOpsr1xDvU5tWA5GFp0q+Z+=u_9=eh3LnsS4P_zojLth8A at mail dot gmail dot com> <CAMe9rOqSd4GA8UGrvtPWsNM6CMWFjL=dowpSux=0ruWPq=JpcA at mail dot gmail dot com> <CAMe9rOo9NW=3CfDCCm+uh06kFRfHM=Q-LgmTMrD0pVDm5pft9A at mail dot gmail dot com>
On Wed, May 01, 2013 at 12:21:41PM -0700, H.J. Lu wrote:
> On Wed, May 1, 2013 at 11:28 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> > On Wed, May 1, 2013 at 11:24 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> >> On Wed, May 1, 2013 at 10:43 AM, Cary Coutant <ccoutant@google.com> wrote:
> >>>> `echo g++ -W -Wall -Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fmerge-constants -g -O2 -o basic_static_test | sed -e 's/-Wp,-D_FORTIFY_SOURCE=[0-9][0-9]*//'` -Bgcctestdir/ -static basic_test.o
> >>>> collect2: ld terminated with signal 6 [Aborted]
> >>>> terminate called after throwing an instance of 'std::bad_alloc'
> >>>> what(): std::bad_alloc
> >>>> make[5]: *** [basic_static_test] Error 1
> >>>
> >>> I'm not seeing this. What target?
x86_64-linux, gcc-4.6.1
> >>>> Fixing new_key_offset() is easy, but the gold bootstrap test fails
> >>>>
> >>>> (cd gcctestdir2 && ln -s ../ld1 ld)
> >>>> g++ -m64 -W -Wall -Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -frandom-seed=ld2 -g -O2 -Bgcctestdir2/ -Wl,--build-id=tree -Wl,--build-id-chunk-size-for-treehash=12345 -Wl,--build-id-min-file-size-for-treehash=0 -o ld2 main.o powerpc.o libgold.a ../libiberty/libiberty.a -ldl -lz
> >>>> gcctestdir2/ld: error: cannot find main.o
> >>>> gcctestdir2/ld: error: cannot find powerpc.o
> >>>> gcctestdir2/ld: error: cannot find libgold.a
> >>>> gcctestdir2/ld: error: cannot find ../libiberty/libiberty.a
> >>>> .zdebug_line: error: undefined reference to 'main'
> >>>> collect2: error: ld returned 1 exit status
> >>>
> >>> I don't see this one either.
> >>>
> >>> -cary
> >>
> >> I can reproduce it on Fedora 18 with GCC 4.7.2. ld1 is mis-linked by ld-new.
Thanks HJ, your patch cured my powerpc64 problem, but the x86_64 fail
remains.
--
Alan Modra
Australia Development Lab, IBM