Difference between revisions of "NaplesPU LLD Linker"

From NaplesPU Documentation
Jump to: navigation, search
Line 18: Line 18:
 
     break;
 
     break;
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
== ELFDumper ==
 +
 +
== linker ==
 +
 +
== elf2hex ==
 +
 +
==== lldb ====
 +
TBD

Revision as of 19:22, 12 September 2017

When adding a new target architecture to llvm, some changes are required to the tools located in the llvm/tools folder.

llvm-objdump

This is the llvm object file dumper. The full documentation for llvm-objdump is maintained as a Texinfo manual. If the info and llvm-objdump programs are properly installed, the command info llvm-objdump <\code> should give you access to the complete manual.

In order to be properly used with the NuPlus architecture the following change is required.

template <class ELFT>
static std::error_code getRelocationValueString(const ELFObjectFile<ELFT> *Obj,
                                                const RelocationRef &RelRef,
                                                SmallVectorImpl<char> &Result) {
  ...
  switch (EF.getHeader()->e_machine) {
  ...
  case ELF::EM_NUPLUS:
    res = Target;
    break;

ELFDumper

linker

elf2hex

lldb

TBD