LLVM 20.0.0git
|
Represents a symbol in the JIT. More...
#include "llvm/ExecutionEngine/JITSymbol.h"
Public Types | |
using | GetAddressFtor = unique_function< Expected< JITTargetAddress >()> |
Public Member Functions | |
JITSymbol (std::nullptr_t) | |
Create a 'null' symbol, used to represent a "symbol not found" result from a successful (non-erroneous) lookup. | |
JITSymbol (Error Err) | |
Create a JITSymbol representing an error in the symbol lookup process (e.g. | |
JITSymbol (JITTargetAddress Addr, JITSymbolFlags Flags) | |
Create a symbol for a definition with a known address. | |
JITSymbol (JITEvaluatedSymbol Sym) | |
Construct a JITSymbol from a JITEvaluatedSymbol. | |
JITSymbol (GetAddressFtor GetAddress, JITSymbolFlags Flags) | |
Create a symbol for a definition that doesn't have a known address yet. | |
JITSymbol (const JITSymbol &)=delete | |
JITSymbol & | operator= (const JITSymbol &)=delete |
JITSymbol (JITSymbol &&Other) | |
JITSymbol & | operator= (JITSymbol &&Other) |
~JITSymbol () | |
operator bool () const | |
Returns true if the symbol exists, false otherwise. | |
Error | takeError () |
Move the error field value out of this JITSymbol. | |
Expected< JITTargetAddress > | getAddress () |
Get the address of the symbol in the target address space. | |
JITSymbolFlags | getFlags () const |
Represents a symbol in the JIT.
Definition at line 265 of file JITSymbol.h.
Definition at line 267 of file JITSymbol.h.
|
inline |
Create a 'null' symbol, used to represent a "symbol not found" result from a successful (non-erroneous) lookup.
Definition at line 271 of file JITSymbol.h.
|
inline |
Create a JITSymbol representing an error in the symbol lookup process (e.g.
a network failure during a remote lookup).
Definition at line 276 of file JITSymbol.h.
|
inline |
Create a symbol for a definition with a known address.
Definition at line 280 of file JITSymbol.h.
|
inline |
Construct a JITSymbol from a JITEvaluatedSymbol.
Definition at line 284 of file JITSymbol.h.
|
inline |
Create a symbol for a definition that doesn't have a known address yet.
GetAddress | A functor to materialize a definition (fixing the address) on demand. |
This constructor allows a JIT layer to provide a reference to a symbol definition without actually materializing the definition up front. The user can materialize the definition at any time by calling the getAddress method.
Definition at line 296 of file JITSymbol.h.
|
inline |
Definition at line 302 of file JITSymbol.h.
References CachedAddr, Err, llvm::JITSymbolFlags::hasError(), and llvm::Other.
|
inline |
Definition at line 320 of file JITSymbol.h.
References CachedAddr, Err, llvm::JITSymbolFlags::hasError(), and llvm::Error::~Error().
|
inline |
Get the address of the symbol in the target address space.
Returns '0' if the symbol does not exist.
Definition at line 341 of file JITSymbol.h.
References assert(), CachedAddr, and llvm::JITSymbolFlags::hasError().
|
inline |
Definition at line 354 of file JITSymbol.h.
|
inlineexplicit |
Returns true if the symbol exists, false otherwise.
Definition at line 328 of file JITSymbol.h.
References CachedAddr, and llvm::JITSymbolFlags::hasError().
Definition at line 310 of file JITSymbol.h.
References CachedAddr, Err, llvm::JITSymbolFlags::hasError(), and llvm::Other.
|
inline |
Move the error field value out of this JITSymbol.
Definition at line 333 of file JITSymbol.h.
References Err, llvm::JITSymbolFlags::hasError(), and llvm::Error::success().
JITTargetAddress llvm::JITSymbol::CachedAddr |
Definition at line 359 of file JITSymbol.h.
Referenced by getAddress(), JITSymbol(), operator bool(), operator=(), and ~JITSymbol().
Error llvm::JITSymbol::Err |
Definition at line 360 of file JITSymbol.h.
Referenced by JITSymbol(), operator=(), takeError(), and ~JITSymbol().