Vectorise case of unit correctly
authorRoman Leshchinskiy <rl@cse.unsw.edu.au>
Wed, 5 Dec 2007 22:13:05 +0000 (22:13 +0000)
committerRoman Leshchinskiy <rl@cse.unsw.edu.au>
Wed, 5 Dec 2007 22:13:05 +0000 (22:13 +0000)
compiler/vectorise/Vectorise.hs

index d85ef6a..1b7bca0 100644 (file)
@@ -337,6 +337,14 @@ vectAlgCase tycon ty_args scrut bndr ty [(DEFAULT, [], body)]
       (vbndr, vbody) <- vectBndrIn bndr (vectExpr body)
       return $ vCaseDEFAULT vscrut vbndr vty lty vbody
 
+vectAlgCase tycon ty_args scrut bndr ty [(DataAlt dc, [], body)]
+  = do
+      vscrut <- vectExpr scrut
+      vty    <- vectType ty
+      lty    <- mkPArrayType vty
+      (vbndr, vbody) <- vectBndrIn bndr (vectExpr body)
+      return $ vCaseDEFAULT vscrut vbndr vty lty vbody
+
 vectAlgCase tycon ty_args scrut bndr ty [(DataAlt dc, bndrs, body)]
   = do
       vect_tc <- maybeV (lookupTyCon tycon)