class IRSpeculationLayer

Declaration

class IRSpeculationLayer : public IRLayer { /* full declaration omitted */ };

Description

Interface for layers that accept LLVM IR.

Declared at: llvm/include/llvm/ExecutionEngine/Orc/Speculation.h:172

Inherits from: IRLayer

Member Variables

private llvm::orc::IRLayer& NextLayer
private llvm::orc::Speculator& S
private llvm::orc::MangleAndInterner& Mangle
private llvm::orc::IRSpeculationLayer::ResultEval QueryAnalysis

Method Overview

  • public IRSpeculationLayer(llvm::orc::ExecutionSession & ES, llvm::orc::IRLayer & BaseLayer, llvm::orc::Speculator & Spec, llvm::orc::MangleAndInterner & Mangle, llvm::orc::IRSpeculationLayer::ResultEval Interpreter)
  • public void emit(std::unique_ptr<MaterializationResponsibility> R, llvm::orc::ThreadSafeModule TSM)
  • private llvm::orc::IRSpeculationLayer::TargetAndLikelies internToJITSymbols(DenseMap<llvm::StringRef, DenseSet<llvm::StringRef>> IRNames)

Inherited from IRLayer:

Methods

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

Declared at: llvm/include/llvm/ExecutionEngine/Orc/Speculation.h:178

Parameters

llvm::orc::ExecutionSession& ES
llvm::orc::IRLayer& BaseLayer
llvm::orc::Speculator& Spec
llvm::orc::MangleAndInterner& Mangle
llvm::orc::IRSpeculationLayer::ResultEval Interpreter

void emit(std::unique_ptr<
              MaterializationResponsibility> R,
          llvm::orc::ThreadSafeModule TSM)

Description

Emit should materialize the given IR.

Declared at: llvm/include/llvm/ExecutionEngine/Orc/Speculation.h:183

Parameters

std::unique_ptr<MaterializationResponsibility> R
llvm::orc::ThreadSafeModule TSM

llvm::orc::IRSpeculationLayer::TargetAndLikelies
internToJITSymbols(
    DenseMap<llvm::StringRef,
             DenseSet<llvm::StringRef>> IRNames)

Declared at: llvm/include/llvm/ExecutionEngine/Orc/Speculation.h:188

Parameters

DenseMap<llvm::StringRef, DenseSet<llvm::StringRef>> IRNames