LLVM  13.0.0git
Classes | Namespaces | Macros | Functions | Variables
ELF_x86_64.cpp File Reference
#include "llvm/ExecutionEngine/JITLink/ELF_x86_64.h"
#include "llvm/ExecutionEngine/JITLink/JITLink.h"
#include "llvm/ExecutionEngine/JITLink/x86_64.h"
#include "llvm/Object/ELFObjectFile.h"
#include "llvm/Support/Endian.h"
#include "DefineExternalSectionStartAndEndSymbols.h"
#include "EHFrameSupportImpl.h"
#include "JITLinkGeneric.h"
#include "PerGraphGOTAndPLTStubsBuilder.h"
#include "llvm/BinaryFormat/Dwarf.def"
Include dependency graph for ELF_x86_64.cpp:

Go to the source code of this file.

Classes

class  llvm::jitlink::ELFLinkGraphBuilder_x86_64
 
class  llvm::jitlink::ELFJITLinker_x86_64
 

Namespaces

 llvm
 
 

Macros

#define DEBUG_TYPE   "jitlink"
 
#define HANDLE_DWARF_SECTION(ENUM_NAME, ELF_NAME, CMDLINE_NAME, OPTION)   ELF_NAME,
 

Functions

static Error optimizeELF_x86_64_GOTAndStubs (LinkGraph &G)
 
static bool isDwarfSection (StringRef SectionName)
 
Expected< std::unique_ptr< LinkGraph > > llvm::jitlink::createLinkGraphFromELFObject_x86_64 (MemoryBufferRef ObjectBuffer)
 Create a LinkGraph from an ELF/x86-64 relocatable object. More...
 
static SectionRangeSymbolDesc llvm::jitlink::identifyELFSectionStartAndEndSymbols (LinkGraph &G, Symbol &Sym)
 
void llvm::jitlink::link_ELF_x86_64 (std::unique_ptr< LinkGraph > G, std::unique_ptr< JITLinkContext > Ctx)
 jit-link the given object buffer, which must be a ELF x86-64 object file. More...
 
const char * llvm::jitlink::getELFX86RelocationKindName (Edge::Kind R)
 Return the string name of the given ELF x86-64 edge kind. More...
 

Variables

static const char * CommonSectionName = "__common"
 

Macro Definition Documentation

◆ DEBUG_TYPE

#define DEBUG_TYPE   "jitlink"

Definition at line 24 of file ELF_x86_64.cpp.

◆ HANDLE_DWARF_SECTION

#define HANDLE_DWARF_SECTION (   ENUM_NAME,
  ELF_NAME,
  CMDLINE_NAME,
  OPTION 
)    ELF_NAME,

Function Documentation

◆ isDwarfSection()

static bool isDwarfSection ( StringRef  SectionName)
static

Definition at line 231 of file ELF_x86_64.cpp.

References llvm::orc::DwarfSectionNames, and llvm::is_contained().

◆ optimizeELF_x86_64_GOTAndStubs()

static Error optimizeELF_x86_64_GOTAndStubs ( LinkGraph G)
static

Variable Documentation

◆ CommonSectionName

const char* CommonSectionName = "__common"
static

Definition at line 155 of file ELF_x86_64.cpp.