This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] PR ld/18160: Segmentation Fault in lang_gc_sections when linking elf_x86_64 output


On Wed, Mar 25, 2015 at 06:14:29PM -0700, H.J. Lu wrote:
> On Wed, Mar 25, 2015 at 5:38 PM, Alan Modra <amodra@gmail.com> wrote:
> > On Wed, Mar 25, 2015 at 04:21:14PM -0700, H.J. Lu wrote:
> >> This patch ignores gc-sections if input relocation is incompatible with
> >> output.  OK for master?
> >
> > No.  For one, it looks like you can't call _bfd_elf_relocs_compatible
> > with a non-ELF input, which is either a bug in that function or you
> > need to first test for ELF.
> >
> > Secondly, if you take a look at the gc-sections code you'll see that
> > it handles non-ELF input files by simply not garbage collecting those
> > files.  Your patch would disable gc-sections entirely on finding a
> > non-ELF file.  I'm not sure how important it is to keep the old
> > behaviour, but I'm guessing you did not intend to make that change.
> >
> 
> How about this one?
> 
> This patch skips gc-sections if input relocation is incompatible with
> output.

Is the warning really necessary?  Also, it looks to me that the
relocs_compatible test should be in more places, eg. to stop the
backend gc_mark_hook from being confused by incompatible relocs.

-- 
Alan Modra
Australia Development Lab, IBM


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]