diff options
-rw-r--r-- | compiler/vectorise/Vectorise.hs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/vectorise/Vectorise.hs b/compiler/vectorise/Vectorise.hs index d85ef6ab4f..1b7bca0153 100644 --- a/compiler/vectorise/Vectorise.hs +++ b/compiler/vectorise/Vectorise.hs @@ -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) |