[commit: parallel] master: INLINEs to improve fusion (cf4f2ea)

Simon Marlow marlowsd at gmail.com
Tue Apr 5 13:35:35 CEST 2011


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

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/cf4f2ea38ebf97753a2c2f4dd91d55ef57d0de4e

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

commit cf4f2ea38ebf97753a2c2f4dd91d55ef57d0de4e
Author: Simon Marlow <marlowsd at gmail.com>
Date:   Tue Apr 5 10:23:30 2011 +0100

    INLINEs to improve fusion

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

 Control/Parallel/Strategies.hs |    7 ++-----
 1 files changed, 2 insertions(+), 5 deletions(-)

diff --git a/Control/Parallel/Strategies.hs b/Control/Parallel/Strategies.hs
index c6d9bd7..a24ebe7 100644
--- a/Control/Parallel/Strategies.hs
+++ b/Control/Parallel/Strategies.hs
@@ -353,15 +353,12 @@ rpar x = x `par` return x
 -- according to the given strategy.
 evalTraversable :: Traversable t => Strategy a -> Strategy (t a)
 evalTraversable = traverse
+{-# INLINE evalTraversable #-}
 
 -- | Like 'evalTraversable' but evaluates all elements in parallel.
 parTraversable :: Traversable t => Strategy a -> Strategy (t a)
 parTraversable strat = evalTraversable (rpar `dot` strat)
-
-{-# SPECIALISE evalTraversable :: Strategy a -> Strategy (Maybe a) #-}
-{-# SPECIALISE parTraversable :: Strategy a -> Strategy (Maybe a) #-}
-{-# SPECIALISE evalTraversable :: Strategy a -> Strategy [a] #-}
-{-# SPECIALISE parTraversable :: Strategy a -> Strategy [a] #-}
+{-# INLINE parTraversable #-}
 
 -- --------------------------------------------------------------------------
 -- Strategies for lists





More information about the Cvs-libraries mailing list