[commit: packages/primitive] ghc-head: Add set*OffAddr# primops (fc73219)
git at git.haskell.org
git at git.haskell.org
Thu Sep 26 11:44:26 CEST 2013
Repository : ssh://git@git.haskell.org/primitive
On branch : ghc-head
Link : http://git.haskell.org/packages/primitive.git/commitdiff/fc73219d8b72a7ff592b6a2f112466cc04f0a6f2
>---------------------------------------------------------------
commit fc73219d8b72a7ff592b6a2f112466cc04f0a6f2
Author: Roman Leshchinskiy <rl at 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 ()
+
More information about the ghc-commits
mailing list