projects
/
ghc-hetmet.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Do w/w *recursive* things even if they are small
[ghc-hetmet.git]
/
compiler
/
vectorise
/
Vectorise.hs
diff --git
a/compiler/vectorise/Vectorise.hs
b/compiler/vectorise/Vectorise.hs
index
22cba53
..
b4b383e
100644
(file)
--- a/
compiler/vectorise/Vectorise.hs
+++ b/
compiler/vectorise/Vectorise.hs
@@
-3,7
+3,9
@@
module Vectorise( vectorise )
where
module Vectorise( vectorise )
where
-import VectType
+import Vectorise.Type.Env
+import Vectorise.Type.Type
+import Vectorise.Convert
import Vectorise.Utils.Hoisting
import Vectorise.Exp
import Vectorise.Vect
import Vectorise.Utils.Hoisting
import Vectorise.Exp
import Vectorise.Vect
@@
-13,7
+15,7
@@
import Vectorise.Monad
import HscTypes hiding ( MonadThings(..) )
import Module ( PackageId )
import CoreSyn
import HscTypes hiding ( MonadThings(..) )
import Module ( PackageId )
import CoreSyn
-import CoreUnfold ( mkInlineRule )
+import CoreUnfold ( mkInlineUnfolding )
import CoreFVs
import CoreMonad ( CoreM, getHscEnv )
import FamInstEnv ( extendFamInstEnvList )
import CoreFVs
import CoreMonad ( CoreM, getHscEnv )
import FamInstEnv ( extendFamInstEnvList )
@@
-23,6
+25,8
@@
import OccName
import BasicTypes ( isLoopBreaker )
import Outputable
import Util ( zipLazy )
import BasicTypes ( isLoopBreaker )
import Outputable
import Util ( zipLazy )
+import MonadUtils
+
import Control.Monad
debug = False
import Control.Monad
debug = False
@@
-166,7
+170,7
@@
vectTopBinder var inline expr
vty <- vectType (idType var)
-- Make the vectorised version of binding's name, and set the unfolding used for inlining.
vty <- vectType (idType var)
-- Make the vectorised version of binding's name, and set the unfolding used for inlining.
- var' <- liftM (`setIdUnfolding` unfolding)
+ var' <- liftM (`setIdUnfoldingLazily` unfolding)
$ cloneId mkVectOcc var vty
-- Add the mapping between the plain and vectorised name to the state.
$ cloneId mkVectOcc var vty
-- Add the mapping between the plain and vectorised name to the state.
@@
-175,7
+179,7
@@
vectTopBinder var inline expr
return var'
where
unfolding = case inline of
return var'
where
unfolding = case inline of
- Inline arity -> mkInlineRule expr (Just arity)
+ Inline arity -> mkInlineUnfolding (Just arity) expr
DontInline -> noUnfolding
DontInline -> noUnfolding