{-# LANGUAGE ForeignFunctionInterface #-}
module Torch.FFI.TH.Byte.Blas where
import Foreign
import Foreign.C.Types
import Data.Word
import Data.Int
import Torch.Types.TH
foreign import ccall "THBlas.h THByteBlas_swap"
c_swap_ :: CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_swap :: Ptr C'THState -> CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_swap = const c_swap_
foreign import ccall "THBlas.h THByteBlas_scal"
c_scal_ :: CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ()
c_scal :: Ptr C'THState -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ()
c_scal = const c_scal_
foreign import ccall "THBlas.h THByteBlas_copy"
c_copy_ :: CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_copy :: Ptr C'THState -> CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_copy = const c_copy_
foreign import ccall "THBlas.h THByteBlas_axpy"
c_axpy_ :: CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_axpy :: Ptr C'THState -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_axpy = const c_axpy_
foreign import ccall "THBlas.h THByteBlas_dot"
c_dot_ :: CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO CUChar
c_dot :: Ptr C'THState -> CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO CUChar
c_dot = const c_dot_
foreign import ccall "THBlas.h THByteBlas_gemv"
c_gemv_ :: CChar -> CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ()
c_gemv :: Ptr C'THState -> CChar -> CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ()
c_gemv = const c_gemv_
foreign import ccall "THBlas.h THByteBlas_ger"
c_ger_ :: CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_ger :: Ptr C'THState -> CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ()
c_ger = const c_ger_
foreign import ccall "THBlas.h THByteBlas_gemm"
c_gemm_ :: CChar -> CChar -> CLLong -> CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ()
c_gemm :: Ptr C'THState -> CChar -> CChar -> CLLong -> CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ()
c_gemm = const c_gemm_
foreign import ccall "THBlas.h &THByteBlas_swap"
p_swap :: FunPtr (CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ())
foreign import ccall "THBlas.h &THByteBlas_scal"
p_scal :: FunPtr (CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ())
foreign import ccall "THBlas.h &THByteBlas_copy"
p_copy :: FunPtr (CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ())
foreign import ccall "THBlas.h &THByteBlas_axpy"
p_axpy :: FunPtr (CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ())
foreign import ccall "THBlas.h &THByteBlas_dot"
p_dot :: FunPtr (CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO CUChar)
foreign import ccall "THBlas.h &THByteBlas_gemv"
p_gemv :: FunPtr (CChar -> CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ())
foreign import ccall "THBlas.h &THByteBlas_ger"
p_ger :: FunPtr (CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> IO ())
foreign import ccall "THBlas.h &THByteBlas_gemm"
p_gemm :: FunPtr (CChar -> CChar -> CLLong -> CLLong -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> Ptr CUChar -> CLLong -> CUChar -> Ptr CUChar -> CLLong -> IO ())