bits-extras-0.1.0: bits-extras.cabal
Name: bits-extras
Version: 0.1.0
License: BSD3
License-File: License.txt
Maintainer: Gabriel Wicke <wicke@wikidev.net>
Author: Gabriel Wicke <wicke@wikidev.net>
Synopsis: Efficient atomic and non-atomic bit operations not found in Data.Bits
Description: Mostly wraps low-level bit operations provided by GCC
builtins, which translate to specialized instructions
where available.
.
Atomic operations include CAS
(compare-and-swap), lock, fetch & add and similar
primitives suitable for low-level shared-memory
synchronization.
.
Primitives from the 'Extras' subpackage would be useful to
have in the proper 'Data.Bits' package, although this
would probably require broader support across different
compiler backends.
.
Relevant Hackage tickets:
.
* <http://hackage.haskell.org/trac/ghc/ticket/3563>
.
* <http://hackage.haskell.org/trac/ghc/ticket/4102>
Category: Data
Stability: experimental
Build-Type: Simple
Cabal-Version: >= 1.6
Extra-Source-Files: cbits/bitops-gcc.c cbits/bitops-gcc.h
Source-Repository head
type: mercurial
location: http://dev.wikidev.net/hg/bits-extras/
--extra-tmp-files: cbits/bitops-gcc.h
library
Exposed-Modules: Data.Bits.Extras Data.Bits.Atomic
Build-Depends: base >= 4 && < 6
GHC-Options: -Wall -O2 -funbox-strict-fields
GHC-Prof-Options: -auto-all
C-Sources: cbits/bitops-gcc.c cbits/atomic-bitops-gcc.c
--CC-Options: -O3 -fomit-frame-pointer -march=native -Wall
-- Try link-time optimization (inlining) with gcc 4.5:
-- CC-Options: -fomit-frame-pointer -march=native -Wall -flto
CC-Options: -fomit-frame-pointer -march=native -Wall
Extra-Libraries: gcc_s
Include-Dirs: cbits
Install-Includes: bitops-gcc.h atomic-bitops-gcc.h
Extensions: ForeignFunctionInterface
--Includes: bitops-gcc.h
--LD-Options: -flto
--hs-source-dirs: .