LLVM  8.0.1
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
[legend]

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 186 of file IndirectionUtils.h.

Member Typedef Documentation

◆ CompileFunction

Definition at line 188 of file IndirectionUtils.h.

Constructor & Destructor Documentation

◆ ~JITCompileCallbackManager()

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

◆ JITCompileCallbackManager()

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

Construct a JITCompileCallbackManager.

Definition at line 201 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 78 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 62 of file IndirectionUtils.cpp.

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

◆ setTrampolinePool()

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

Definition at line 208 of file IndirectionUtils.h.


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