packages feed

chaselev-deque 0.5.0.3 → 0.5.0.5

raw patch · 3 files changed

+12/−19 lines, 3 filesdep −bits-atomicPVP ok

version bump matches the API change (PVP)

Dependencies removed: bits-atomic

API changes (from Hackage documentation)

Files

Data/Concurrent/Deque/ChaseLev.hs view
@@ -32,8 +32,7 @@ import Control.Monad (when, unless, forM_)  import Data.Atomics (storeLoadBarrier, writeBarrier, loadLoadBarrier)--- TODO: Use whichever counter is exported as the DEFAULT:-import Data.Atomics.Counter.Unboxed+import Data.Atomics.Counter        (AtomicCounter, newCounter, readCounter, writeCounter, casCounter, readCounterForCAS, peekCTicket)  -- Debugging:@@ -123,11 +122,6 @@ --   if i >= MV.length v --   then error (printf "ERROR: Out of bounds of top of vector index %d, vec length %d\n" i (MV.length v)) --   else MV.write v i x---- [2013.06.25] Note Issue5 is not affected by this:-{-# NOINLINE pushL #-}-{-# NOINLINE tryPopL #-}-{-# NOINLINE tryPopR #-} #endif  @@ -172,7 +166,7 @@   ----------------------------------------     let len   = MV.length oldarr       elems = end - strt-  -- putStrLn$ "Grow to size "++show (len+len)++", copying over "++show elems+  when dbg $ putStrLn$ "Grow to size "++show (len+len)++", copying over "++show elems   newarr <- if dbg then                nu (len + len)             else  -- Better errors:
Data/Concurrent/Deque/ChaseLevUnboxed.hs view
@@ -1,5 +1,7 @@ {-# LANGUAGE FlexibleInstances, NamedFieldPuns, CPP, ScopedTypeVariables, BangPatterns, MagicHash #-} +-- TEMPORARY: An experiment in duplicating ChaseLev.hs to support unboxed queue contents.+ -- | Chase-Lev work stealing Deques --  -- This implementation derives directly from the pseudocode in the 2005 SPAA paper:@@ -32,8 +34,7 @@ import Control.Monad (when, unless, forM_)  import Data.Atomics (storeLoadBarrier, writeBarrier, loadLoadBarrier)--- TODO: Use whichever counter is exported as the DEFAULT:-import Data.Atomics.Counter.Unboxed+import Data.Atomics.Counter        (AtomicCounter, newCounter, readCounter, writeCounter, casCounter, readCounterForCAS, peekCTicket)  -- Debugging:@@ -125,11 +126,6 @@ --   if i >= MV.length v --   then error (printf "ERROR: Out of bounds of top of vector index %d, vec length %d\n" i (MV.length v)) --   else MV.write v i x---- [2013.06.25] Note Issue5 is not affected by this:-{-# NOINLINE pushL #-}-{-# NOINLINE tryPopL #-}-{-# NOINLINE tryPopR #-} #endif  @@ -172,7 +168,7 @@   ----------------------------------------     let len   = MV.length oldarr       elems = end - strt-  -- putStrLn$ "Grow to size "++show (len+len)++", copying over "++show elems+  when dbg $ putStrLn$ "Grow to size "++show (len+len)++", copying over "++show elems   newarr <- if dbg then                nu (len + len)             else  -- Better errors:
chaselev-deque.cabal view
@@ -1,5 +1,5 @@ Name:                chaselev-deque-Version:             0.5.0.3+Version:             0.5.0.5 License:             BSD3 License-file:        LICENSE Author:              Ryan R. Newton, Edward Kmett @@ -16,6 +16,7 @@ -- 0.4   -- bump to go along with atomic-primops 0.4 -- 0.5.0.2 -- bump to go along with MAJOR bugfix in atomic-primops 0.5.0.2 -- 0.5.0.3 -- minor bump to change abstract-deque dep.+-- 0.5.0.4 -- bugfix  Homepage: https://github.com/rrnewton/haskell-lockfree/wiki Bug-Reports: https://github.com/rrnewton/haskell-lockfree/issues@@ -28,7 +29,7 @@   used for work-stealing.   This implementation derives directly from the pseudocode in the 2005 SPAA paper:   .-  "http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.170.1097&rep=rep1&type=pdf"+  http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.170.1097&rep=rep1&type=pdf  Extra-Source-Files: Test.hs RegressionTests/Issue5.hs RegressionTests/Issue5B.hs @@ -44,9 +45,11 @@ --                     Data.Concurrent.Deque.ReactorDeque   other-modules:     Data.Concurrent.Deque.ChaseLevUnboxed -  build-depends:     base >= 4.4.0.0 && < 5, array, transformers, bits-atomic,+  build-depends:     base >= 4.4.0.0 && < 5, array, transformers,                       abstract-deque >= 0.3 && < 0.4, vector, ghc-prim,                      atomic-primops >= 0.5.0.2+-- This was for reactordeque:+--		     bits-atomic,   build-depends: ghc-prim   ghc-options: -O2   if flag(debug)