Repository : ssh://g...@git.haskell.org/primitive On branch : ghc-head Link : http://git.haskell.org/packages/primitive.git/commitdiff/fc73219d8b72a7ff592b6a2f112466cc04f0a6f2
>--------------------------------------------------------------- commit fc73219d8b72a7ff592b6a2f112466cc04f0a6f2 Author: Roman Leshchinskiy <r...@cse.unsw.edu.au> Date: Thu Jan 26 15:55:31 2012 -0700 Add set*OffAddr# primops >--------------------------------------------------------------- fc73219d8b72a7ff592b6a2f112466cc04f0a6f2 Data/Primitive/Internal/Operations.hs | 37 ++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/Data/Primitive/Internal/Operations.hs b/Data/Primitive/Internal/Operations.hs index 9516090..622a3e5 100644 --- a/Data/Primitive/Internal/Operations.hs +++ b/Data/Primitive/Internal/Operations.hs @@ -17,7 +17,13 @@ module Data.Primitive.Internal.Operations ( setWord64Array#, setWordArray#, setInt8Array#, setInt16Array#, setInt32Array#, setInt64Array#, setIntArray#, - setAddrArray#, setFloatArray#, setDoubleArray#, setWideCharArray# + setAddrArray#, setFloatArray#, setDoubleArray#, setWideCharArray#, + + setWord8OffAddr#, setWord16OffAddr#, setWord32OffAddr#, + setWord64OffAddr#, setWordOffAddr#, + setInt8OffAddr#, setInt16OffAddr#, setInt32OffAddr#, + setInt64OffAddr#, setIntOffAddr#, + setAddrOffAddr#, setFloatOffAddr#, setDoubleOffAddr#, setWideCharOffAddr# ) where import GHC.Prim @@ -51,3 +57,32 @@ foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Double" foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Char" setWideCharArray# :: MutableByteArray# s -> Int# -> Int# -> Char# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8" + setWord8OffAddr# :: Addr# -> Int# -> Int# -> Word# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16" + setWord16OffAddr# :: Addr# -> Int# -> Int# -> Word# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32" + setWord32OffAddr# :: Addr# -> Int# -> Int# -> Word# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word64" + setWord64OffAddr# :: Addr# -> Int# -> Int# -> Word64# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word" + setWordOffAddr# :: Addr# -> Int# -> Int# -> Word# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word8" + setInt8OffAddr# :: Addr# -> Int# -> Int# -> Int# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word16" + setInt16OffAddr# :: Addr# -> Int# -> Int# -> Int# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word32" + setInt32OffAddr# :: Addr# -> Int# -> Int# -> Int# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word64" + setInt64OffAddr# :: Addr# -> Int# -> Int# -> Int64# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Word" + setIntOffAddr# :: Addr# -> Int# -> Int# -> Int# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Ptr" + setAddrOffAddr# :: Addr# -> Int# -> Int# -> Addr# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Float" + setFloatOffAddr# :: Addr# -> Int# -> Int# -> Float# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Double" + setDoubleOffAddr# :: Addr# -> Int# -> Int# -> Double# -> IO () +foreign import ccall unsafe "primitive-memops.h hsprimitive_memset_Char" + setWideCharOffAddr# :: Addr# -> Int# -> Int# -> Char# -> IO () + _______________________________________________ ghc-commits mailing list ghc-commits@haskell.org http://www.haskell.org/mailman/listinfo/ghc-commits