Fix bug in generation of environments for vectorisation
authorRoman Leshchinskiy <rl@cse.unsw.edu.au>
Sun, 18 Nov 2007 04:52:03 +0000 (04:52 +0000)
committerRoman Leshchinskiy <rl@cse.unsw.edu.au>
Sun, 18 Nov 2007 04:52:03 +0000 (04:52 +0000)
compiler/vectorise/VectUtils.hs

index a540b4d..fcdcfd9 100644 (file)
@@ -455,7 +455,7 @@ mkLiftEnv lc tys vs
           
           env = Var (dataConWrapId env_con)
                 `mkTyApps`  env_tyargs
-                `mkVarApps` (lc : vs)
+                `mkApps`    (Var lc : args)
 
           bind env body = let scrut = unwrapFamInstScrut env_tc env_tyargs env
                           in
@@ -466,6 +466,9 @@ mkLiftEnv lc tys vs
   where
     vty = mkCoreTupTy tys
 
+    args  | null vs   = [Var unitDataConId]
+          | otherwise = map Var vs
+
     bndrs | null vs   = [mkWildId unitTy]
           | otherwise = vs