Difference between revisions of "NaplesPU LLD Linker"

From NaplesPU Documentation
Jump to: navigation, search
Line 5: Line 5:
  
 
In order to be properly used with the NuPlus architecture the following change is required.
 
In order to be properly used with the NuPlus architecture the following change is required.
 +
 +
<syntaxhighlight lang="cpp" line='line'>
 +
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;
 +
</syntaxhighlight>

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;