MLIR  16.0.0git
Public Attributes | List of all members
mlir::ExecutionEngineOptions Struct Reference

#include "mlir/ExecutionEngine/ExecutionEngine.h"

+ Collaboration diagram for mlir::ExecutionEngineOptions:

Public Attributes

llvm::function_ref< std::unique_ptr< llvm::Module >Operation *, llvm::LLVMContext &)> llvmModuleBuilder = nullptr
 If llvmModuleBuilder is provided, it will be used to create an LLVM module from the given MLIR IR. More...
 
llvm::function_ref< llvm::Error(llvm::Module *)> transformer = {}
 If transformer is provided, it will be called on the LLVM module during JIT-compilation and can be used, e.g., for reporting or optimization. More...
 
Optional< llvm::CodeGenOpt::Level > jitCodeGenOptLevel = llvm::None
 jitCodeGenOptLevel, when provided, is used as the optimization level for target code generation. More...
 
ArrayRef< StringRef > sharedLibPaths = {}
 If sharedLibPaths are provided, the underlying JIT-compilation will open and link the shared libraries for symbol resolution. More...
 
llvm::SectionMemoryManager::MemoryMapper * sectionMemoryMapper = nullptr
 Specifies an existing sectionMemoryMapper to be associated with the compiled code. More...
 
bool enableObjectDump = false
 If enableObjectCache is set, the JIT compiler will create one to store the object generated for the given module. More...
 
bool enableGDBNotificationListener = true
 If enable enableGDBNotificationListener is set, the JIT compiler will notify the llvm's global GDB notification listener. More...
 
bool enablePerfNotificationListener = true
 If enablePerfNotificationListener is set, the JIT compiler will notify the llvm's global Perf notification listener. More...
 

Detailed Description

Definition at line 56 of file ExecutionEngine.h.

Member Data Documentation

◆ enableGDBNotificationListener

bool mlir::ExecutionEngineOptions::enableGDBNotificationListener = true

If enable enableGDBNotificationListener is set, the JIT compiler will notify the llvm's global GDB notification listener.

Definition at line 88 of file ExecutionEngine.h.

◆ enableObjectDump

bool mlir::ExecutionEngineOptions::enableObjectDump = false

If enableObjectCache is set, the JIT compiler will create one to store the object generated for the given module.

The contents of the cache can be dumped to a file via the dumpToObjectFile method.

Definition at line 84 of file ExecutionEngine.h.

Referenced by compileAndExecute(), and mlirExecutionEngineCreate().

◆ enablePerfNotificationListener

bool mlir::ExecutionEngineOptions::enablePerfNotificationListener = true

If enablePerfNotificationListener is set, the JIT compiler will notify the llvm's global Perf notification listener.

Definition at line 92 of file ExecutionEngine.h.

◆ jitCodeGenOptLevel

Optional<llvm::CodeGenOpt::Level> mlir::ExecutionEngineOptions::jitCodeGenOptLevel = llvm::None

jitCodeGenOptLevel, when provided, is used as the optimization level for target code generation.

Definition at line 70 of file ExecutionEngine.h.

Referenced by compileAndExecute(), and mlirExecutionEngineCreate().

◆ llvmModuleBuilder

llvm::function_ref<std::unique_ptr<llvm::Module>Operation *, llvm::LLVMContext &)> mlir::ExecutionEngineOptions::llvmModuleBuilder = nullptr

If llvmModuleBuilder is provided, it will be used to create an LLVM module from the given MLIR IR.

Otherwise, a default translateModuleToLLVMIR function will be used to translate to LLVM IR.

Definition at line 62 of file ExecutionEngine.h.

Referenced by compileAndExecute().

◆ sectionMemoryMapper

llvm::SectionMemoryManager::MemoryMapper* mlir::ExecutionEngineOptions::sectionMemoryMapper = nullptr

Specifies an existing sectionMemoryMapper to be associated with the compiled code.

If none is provided, a default memory mapper that directly calls into the operating system is used.

Definition at line 79 of file ExecutionEngine.h.

◆ sharedLibPaths

ArrayRef<StringRef> mlir::ExecutionEngineOptions::sharedLibPaths = {}

If sharedLibPaths are provided, the underlying JIT-compilation will open and link the shared libraries for symbol resolution.

Definition at line 74 of file ExecutionEngine.h.

Referenced by compileAndExecute(), and mlirExecutionEngineCreate().

◆ transformer

llvm::function_ref<llvm::Error(llvm::Module *)> mlir::ExecutionEngineOptions::transformer = {}

If transformer is provided, it will be called on the LLVM module during JIT-compilation and can be used, e.g., for reporting or optimization.

Definition at line 66 of file ExecutionEngine.h.

Referenced by compileAndExecute(), and mlirExecutionEngineCreate().


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