{-# LANGUAGE
ForeignFunctionInterface,
MultiParamTypeClasses,
UndecidableInstances
#-}
module LLVM.Internal.FFI.User where
import LLVM.Prelude
import Foreign.Ptr
import Foreign.C
import LLVM.Internal.FFI.PtrHierarchy
data Use
foreign import ccall unsafe "LLVMIsAUser" isAUser ::
Ptr Value -> IO (Ptr User)
foreign import ccall unsafe "LLVMGetFirstUse" getFirstUse ::
Ptr User -> IO (Ptr Use)
foreign import ccall unsafe "LLVMGetNextUse" getNextUse ::
Ptr Use -> IO (Ptr Use)
foreign import ccall unsafe "LLVMGetNumOperands" getNumOperands ::
Ptr User -> IO CUInt
foreign import ccall unsafe "LLVMGetOperand" getOperand ::
Ptr User -> CUInt -> IO (Ptr Value)