LLVM 18.0.0git
|
Classes | |
struct | PLTCallStubInfo |
struct | PLTCallStubReloc |
class | PLTTableManager |
class | TOCTableManager |
Enumerations | |
enum | EdgeKind_ppc64 : Edge::Kind { Pointer64 = Edge::FirstRelocation , Pointer32 , Pointer16 , Pointer16DS , Pointer16HA , Pointer16HI , Pointer16HIGH , Pointer16HIGHA , Pointer16HIGHER , Pointer16HIGHERA , Pointer16HIGHEST , Pointer16HIGHESTA , Pointer16LO , Pointer16LODS , Pointer14 , Delta64 , Delta34 , Delta32 , NegDelta32 , Delta16 , Delta16HA , Delta16HI , Delta16LO , TOC , TOCDelta16 , TOCDelta16DS , TOCDelta16HA , TOCDelta16HI , TOCDelta16LO , TOCDelta16LODS , CallBranchDelta , CallBranchDeltaRestoreTOC , RequestCall , RequestCallNoTOC , RequestTLSDescInGOTAndTransformToTOCDelta16HA , RequestTLSDescInGOTAndTransformToTOCDelta16LO } |
Represents ppc64 fixups and other ppc64-specific edge kinds. More... | |
enum | PLTCallStubKind { LongBranch , LongBranchSaveR2 , LongBranchNoTOC } |
Variables | |
const char | NullPointerContent [8] |
const char | PointerJumpStubContent_big [20] |
const char | PointerJumpStubContent_little [20] |
const char | PointerJumpStubNoTOCContent_big [32] |
const char | PointerJumpStubNoTOCContent_little [32] |
Represents ppc64 fixups and other ppc64-specific edge kinds.
|
inline |
Apply fixup expression for edge to block content.
Definition at line 347 of file ppc64.h.
References A, assert(), B, CallBranchDelta, CallBranchDeltaRestoreTOC, llvm::dbgs(), DEBUG_WITH_TYPE, Delta16, Delta16HA, Delta16HI, Delta16LO, Delta32, Delta34, Delta64, E, llvm::formatv(), G, llvm::jitlink::Symbol::getAddress(), getEdgeKindName(), llvm::orc::ExecutorAddr::getValue(), LLVM_UNLIKELY, llvm::jitlink::makeTargetOutOfRangeError(), NegDelta32, P, Pointer14, Pointer16, Pointer16DS, Pointer16HA, Pointer16HI, Pointer16HIGH, Pointer16HIGHA, Pointer16HIGHER, Pointer16HIGHERA, Pointer16HIGHEST, Pointer16HIGHESTA, Pointer16LO, Pointer16LODS, Pointer64, llvm::Error::success(), TOC, TOCDelta16, TOCDelta16DS, TOCDelta16HA, TOCDelta16HI, TOCDelta16LO, and TOCDelta16LODS.
|
inline |
Definition at line 129 of file ppc64.h.
References assert(), B, G, NullPointerContent, and Pointer64.
Referenced by llvm::jitlink::ppc64::TOCTableManager< Endianness >::createEntry().
|
inline |
Definition at line 143 of file ppc64.h.
References B, llvm::jitlink::ppc64::PLTCallStubInfo::Content, G, llvm::jitlink::ppc64::PLTCallStubInfo::Relocs, and llvm::ArrayRef< T >::size().
const char * llvm::jitlink::ppc64::getEdgeKindName | ( | Edge::Kind | K | ) |
Returns a string name for the given ppc64 edge.
For debugging purposes only.
Definition at line 61 of file ppc64.cpp.
References CallBranchDelta, CallBranchDeltaRestoreTOC, Delta16, Delta16HA, Delta16HI, Delta16LO, Delta32, Delta34, Delta64, llvm::jitlink::getGenericEdgeKindName(), NegDelta32, Pointer14, Pointer16, Pointer16DS, Pointer16HA, Pointer16HI, Pointer16HIGH, Pointer16HIGHA, Pointer16HIGHER, Pointer16HIGHERA, Pointer16HIGHEST, Pointer16HIGHESTA, Pointer16LO, Pointer16LODS, Pointer32, Pointer64, RequestCall, RequestCallNoTOC, RequestTLSDescInGOTAndTransformToTOCDelta16HA, RequestTLSDescInGOTAndTransformToTOCDelta16LO, TOC, TOCDelta16, TOCDelta16DS, TOCDelta16HA, TOCDelta16HI, TOCDelta16LO, and TOCDelta16LODS.
Referenced by applyFixup(), and relocateHalf16().
Definition at line 254 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 256 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 257 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 258 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 261 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 262 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 265 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 266 of file ppc64.h.
Referenced by relocateHalf16().
Definition at line 255 of file ppc64.h.
Referenced by relocateHalf16().
|
inline |
Definition at line 92 of file ppc64.h.
References Content, Delta16HA, Delta16LO, llvm_unreachable, LongBranch, LongBranchNoTOC, LongBranchSaveR2, llvm::Offset, PointerJumpStubContent_big, PointerJumpStubContent_little, PointerJumpStubNoTOCContent_big, PointerJumpStubNoTOCContent_little, TOCDelta16HA, and TOCDelta16LO.
|
inlinestatic |
|
inline |
Definition at line 289 of file ppc64.h.
References Delta16, Delta16HA, Delta16HI, Delta16LO, getEdgeKindName(), ha(), hi(), high(), higha(), higher(), highera(), highest(), highesta(), lo(), Pointer16, Pointer16DS, Pointer16HA, Pointer16HI, Pointer16HIGH, Pointer16HIGHA, Pointer16HIGHER, Pointer16HIGHERA, Pointer16HIGHEST, Pointer16HIGHESTA, Pointer16LO, Pointer16LODS, llvm::Error::success(), TOCDelta16, TOCDelta16DS, TOCDelta16HA, TOCDelta16HI, TOCDelta16LO, and TOCDelta16LODS.
|
inlinestatic |
Definition at line 19 of file ppc64.cpp.
Referenced by createAnonymousPointer().
Definition at line 50 of file ppc64.cpp.
Referenced by pickStub().
Definition at line 39 of file ppc64.cpp.
Referenced by pickStub().