LLVM 22.0.0git
|
#include "llvm/ExecutionEngine/JITLink/JITLink.h"
#include "llvm/ExecutionEngine/JITLink/TableManager.h"
#include "llvm/Support/Compiler.h"
Go to the source code of this file.
Classes | |
class | llvm::jitlink::x86::GOTTableManager |
Global Offset Table Builder. More... | |
class | llvm::jitlink::x86::PLTTableManager |
Procedure Linkage Table Builder. More... | |
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
namespace | llvm::jitlink |
namespace | llvm::jitlink::x86 |
Enumerations | |
enum | llvm::jitlink::x86::EdgeKind_x86 : Edge::Kind { llvm::jitlink::x86::Pointer32 = Edge::FirstRelocation , llvm::jitlink::x86::PCRel32 , llvm::jitlink::x86::Pointer16 , llvm::jitlink::x86::PCRel16 , llvm::jitlink::x86::Delta32 , llvm::jitlink::x86::Delta32FromGOT , llvm::jitlink::x86::RequestGOTAndTransformToDelta32FromGOT , llvm::jitlink::x86::BranchPCRel32 , llvm::jitlink::x86::BranchPCRel32ToPtrJumpStub , llvm::jitlink::x86::BranchPCRel32ToPtrJumpStubBypassable } |
Represets x86 fixups. More... | |
Functions | |
LLVM_ABI const char * | llvm::jitlink::x86::getEdgeKindName (Edge::Kind K) |
Returns a string name for the given x86 edge. | |
Error | llvm::jitlink::x86::applyFixup (LinkGraph &G, Block &B, const Edge &E, const Symbol *GOTSymbol) |
Apply fixup expression for edge to block content. | |
Symbol & | llvm::jitlink::x86::createAnonymousPointer (LinkGraph &G, Section &PointerSection, Symbol *InitialTarget=nullptr, uint64_t InitialAddend=0) |
Creates a new pointer block in the given section and returns an anonymous symbol pointing to it. | |
Block & | llvm::jitlink::x86::createPointerJumpStubBlock (LinkGraph &G, Section &StubSection, Symbol &PointerSymbol) |
Create a jump stub block that jumps via the pointer at the given symbol. | |
Symbol & | llvm::jitlink::x86::createAnonymousPointerJumpStub (LinkGraph &G, Section &StubSection, Symbol &PointerSymbol) |
Create a jump stub that jumps via the pointer at the given symbol and an anonymous symbol pointing to it. | |
LLVM_ABI Error | llvm::jitlink::x86::optimizeGOTAndStubAccesses (LinkGraph &G) |
Optimize the GOT and Stub relocations if the edge target address is in range. | |
Variables | |
constexpr uint32_t | llvm::jitlink::x86::PointerSize = 4 |
x86 pointer size. | |
LLVM_ABI const char | llvm::jitlink::x86::NullPointerContent [PointerSize] = {0x00, 0x00, 0x00, 0x00} |
x86 null pointer content. | |
LLVM_ABI const char | llvm::jitlink::x86::PointerJumpStubContent [6] |
x86 pointer jump stub content. | |