diff --git a/hw-simd.cabal b/hw-simd.cabal
--- a/hw-simd.cabal
+++ b/hw-simd.cabal
@@ -3,7 +3,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           hw-simd
-version:        0.1.0.0
+version:        0.1.0.2
 synopsis:       SIMD library
 description:    Please see the README on Github at <https://github.com/haskell-works/hw-simd#readme>
 category:       Data, Bit, SIMD
@@ -166,7 +166,7 @@
     , vector                >= 0.12.0.1 && < 0.13
     , cassava               >= 0.5.1.0    && < 0.6
     , containers
-    , criterion             >= 1.4.1.0    && < 1.5
+    , criterion             >= 1.4.1.0    && < 1.6
     , directory             >= 1.3.1.5    && < 1.4
     , hw-simd
     , mmap                  >= 0.5.9      && < 0.6
diff --git a/src/HaskellWorks/Data/Simd/Comparison.hs b/src/HaskellWorks/Data/Simd/Comparison.hs
--- a/src/HaskellWorks/Data/Simd/Comparison.hs
+++ b/src/HaskellWorks/Data/Simd/Comparison.hs
@@ -17,6 +17,24 @@
 
 instance CmpEqWord8s (DVS.Vector Word64) where
   cmpEqWord8s w bs = if
-    | avx2Enabled -> AVX2.cmpEqWord8s w bs
+    | avx2Enabled -> AVX2.cmpEqWord8s  w bs
+    | True        -> STOCK.cmpEqWord8s w bs
+  {-# INLINE cmpEqWord8s #-}
+
+instance CmpEqWord8s (DVS.Vector Word8) where
+  cmpEqWord8s w bs = if
+    | avx2Enabled -> AVX2.cmpEqWord8s  w bs
+    | True        -> STOCK.cmpEqWord8s w bs
+  {-# INLINE cmpEqWord8s #-}
+
+instance CmpEqWord8s [DVS.Vector Word64] where
+  cmpEqWord8s w bs = if
+    | avx2Enabled -> AVX2.cmpEqWord8s  w bs
+    | True        -> STOCK.cmpEqWord8s w bs
+  {-# INLINE cmpEqWord8s #-}
+
+instance CmpEqWord8s [DVS.Vector Word8] where
+  cmpEqWord8s w bs = if
+    | avx2Enabled -> AVX2.cmpEqWord8s  w bs
     | True        -> STOCK.cmpEqWord8s w bs
   {-# INLINE cmpEqWord8s #-}
diff --git a/src/HaskellWorks/Data/Simd/Comparison/Avx2.hs b/src/HaskellWorks/Data/Simd/Comparison/Avx2.hs
--- a/src/HaskellWorks/Data/Simd/Comparison/Avx2.hs
+++ b/src/HaskellWorks/Data/Simd/Comparison/Avx2.hs
@@ -17,6 +17,9 @@
 class CmpEqWord8s a where
   cmpEqWord8s :: Word8 -> a -> a
 
+instance CmpEqWord8s (DVS.Vector Word8) where
+  cmpEqWord8s w8 v = DVS.unsafeCast (cmpEqWord8s w8 (DVS.unsafeCast v :: DVS.Vector Word64))
+
 instance CmpEqWord8s (DVS.Vector Word64) where
   cmpEqWord8s w8 v = case DVS.unsafeCast v :: DVS.Vector Word8 of
     u -> case DVS.unsafeToForeignPtr u of
@@ -37,5 +40,9 @@
   {-# INLINE cmpEqWord8s #-}
 
 instance CmpEqWord8s [DVS.Vector Word64] where
+  cmpEqWord8s w8 vs = cmpEqWord8s w8 <$> vs
+  {-# INLINE cmpEqWord8s #-}
+
+instance CmpEqWord8s [DVS.Vector Word8] where
   cmpEqWord8s w8 vs = cmpEqWord8s w8 <$> vs
   {-# INLINE cmpEqWord8s #-}
diff --git a/src/HaskellWorks/Data/Simd/Comparison/Stock.hs b/src/HaskellWorks/Data/Simd/Comparison/Stock.hs
--- a/src/HaskellWorks/Data/Simd/Comparison/Stock.hs
+++ b/src/HaskellWorks/Data/Simd/Comparison/Stock.hs
@@ -15,6 +15,9 @@
 class CmpEqWord8s a where
   cmpEqWord8s :: Word8 -> a -> a
 
+instance CmpEqWord8s (DVS.Vector Word8) where
+  cmpEqWord8s w8 v = DVS.unsafeCast (cmpEqWord8s w8 (DVS.unsafeCast v :: DVS.Vector Word64))
+
 instance CmpEqWord8s (DVS.Vector Word64) where
   cmpEqWord8s w8 v = DVS.constructN ((DVS.length v + 7) `div` 8) go
     where iw = fillWord64 w8
@@ -62,3 +65,8 @@
 instance CmpEqWord8s [DVS.Vector Word64] where
   cmpEqWord8s w8 vs = cmpEqWord8s w8 <$> vs
   {-# INLINE cmpEqWord8s #-}
+
+instance CmpEqWord8s [DVS.Vector Word8] where
+  cmpEqWord8s w8 vs = cmpEqWord8s w8 <$> vs
+  {-# INLINE cmpEqWord8s #-}
+
