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

Rodolphe Suescun rsu.medal at dolphin.fr
Fri Mar 14 01:59:05 PDT 2014


Hi,

Thanks a lot for your answer. It seems lld is still the best
solution, even if it does not work "right out of the box" for
us today.

We already have a solution for the "objcopy" part (added the
required output format to llvm-objdump).

The ScriptLayout class seems to be empty for now (on the master
branch at least), but we do not need linker scripts today.
All that is required for now is to be able to assign a fixed
address to a few atoms (the ones that will hold the reset &
interrupt vectors) and place code/data sections in code/data
memory (so we can simulate generated code and fix and optimize
our LLVM target).
I guess that can be done by adapting the DefaultLayout code in
our own Layout class, but any hint or documentation about how
to do this in a clean manner is welcome.

I have another question: are there any plans concerning debug
information ? In v3.4, the documentation says lld does not
support DWARF info, although there are debug-related sections
in lld's output.

Thanks a lot in advance,
Rod


Le 11/03/2014 20:39, Michael Spencer a écrit :
> It sounds like you need linker scripts and objcopy -O binary.
>
> lld currently has very limited linker script support. Support for
> layout using linker scripts would need to be completed. It is
> currently stubbed out in DefaultLayout.h:class ScriptLayout. I've
> cc'ed Shankar who knows more about how that is intended to work.
>
> Both Shankar and I intend to implement linker scripts eventually, but
> it's not a high priority for me right now.
>
> So to answer your question. If you need a linker right now lld isn't
> really going to work for you, but your use case is definitely in scope
> for lld.
>
> - Michael Spencer
>



More information about the llvm-dev mailing list