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

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

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

Public Types

using IRlikiesStrRef
using ResultEval = std::function<IRlikiesStrRef(Function &)>
using TargetAndLikelies = DenseMap<SymbolStringPtr, SymbolNameSet>

Public Member Functions

 IRSpeculationLayer (ExecutionSession &ES, IRLayer &BaseLayer, Speculator &Spec, MangleAndInterner &Mangle, ResultEval Interpreter)
void emit (std::unique_ptr< MaterializationResponsibility > R, ThreadSafeModule TSM) override
 Emit should materialize the given IR.
Public Member Functions inherited from llvm::orc::IRLayer
 IRLayer (ExecutionSession &ES, const IRSymbolMapper::ManglingOptions *&MO)
virtual ~IRLayer ()
ExecutionSessiongetExecutionSession ()
 Returns the ExecutionSession for this layer.
const IRSymbolMapper::ManglingOptions *& getManglingOptions () const
 Get the mangling options for this layer.
void setCloneToNewContextOnEmit (bool CloneToNewContextOnEmit)
 Sets the CloneToNewContextOnEmit flag (false by default).
bool getCloneToNewContextOnEmit () const
 Returns the current value of the CloneToNewContextOnEmit flag.
virtual Error add (ResourceTrackerSP RT, ThreadSafeModule TSM)
 Add a MaterializatinoUnit representing the given IR to the JITDylib targeted by the given tracker.
Error add (JITDylib &JD, ThreadSafeModule TSM)
 Adds a MaterializationUnit representing the given IR to the given JITDylib.

Detailed Description

Definition at line 172 of file Speculation.h.

Member Typedef Documentation

◆ IRlikiesStrRef

Initial value:
std::optional<DenseMap<StringRef, DenseSet<StringRef>>>

Definition at line 174 of file Speculation.h.

◆ ResultEval

Definition at line 176 of file Speculation.h.

◆ TargetAndLikelies

Constructor & Destructor Documentation

◆ IRSpeculationLayer()

llvm::orc::IRSpeculationLayer::IRSpeculationLayer ( ExecutionSession & ES,
IRLayer & BaseLayer,
Speculator & Spec,
MangleAndInterner & Mangle,
ResultEval Interpreter )
inline

Member Function Documentation

◆ emit()


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