Tensor Comprehensions
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
tc::Jit Class Reference

#include <llvm_jit.h>

Collaboration diagram for tc::Jit:

Public Types

using ModuleHandle = decltype(compileLayer_)::ModuleHandleT
 

Public Member Functions

 Jit ()
 
void codegenScop (const std::string &specializedName, const polyhedral::Scop &scop)
 
ModuleHandle addModule (std::unique_ptr< llvm::Module > M)
 
void removeModule (ModuleHandle H)
 
llvm::JITSymbol findSymbol (const std::string name)
 
llvm::JITTargetAddress getSymbolAddress (const std::string name)
 
llvm::TargetMachine & getTargetMachine ()
 

Private Attributes

std::unique_ptr
< llvm::TargetMachine > 
TM_
 
const llvm::DataLayout DL_
 
llvm::orc::RTDyldObjectLinkingLayer objectLayer_
 
llvm::orc::IRCompileLayer
< decltype(objectLayer_),
llvm::orc::SimpleCompiler > 
compileLayer_
 

Member Typedef Documentation

using tc::Jit::ModuleHandle = decltype(compileLayer_)::ModuleHandleT

Constructor & Destructor Documentation

tc::Jit::Jit ( )

Member Function Documentation

ModuleHandle tc::Jit::addModule ( std::unique_ptr< llvm::Module >  M)
void tc::Jit::codegenScop ( const std::string &  specializedName,
const polyhedral::Scop &  scop 
)
llvm::JITSymbol tc::Jit::findSymbol ( const std::string  name)
llvm::JITTargetAddress tc::Jit::getSymbolAddress ( const std::string  name)
llvm::TargetMachine& tc::Jit::getTargetMachine ( )
void tc::Jit::removeModule ( ModuleHandle  H)

Member Data Documentation

llvm::orc::IRCompileLayer<decltype(objectLayer_), llvm::orc::SimpleCompiler> tc::Jit::compileLayer_
private
const llvm::DataLayout tc::Jit::DL_
private
llvm::orc::RTDyldObjectLinkingLayer tc::Jit::objectLayer_
private
std::unique_ptr<llvm::TargetMachine> tc::Jit::TM_
private

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