Implement INLINABLE pragma
[ghc-hetmet.git] / compiler / vectorise / Vectorise / Type / Env.hs
index 2bc7177..06bd789 100644 (file)
@@ -1,10 +1,14 @@
-{-# OPTIONS -fno-warn-missing-signatures #-}
+{-# OPTIONS_GHC -fno-warn-missing-signatures #-}
+#if __GLASGOW_HASKELL__ >= 611
+{-# OPTIONS_GHC -XNoMonoLocalBinds #-}
+#endif
+-- Roman likes local bindings
+-- If this module lives on I'd like to get rid of this flag in due course
 
 module Vectorise.Type.Env ( 
        vectTypeEnv,
 )
 where
-import VectUtils
 import Vectorise.Env
 import Vectorise.Vect
 import Vectorise.Monad
@@ -15,8 +19,7 @@ import Vectorise.Type.PADict
 import Vectorise.Type.PData
 import Vectorise.Type.PRepr
 import Vectorise.Type.Repr
-import Vectorise.Utils.Closure
-import Vectorise.Utils.Hoisting
+import Vectorise.Utils
 
 import HscTypes
 import CoreSyn
@@ -179,7 +182,7 @@ vectDataConWorkers orig_tc vect_tc arr_tc
 
           raw_worker <- cloneId mkVectOcc orig_worker (exprType body)
           let vect_worker = raw_worker `setIdUnfolding`
-                              mkInlineRule body (Just arity)
+                              mkInlineUnfolding (Just arity) body
           defGlobalVar orig_worker vect_worker
           return (vect_worker, body)
       where