[LLVMdev] LLD improvement plan

Rafael Espíndola rafael.espindola at gmail.com
Fri May 1 19:04:50 PDT 2015


On May 1, 2015 9:42 PM, "Nick Kledzik" <kledzik at apple.com> wrote:
>
>
> On May 1, 2015, at 12:31 PM, Rui Ueyama <ruiu at google.com> wrote:
>>
>> The atom model is not the best model for some architectures
>
>
> The atom model is a good fit for the llvm compiler model for all
architectures.  There is a one-to-one mapping between llvm::GlobalObject
(e.g. function or global variable) and lld:DefinedAtom.

That is not the input to the linker and therefore irrelevant.

> The problem is the ELF/PECOFF file format.   (Actually mach-o is also
section based, but we have refrained from adding complex section-centric
features to it, so mapping it to atoms is not too hard).

The objective is to build an elf and coff linker. The input has sections
and splitting them is a total waste of time and extra design complexity.

> I’d rather see our effort put to moving ahead to an llvm based object
file format (aka “native” format) which bypasses the impedance mismatch of
going through ELF/COFF.

Absolutely not. We have to be able to handle elf and coff and do it well.

Also, gold shows that elf at least works extremely well. With function
sections the compiler is in complete control of the size of the units the
linker uses. With my recent work on MC the representation is also very
efficient. I have no reason to believe coff is any different.

Cheers,
Rafael
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150501/bb72314b/attachment.html>


More information about the llvm-dev mailing list