LLVM: llvm::orc::IRTransformLayer Class Reference (original) (raw)
A layer that applies a transform to emitted modules. More...
#include "[llvm/ExecutionEngine/Orc/IRTransformLayer.h](IRTransformLayer%5F8h%5Fsource.html)"
| Public Types | |
|---|---|
| using | TransformFunction |
| Public Member Functions | |
|---|---|
| IRTransformLayer (ExecutionSession &ES, IRLayer &BaseLayer, TransformFunction Transform=identityTransform) | |
| void | setTransform (TransformFunction Transform) |
| 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 () |
| ExecutionSession & | getExecutionSession () |
| 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. |
A layer that applies a transform to emitted modules.
The transform function is responsible for locking the ThreadSafeContext before operating on the module.
Definition at line 28 of file IRTransformLayer.h.
◆ TransformFunction
Initial value:
Tracks responsibility for materialization, and mediates interactions between MaterializationUnits and...
An LLVM Module together with a shared ThreadSafeContext.
unique_function is a type-erasing functor similar to std::function.
Definition at line 30 of file IRTransformLayer.h.
◆ emit()
◆ identityTransform()
◆ setTransform()
| void llvm::orc::IRTransformLayer::setTransform ( TransformFunction Transform) | inline |
|---|
The documentation for this class was generated from the following files:
- include/llvm/ExecutionEngine/Orc/IRTransformLayer.h
- lib/ExecutionEngine/Orc/IRTransformLayer.cpp