[LLVMdev] LLD improvement plan

Nick Kledzik kledzik at apple.com
Fri May 1 18:42:47 PDT 2015


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.  

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).

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.  



> One symbol resolution model doesn’t fit all

Yes, the Resolver was meant to call out to the LinkingContext object to direct it on how to link.  Somehow that got morphed into “there should be a universal data model that when the Resolver process the input data, the right platform specific linking behavior falls out”.  


-Nick

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


More information about the llvm-dev mailing list