[LLVMdev] Is lld the linker we need for our project ?

Rodolphe Suescun rsu.medal at dolphin.fr
Tue Mar 11 09:52:00 PDT 2014


Hi,

We are currently developing an LLVM-based compilation toolchain
for a micro-controller, but would need some advice about whether
we should use lld as linker.

So far we managed to write a basic target handler to read ELF
files generated by llc and link them (and relocations seem to
be applied correctly).
But we have target-specific requirements:
- the program will be loaded into memory as-is, there is no
   runtime linker
- data and code must be located in different areas of memory
   so we should be able to specify a different base address for
   different sections
- parts of the code (such as interrupt vectors) must be located
   at specific addresses
- we will also need to be able to specify (in a map file) the
   address of any function or static variable

Is any of those requirements incompatible with lld ? And if not,
any hints about how to implement them (or any lld documentation
I might have missed) ?

Thanks a lot in advance,
Rod



More information about the llvm-dev mailing list