LLVM 20.0.0git
List of all members
llvm::orc::LLJITBuilder Class Reference

Constructs LLJIT instances. More...

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

Inheritance diagram for llvm::orc::LLJITBuilder:
Inheritance graph
[legend]

Additional Inherited Members

- Public Types inherited from llvm::orc::LLJITBuilderState
using ObjectLinkingLayerCreator = std::function< Expected< std::unique_ptr< ObjectLayer > >(ExecutionSession &, const Triple &)>
 
using CompileFunctionCreator = std::function< Expected< std::unique_ptr< IRCompileLayer::IRCompiler > >(JITTargetMachineBuilder JTMB)>
 
using ProcessSymbolsJITDylibSetupFunction = unique_function< Expected< JITDylibSP >(LLJIT &J)>
 
using PlatformSetupFunction = unique_function< Expected< JITDylibSP >(LLJIT &J)>
 
using NotifyCreatedFunction = std::function< Error(LLJIT &)>
 
- Public Member Functions inherited from llvm::orc::LLJITBuilderState
Error prepareForConstruction ()
 Called prior to JIT class construcion to fix up defaults.
 
- Public Member Functions inherited from llvm::orc::LLJITBuilderSetters< LLJIT, LLJITBuilder, LLJITBuilderState >
LLJITBuildersetExecutorProcessControl (std::unique_ptr< ExecutorProcessControl > EPC)
 Set an ExecutorProcessControl for this instance.
 
LLJITBuildersetExecutionSession (std::unique_ptr< ExecutionSession > ES)
 Set an ExecutionSession for this instance.
 
LLJITBuildersetJITTargetMachineBuilder (JITTargetMachineBuilder JTMB)
 Set the JITTargetMachineBuilder for this instance.
 
std::optional< JITTargetMachineBuilder > & getJITTargetMachineBuilder ()
 Return a reference to the JITTargetMachineBuilder.
 
LLJITBuildersetDataLayout (std::optional< DataLayout > DL)
 Set a DataLayout for this instance.
 
LLJITBuildersetLinkProcessSymbolsByDefault (bool LinkProcessSymbolsByDefault)
 The LinkProcessSymbolsDyDefault flag determines whether the "Process" JITDylib will be added to the default link order at LLJIT construction time.
 
LLJITBuildersetProcessSymbolsJITDylibSetup (LLJITBuilderState::ProcessSymbolsJITDylibSetupFunction SetupProcessSymbolsJITDylib)
 Set a setup function for the process symbols dylib.
 
LLJITBuildersetObjectLinkingLayerCreator (LLJITBuilderState::ObjectLinkingLayerCreator CreateObjectLinkingLayer)
 Set an ObjectLinkingLayer creation function.
 
LLJITBuildersetCompileFunctionCreator (LLJITBuilderState::CompileFunctionCreator CreateCompileFunction)
 Set a CompileFunctionCreator.
 
LLJITBuildersetPrePlatformSetup (unique_function< Error(LLJIT &)> PrePlatformSetup)
 Set a setup function to be run just before the PlatformSetupFunction is run.
 
LLJITBuildersetPlatformSetUp (LLJITBuilderState::PlatformSetupFunction SetUpPlatform)
 Set up an PlatformSetupFunction.
 
LLJITBuildersetNotifyCreatedCallback (LLJITBuilderState::NotifyCreatedFunction Callback)
 Set up a callback after successful construction of the JIT.
 
LLJITBuildersetNumCompileThreads (unsigned NumCompileThreads)
 Set the number of compile threads to use.
 
LLJITBuildersetSupportConcurrentCompilation (std::optional< bool > SupportConcurrentCompilation)
 If set, this forces LLJIT concurrent compilation support to be either on or off.
 
Expected< std::unique_ptr< LLJIT > > create ()
 Create an instance of the JIT.
 
- Public Attributes inherited from llvm::orc::LLJITBuilderState
std::unique_ptr< ExecutorProcessControlEPC
 
std::unique_ptr< ExecutionSessionES
 
std::optional< JITTargetMachineBuilderJTMB
 
std::optional< DataLayoutDL
 
bool LinkProcessSymbolsByDefault = true
 
ProcessSymbolsJITDylibSetupFunction SetupProcessSymbolsJITDylib
 
ObjectLinkingLayerCreator CreateObjectLinkingLayer
 
CompileFunctionCreator CreateCompileFunction
 
unique_function< Error(LLJIT &)> PrePlatformSetup
 
PlatformSetupFunction SetUpPlatform
 
NotifyCreatedFunction NotifyCreated
 
unsigned NumCompileThreads = 0
 
std::optional< boolSupportConcurrentCompilation
 
- Protected Member Functions inherited from llvm::orc::LLJITBuilderSetters< LLJIT, LLJITBuilder, LLJITBuilderState >
LLJITBuilderimpl ()
 

Detailed Description

Constructs LLJIT instances.

Definition at line 513 of file LLJIT.h.


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