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: [5/6][PATCH] Perform second link stage and ignore now-obsolete linker -pass-through= option.


> What is the actual difference in behaviour?

The main one is the requirement for -pass-through=. A quick summary of
the possible ways of handling mixed IL/ELF files when given a sequence
like ELF IL IL ELF IL IL ELF is

1) Combine every contiguous IL file sequence (ELF COMBINED_ELF1 ELF
COMBINED_ELF2 ELF) and conceptually restart the link. This would provide
the least differences when compared to an all ELF link.

2) Combine every IL file into a single ELF, put it in the place of the
first IL file (ELF COMBINED_ELF ELF ELF) and conceptually restart the
link. If I understand it correctly, this is where the bfd ld is going.

3) Same as before, but put the combined elf file in the end.

4) Same as before, but do not restart the link. This is what gold does
currently and requires the -pass-through option.

> I am going to continue to argue strenuously against rescanning all the
> symbol tables of the input files in gold.  If GNU ld wants to rescan all
> the symbol tables, I suppose that's OK with me, as long as gold is not
> required to do it.

Can you think of a way that we can drop just the requirement of the
-pass-through option? Handling the strange case of user defined versions
of libgcc functions doesn't look as important.

> Ian

Cheers,
Rafael


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