[commit: dph] master: add seq/replicate rule (26dea02)

Roman Leshchinskiy rl at cse.unsw.edu.au
Sun May 8 12:22:44 CEST 2011


Repository : ssh://darcs.haskell.org//srv/darcs/packages/dph

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/26dea02df173092e438f013044bce8e874369a0a

>---------------------------------------------------------------

commit 26dea02df173092e438f013044bce8e874369a0a
Author: Roman Leshchinskiy <rl at cse.unsw.edu.au>
Date:   Sun May 8 09:50:14 2011 +0100

    add seq/replicate rule

>---------------------------------------------------------------

 dph-prim-interface/interface/DPH_Interface.h |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/dph-prim-interface/interface/DPH_Interface.h b/dph-prim-interface/interface/DPH_Interface.h
index 3b5c54b..127cb43 100644
--- a/dph-prim-interface/interface/DPH_Interface.h
+++ b/dph-prim-interface/interface/DPH_Interface.h
@@ -40,6 +40,13 @@ generate n f = map f (enumFromTo 0 (n-1))
 replicate :: Elt a => Int -> a -> Array a
 {-# INLINE CONLIKE PHASE_BACKEND replicate #-}
 
+{-# RULES
+
+"seq/replicate" forall n x y.
+  seq (replicate n x) y = n `seq` x `seq` y
+
+ #-}
+
 
 -- | Produce an array by copying a portion of another array.
 repeat  :: Elt a 





More information about the Cvs-libraries mailing list