LLVM 20.0.0git
|
Per-object GOT and PLT Stub builder. More...
#include "ExecutionEngine/JITLink/PerGraphGOTAndPLTStubsBuilder.h"
Public Member Functions | |
PerGraphGOTAndPLTStubsBuilder (LinkGraph &G) | |
Error | run () |
Static Public Member Functions | |
static Error | asPass (LinkGraph &G) |
Protected Member Functions | |
Symbol & | getGOTEntry (Symbol &Target) |
Symbol & | getPLTStub (Symbol &Target) |
Protected Attributes | |
LinkGraph & | G |
Per-object GOT and PLT Stub builder.
Constructs GOT entries and PLT stubs in every graph for referenced symbols. Building these blocks in every graph is likely to lead to duplicate entries in the JITLinkDylib, but allows graphs to be trivially removed independently without affecting other graphs (since those other graphs will have their own copies of any required entries).
Definition at line 32 of file PerGraphGOTAndPLTStubsBuilder.h.
|
inline |
Definition at line 34 of file PerGraphGOTAndPLTStubsBuilder.h.
|
inlinestatic |
Definition at line 36 of file PerGraphGOTAndPLTStubsBuilder.h.
References llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::G.
|
inlineprotected |
Definition at line 70 of file PerGraphGOTAndPLTStubsBuilder.h.
References assert(), llvm::dbgs(), llvm::Target::getName(), and LLVM_DEBUG.
Referenced by llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::run().
|
inlineprotected |
Definition at line 92 of file PerGraphGOTAndPLTStubsBuilder.h.
References assert(), llvm::dbgs(), llvm::Target::getName(), and LLVM_DEBUG.
Referenced by llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::run().
|
inline |
Definition at line 38 of file PerGraphGOTAndPLTStubsBuilder.h.
References B, llvm::jitlink::LinkGraph::blocks(), llvm::dbgs(), E, llvm::formatv(), llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::G, llvm::jitlink::LinkGraph::getEdgeKindName(), llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::getGOTEntry(), llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::getPLTStub(), LLVM_DEBUG, and llvm::Error::success().
|
protected |
Definition at line 112 of file PerGraphGOTAndPLTStubsBuilder.h.
Referenced by llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::asPass(), and llvm::jitlink::PerGraphGOTAndPLTStubsBuilder< BuilderImplT >::run().