Follow changes in comparison primops (see #6135)
authorJan Stolarek <jan.stolarek@p.lodz.pl>
Mon, 16 Sep 2013 14:17:17 +0000 (15:17 +0100)
committerJan Stolarek <jan.stolarek@p.lodz.pl>
Wed, 18 Sep 2013 10:45:42 +0000 (11:45 +0100)
dph-lifted-vseg/Data/Array/Parallel/PArray.hs
dph-prim-par/Data/Array/Parallel/Unlifted/Parallel/Segmented.hs

index 6b71991..26610fe 100644 (file)
@@ -74,6 +74,7 @@ import Data.Array.Parallel.PArray.PRepr
 import Data.Array.Parallel.PArray.Scalar
 import Data.Array.Parallel.PArray.Reference.Convert
 import GHC.Exts (Int(I#), (==#), (+#))
+import GHC.Base ( isTrue# )
 import Data.Vector                              (Vector)
 import Data.Array.Parallel.Base                 (Tag)
 import qualified Data.Array.Parallel.Pretty                    as T
@@ -216,7 +217,7 @@ replicatel reps arr@(PArray n# pdata)
 
 replicatel_ :: PA a => PArray Int -> PArray a -> PArray (PArray a)
 replicatel_ (PArray n# (PInt lens)) (PArray _ pdata)
- = if n# ==# 0# then empty else 
+ = if isTrue# (n# ==# 0#) then empty else
     let !segd    = U.lengthsToSegd lens
         !vsegd   = U.promoteSegdToVSegd segd
         !pdata'  = replicatesPA segd pdata
index 8214d36..b8b0a60 100644 (file)
@@ -28,6 +28,7 @@ import Data.Vector.Fusion.Stream.Size    ( Size(..) )
 import qualified Data.Vector.Fusion.Stream                              as S
 
 import GHC.Exts -- for unboxed primops
+import GHC.Base ( isTrue# )
 
 here :: String -> String
 here s = "Data.Array.Parallel.Unlifted.Parallel.Segmented." Prelude.++ s
@@ -145,7 +146,7 @@ appendSegS !xd !xs !yd !ys !n seg_off el_off
     -- Reading from xs
     next s@ASDo{as_takefrom=0#}
       -- Done reading xs, so read the rest of this segment from ys.
-      | as_next_swap s  ==# 0#
+      | isTrue# (as_next_swap s  ==# 0#)
       = return $ Skip (s{as_takefrom=1#, as_next_swap= unbox (ylens `index1` I# (as_seg_off s))})
 
       -- Grab a value from xs
@@ -154,7 +155,7 @@ appendSegS !xd !xs !yd !ys !n seg_off el_off
     -- Reading from ys; takefrom nonzero
     next s
       -- Done reading ys, so we need to look at the next segment's xs
-      | as_next_swap s  ==# 0#
+      | isTrue# (as_next_swap s  ==# 0#)
       = let seg' = as_seg_off s +# 1#
         in  return $ Skip (s {as_takefrom=0#, as_seg_off=seg', as_next_swap= unbox (xlens `index1` I# seg')})
 
@@ -319,7 +320,7 @@ appendUPVSegS !xd !xs !yd !ys !n seg_off el_off
     -- Reading from xs
     next s@ASUPVDo{avs_takefrom=0#}
       -- Done reading xs, so read the rest of this segment from ys.
-      | avs_next_swap s  ==# 0#  =
+      | isTrue# (avs_next_swap s  ==# 0#)  =
         let     seg'            = I# (avs_seg_off s)
                 (src,strt)      = getscatter ypseg ysrc ystrt seg'
         in      return $ Skip $
@@ -335,7 +336,7 @@ appendUPVSegS !xd !xs !yd !ys !n seg_off el_off
     -- Reading from ys, so avs_takefrom=1#
     next s
       -- Done reading ys, so we need to look at the next segment's xs
-      | avs_next_swap s  ==# 0#
+      | isTrue# (avs_next_swap s  ==# 0#)
       = let     seg'            = I# (avs_seg_off s +# 1#)
                 (src,strt)      = getscatter xpseg xsrc xstrt seg'
         in      return $ Skip $