[PATCH] [lld] Remove duplicate class definitions of ELF LinkingContexts

Rafael EspĂ­ndola rafael.espindola at gmail.com
Sun Feb 22 07:48:24 PST 2015


On 21 February 2015 at 12:55, Shankar Easwaran
<shankar.kalpathi.easwaran at gmail.com> wrote:
> filcab,
>
> We need lld to be tightly integrated with LLVM targets, these are the reasons I have in mind :
>
> - targets need to get instruction eencoding recorded in the Td file. If you see the Hexagon target in lld we have one huge file that contains all the encodings which is just duplicating informattoo in the Td files. I believe MIPS also needs this encoding information.

Why? What feature depends on this.

> - enable better diagnostics with encoding information.
>
> It's also needed in the future for LTO purposes to invoke the code generator from lld after reading bit code files.

The gold plugin interface has been used for

* gcc
* llvm
* gold
* bfd ld
* bfd ar and nm

It uses lib/Codegen for codegen, but exposes nothing about it to the
rest of the linker. That shows than when we add a LTO library to lld,
it should be the *only* think in lld that depends on llvm's CodeGen.

Cheers,
Rafael




More information about the llvm-commits mailing list