BSD-3-Clause licensed by Roman Leshchinskiy
Maintained by [email protected]
This version can be pinned in stack with:primitive-0.6@sha256:f858ed4dbabb4ee0eca38ae5c60ea7b316b5429bcebe3194f79908c1f956f06a,1854

This package provides various primitive memory-related operations.

Changes

Changes in version 0.6

  • Split PrimMonad into two classes to allow automatic lifting of primitive operations into monad transformers. The internal operation has moved to the PrimBase class.

  • Fixed the test suite on older GHCs

Changes in version 0.5.4.0

  • Changed primitive_ to work around an oddity with GHC’s code generation on certain versions that led to side effects not happening when used in conjunction with certain very unsafe IO performers.

  • Allow primitive to build on GHC 7.9

Changes in version 0.5.3.0

  • Implement cloneArray and cloneMutableArray primitives (with fall-back implementations for GHCs prior to version 7.2.1)

Changes in version 0.5.2.1

  • Add strict variants of MutVar modification functions atomicModifyMutVar' and modifyMutVar'

  • Fix compilation on Solaris 10 with GNU C 3.4.3

Changes in version 0.5.1.0

  • Add support for GHC 7.7’s new primitive Bool representation

Changes in version 0.5.0.1

  • Disable array copying primitives for GHC 7.6.* and earlier

Changes in version 0.5

  • New in Data.Primitive.MutVar: atomicModifyMutVar

  • Efficient block fill operations: setByteArray, setAddr

Changes in version 0.4.1

  • New module Data.Primitive.MutVar

Changes in version 0.4.0.1

  • Critical bug fix in fillByteArray

Changes in version 0.4

  • Support for GHC 7.2 array copying primitives

  • New in Data.Primitive.ByteArray: copyByteArray, copyMutableByteArray, moveByteArray, fillByteArray

  • Deprecated in Data.Primitive.ByteArray: memcpyByteArray, memcpyByteArray', memmoveByteArray, memsetByteArray

  • New in Data.Primitive.Array: copyArray, copyMutableByteArray

  • New in Data.Primitive.Addr: copyAddr, moveAddr

  • Deprecated in Data.Primitive.Addr: memcpyAddr