LLVM 22.0.0git
llvm::orc::JITCompileCallbackManager Class Reference

Target-independent base class for compile callback management. More...

#include "llvm/ExecutionEngine/Orc/IndirectionUtils.h"

Inheritance diagram for llvm::orc::JITCompileCallbackManager:
[legend]

Public Types

using CompileFunction = std::function<ExecutorAddr()>

Public Member Functions

virtual ~JITCompileCallbackManager ()=default
LLVM_ABI Expected< ExecutorAddrgetCompileCallback (CompileFunction Compile)
 Reserve a compile callback.
LLVM_ABI ExecutorAddr executeCompileCallback (ExecutorAddr TrampolineAddr)
 Execute the callback for the given trampoline id.

Protected Member Functions

 JITCompileCallbackManager (std::unique_ptr< TrampolinePool > TP, ExecutionSession &ES, ExecutorAddr ErrorHandlerAddress)
 Construct a JITCompileCallbackManager.
void setTrampolinePool (std::unique_ptr< TrampolinePool > TP)

Detailed Description

Target-independent base class for compile callback management.

Definition at line 205 of file IndirectionUtils.h.

Member Typedef Documentation

◆ CompileFunction

Definition at line 207 of file IndirectionUtils.h.

Constructor & Destructor Documentation

◆ ~JITCompileCallbackManager()

virtual llvm::orc::JITCompileCallbackManager::~JITCompileCallbackManager ( )
virtualdefault

References LLVM_ABI.

◆ JITCompileCallbackManager()

llvm::orc::JITCompileCallbackManager::JITCompileCallbackManager ( std::unique_ptr< TrampolinePool > TP,
ExecutionSession & ES,
ExecutorAddr ErrorHandlerAddress )
inlineprotected

Construct a JITCompileCallbackManager.

Definition at line 220 of file IndirectionUtils.h.

References llvm::move().

Member Function Documentation

◆ executeCompileCallback()

ExecutorAddr llvm::orc::JITCompileCallbackManager::executeCompileCallback ( ExecutorAddr TrampolineAddr)

Execute the callback for the given trampoline id.

Called by the JIT to compile functions on demand.

Definition at line 80 of file IndirectionUtils.cpp.

References llvm::dbgs(), llvm::formatv(), I, llvm::inconvertibleErrorCode(), llvm::make_error(), llvm::orc::makeJITDylibSearchOrder(), and llvm::orc::MatchAllSymbols.

◆ getCompileCallback()

Expected< ExecutorAddr > llvm::orc::JITCompileCallbackManager::getCompileCallback ( CompileFunction Compile)

Reserve a compile callback.

Definition at line 64 of file IndirectionUtils.cpp.

References llvm::cantFail().

◆ setTrampolinePool()

void llvm::orc::JITCompileCallbackManager::setTrampolinePool ( std::unique_ptr< TrampolinePool > TP)
inlineprotected

Definition at line 227 of file IndirectionUtils.h.


The documentation for this class was generated from the following files: