| Safe Haskell | None |
|---|---|
| Language | Haskell98 |
LLVM.Internal.OrcJIT.IRCompileLayer
- data IRCompileLayer linkingLayer = IRCompileLayer {
- compileLayer :: !(Ptr IRCompileLayer)
- dataLayout :: !(Ptr DataLayout)
- cleanupActions :: !(IORef [IO ()])
- newIRCompileLayer :: LinkingLayer l => l -> TargetMachine -> IO (IRCompileLayer l)
- withIRCompileLayer :: LinkingLayer l => l -> TargetMachine -> (IRCompileLayer l -> IO a) -> IO a
Documentation
data IRCompileLayer linkingLayer Source #
IRCompileLayer compiles modules immediately when they are
added. It parametrized by a LinkingLayer which handles linking of
the generated object files.
Constructors
| IRCompileLayer | |
Fields
| |
Instances
| Eq (IRCompileLayer linkingLayer) Source # | |
| CompileLayer (IRCompileLayer l) Source # | |
newIRCompileLayer :: LinkingLayer l => l -> TargetMachine -> IO (IRCompileLayer l) Source #
Create a new IRCompileLayer.
When the layer is no longer needed, it should be disposed using 'disposeCompileLayer.
withIRCompileLayer :: LinkingLayer l => l -> TargetMachine -> (IRCompileLayer l -> IO a) -> IO a Source #
bracket-style wrapper around newIRCompileLayer and disposeCompileLayer.