Safe Haskell | None |
---|---|
Language | Haskell2010 |
FFI glue for llvm::IRBuilder - llvm's IR construction state object
Synopsis
- data Builder
- createBuilderInContext :: Ptr Context -> IO (Ptr Builder)
- disposeBuilder :: Ptr Builder -> IO ()
- positionBuilderAtEnd :: Ptr Builder -> Ptr BasicBlock -> IO ()
- buildRet :: Ptr Builder -> Ptr Value -> IO (Ptr Instruction)
- buildBr :: Ptr Builder -> Ptr BasicBlock -> IO (Ptr Instruction)
- buildCondBr :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> Ptr BasicBlock -> IO (Ptr Instruction)
- buildSwitch :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> CUInt -> IO (Ptr Instruction)
- buildIndirectBr :: Ptr Builder -> Ptr Value -> CUInt -> IO (Ptr Instruction)
- buildInvoke :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> Ptr BasicBlock -> Ptr BasicBlock -> CString -> IO (Ptr Instruction)
- buildResume :: Ptr Builder -> Ptr Value -> IO (Ptr Instruction)
- buildUnreachable :: Ptr Builder -> IO (Ptr Instruction)
- buildCleanupRet :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> IO (Ptr Instruction)
- buildCatchRet :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> IO (Ptr Instruction)
- buildCatchSwitch :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> CUInt -> IO (Ptr Instruction)
- buildZExt' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildXor' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildURem' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildUIToFP' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildUDiv' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildTrunc' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildSub' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildShl' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildSRem' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildSIToFP' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildSExt' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildSDiv' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildPtrToInt' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildOr' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildMul' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildLShr' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildIntToPtr' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFSub' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFRem' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFPTrunc' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFPToUI' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFPToSI' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFPExt' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFMul' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFDiv' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFAdd' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildBitCast' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildAnd' :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildAddrSpaceCast' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildAdd' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildAShr' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildZExt :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildXor :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildURem :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildUIToFP :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildUDiv :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildTrunc :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildSub :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildShl :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildSRem :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildSIToFP :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildSExt :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildSDiv :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildPtrToInt :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildOr :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildMul :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildLShr :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildIntToPtr :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFSub :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFRem :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFPTrunc :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFPToUI :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFPToSI :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFPExt :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildFMul :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFDiv :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildFAdd :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildBitCast :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildAnd :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildAddrSpaceCast :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildAdd :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildAShr :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator)
- buildAlloca :: Ptr Builder -> Ptr Type -> Ptr Value -> CString -> IO (Ptr Instruction)
- buildLoad' :: Ptr Builder -> LLVMBool -> Ptr Value -> MemoryOrdering -> SynchronizationScope -> CUInt -> CString -> IO (Ptr Instruction)
- buildLoad :: Ptr Builder -> LLVMBool -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> CUInt -> CString -> IO (Ptr Instruction)
- buildStore' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> MemoryOrdering -> SynchronizationScope -> CUInt -> CString -> IO (Ptr Instruction)
- buildStore :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> CUInt -> CString -> IO (Ptr Instruction)
- buildGetElementPtr' :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction)
- buildInBoundsGetElementPtr' :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction)
- buildGetElementPtr :: Ptr Builder -> LLVMBool -> Ptr Value -> (CUInt, Ptr (Ptr Value)) -> CString -> IO (Ptr Instruction)
- buildFence' :: Ptr Builder -> MemoryOrdering -> SynchronizationScope -> CString -> IO (Ptr Instruction)
- buildFence :: Ptr Builder -> (SynchronizationScope, MemoryOrdering) -> CString -> IO (Ptr Instruction)
- buildCmpXchg' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> Ptr Value -> MemoryOrdering -> MemoryOrdering -> SynchronizationScope -> CString -> IO (Ptr Instruction)
- buildCmpXchg :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> MemoryOrdering -> CString -> IO (Ptr Instruction)
- buildAtomicRMW' :: Ptr Builder -> LLVMBool -> RMWOperation -> Ptr Value -> Ptr Value -> MemoryOrdering -> SynchronizationScope -> CString -> IO (Ptr Instruction)
- buildAtomicRMW :: Ptr Builder -> LLVMBool -> RMWOperation -> Ptr Value -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> CString -> IO (Ptr Instruction)
- buildICmp :: Ptr Builder -> ICmpPredicate -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction)
- buildFCmp :: Ptr Builder -> FCmpPredicate -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction)
- buildPhi :: Ptr Builder -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildCall :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction)
- buildSelect :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction)
- buildVAArg :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction)
- buildExtractElement :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction)
- buildInsertElement :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction)
- buildShuffleVector :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr Constant -> CString -> IO (Ptr Instruction)
- buildExtractValue :: Ptr Builder -> Ptr Value -> Ptr CUInt -> CUInt -> CString -> IO (Ptr Instruction)
- buildInsertValue :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr CUInt -> CUInt -> CString -> IO (Ptr Instruction)
- buildLandingPad' :: Ptr Builder -> Ptr Type -> Ptr Value -> CUInt -> CString -> IO (Ptr Instruction)
- buildLandingPad :: Ptr Builder -> Ptr Type -> CUInt -> CString -> IO (Ptr Instruction)
- buildCleanupPad :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction)
- buildCatchPad :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction)
- setFastMathFlags :: Ptr Builder -> FastMathFlags -> IO ()
Documentation
positionBuilderAtEnd :: Ptr Builder -> Ptr BasicBlock -> IO () Source #
buildBr :: Ptr Builder -> Ptr BasicBlock -> IO (Ptr Instruction) Source #
buildCondBr :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> Ptr BasicBlock -> IO (Ptr Instruction) Source #
buildSwitch :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> CUInt -> IO (Ptr Instruction) Source #
buildInvoke :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> Ptr BasicBlock -> Ptr BasicBlock -> CString -> IO (Ptr Instruction) Source #
buildResume :: Ptr Builder -> Ptr Value -> IO (Ptr Instruction) Source #
buildUnreachable :: Ptr Builder -> IO (Ptr Instruction) Source #
buildCleanupRet :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> IO (Ptr Instruction) Source #
buildCatchRet :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> IO (Ptr Instruction) Source #
buildCatchSwitch :: Ptr Builder -> Ptr Value -> Ptr BasicBlock -> CUInt -> IO (Ptr Instruction) Source #
buildUDiv' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildSub' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildShl' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildSDiv' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildMul' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildLShr' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildAddrSpaceCast' :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction) Source #
buildAdd' :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildAShr' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildUDiv :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildSub :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildShl :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildSDiv :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildMul :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildLShr :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildAddrSpaceCast :: Ptr Builder -> Ptr Value -> Ptr Type -> CString -> IO (Ptr Instruction) Source #
buildAdd :: Ptr Builder -> LLVMBool -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildAShr :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> CString -> IO (Ptr BinaryOperator) Source #
buildLoad' :: Ptr Builder -> LLVMBool -> Ptr Value -> MemoryOrdering -> SynchronizationScope -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildLoad :: Ptr Builder -> LLVMBool -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildStore' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> MemoryOrdering -> SynchronizationScope -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildStore :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildGetElementPtr' :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildInBoundsGetElementPtr' :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildGetElementPtr :: Ptr Builder -> LLVMBool -> Ptr Value -> (CUInt, Ptr (Ptr Value)) -> CString -> IO (Ptr Instruction) Source #
buildFence' :: Ptr Builder -> MemoryOrdering -> SynchronizationScope -> CString -> IO (Ptr Instruction) Source #
buildFence :: Ptr Builder -> (SynchronizationScope, MemoryOrdering) -> CString -> IO (Ptr Instruction) Source #
buildCmpXchg' :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> Ptr Value -> MemoryOrdering -> MemoryOrdering -> SynchronizationScope -> CString -> IO (Ptr Instruction) Source #
buildCmpXchg :: Ptr Builder -> LLVMBool -> Ptr Value -> Ptr Value -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> MemoryOrdering -> CString -> IO (Ptr Instruction) Source #
buildAtomicRMW' :: Ptr Builder -> LLVMBool -> RMWOperation -> Ptr Value -> Ptr Value -> MemoryOrdering -> SynchronizationScope -> CString -> IO (Ptr Instruction) Source #
buildAtomicRMW :: Ptr Builder -> LLVMBool -> RMWOperation -> Ptr Value -> Ptr Value -> (SynchronizationScope, MemoryOrdering) -> CString -> IO (Ptr Instruction) Source #
buildICmp :: Ptr Builder -> ICmpPredicate -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction) Source #
buildFCmp :: Ptr Builder -> FCmpPredicate -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction) Source #
buildCall :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildSelect :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction) Source #
buildExtractElement :: Ptr Builder -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction) Source #
buildInsertElement :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr Value -> CString -> IO (Ptr Instruction) Source #
buildShuffleVector :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr Constant -> CString -> IO (Ptr Instruction) Source #
buildExtractValue :: Ptr Builder -> Ptr Value -> Ptr CUInt -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildInsertValue :: Ptr Builder -> Ptr Value -> Ptr Value -> Ptr CUInt -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildLandingPad' :: Ptr Builder -> Ptr Type -> Ptr Value -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildLandingPad :: Ptr Builder -> Ptr Type -> CUInt -> CString -> IO (Ptr Instruction) Source #
The personality should be set via the function
buildCleanupPad :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction) Source #
buildCatchPad :: Ptr Builder -> Ptr Value -> Ptr (Ptr Value) -> CUInt -> CString -> IO (Ptr Instruction) Source #
setFastMathFlags :: Ptr Builder -> FastMathFlags -> IO () Source #