LLVM  9.0.0svn
Public Types | Public Member Functions | Protected Member Functions | List of all members
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:
Inheritance graph

Public Types

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

Public Member Functions

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

Protected Member Functions

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

Detailed Description

Target-independent base class for compile callback management.

Definition at line 185 of file IndirectionUtils.h.

Member Typedef Documentation

◆ CompileFunction

Definition at line 187 of file IndirectionUtils.h.

Constructor & Destructor Documentation

◆ ~JITCompileCallbackManager()

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

◆ JITCompileCallbackManager()

llvm::orc::JITCompileCallbackManager::JITCompileCallbackManager ( std::unique_ptr< TrampolinePool TP,
ExecutionSession ES,
JITTargetAddress  ErrorHandlerAddress 

Construct a JITCompileCallbackManager.

Definition at line 200 of file IndirectionUtils.h.

Member Function Documentation

◆ executeCompileCallback()

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

Execute the callback for the given trampoline id.

Called by the JIT to compile functions on demand.

Definition at line 77 of file IndirectionUtils.cpp.

References llvm::dbgs(), llvm::format(), I, llvm::inconvertibleErrorCode(), llvm::Lock, and Name.

◆ getCompileCallback()

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

Reserve a compile callback.

Definition at line 61 of file IndirectionUtils.cpp.

References llvm::cantFail(), llvm::Lock, and llvm::to_string().

◆ setTrampolinePool()

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

Definition at line 207 of file IndirectionUtils.h.

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