LLVM  17.0.0git
Classes | Namespaces | Enumerations | Functions | Variables
i386.h File Reference
#include "llvm/ExecutionEngine/JITLink/JITLink.h"
#include "llvm/ExecutionEngine/JITLink/TableManager.h"
Include dependency graph for i386.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  llvm::jitlink::i386::GOTTableManager
 Global Offset Table Builder. More...
 

Namespaces

 llvm
 This is an optimization pass for GlobalISel generic memory operations.
 
 
 

Enumerations

enum  llvm::jitlink::i386::EdgeKind_i386 : Edge::Kind {
  llvm::jitlink::i386::None = Edge::FirstRelocation, llvm::jitlink::i386::Pointer32, llvm::jitlink::i386::PCRel32, llvm::jitlink::i386::Pointer16,
  llvm::jitlink::i386::PCRel16, llvm::jitlink::i386::Delta32, llvm::jitlink::i386::Delta32FromGOT, llvm::jitlink::i386::RequestGOTAndTransformToDelta32FromGOT
}
 Represets i386 fixups. More...
 

Functions

const char * llvm::jitlink::i386::getEdgeKindName (Edge::Kind K)
 Returns a string name for the given i386 edge. More...
 
bool llvm::jitlink::i386::isInRangeForImmU16 (uint32_t Value)
 Returns true if the given uint32_t value is in range for a uint16_t. More...
 
bool llvm::jitlink::i386::isInRangeForImmS16 (int32_t Value)
 Returns true if the given int32_t value is in range for an int16_t. More...
 
Error llvm::jitlink::i386::applyFixup (LinkGraph &G, Block &B, const Edge &E, const Symbol *GOTSymbol)
 Apply fixup expression for edge to block content. More...
 
Symbol & llvm::jitlink::i386::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. More...
 

Variables

constexpr uint32_t llvm::jitlink::i386::PointerSize = 4
 i386 pointer size. More...
 
const char llvm::jitlink::i386::NullPointerContent [PointerSize] = {0x00, 0x00, 0x00, 0x00}
 i386 null pointer content. More...