@@ -597,7 +597,7 @@ instance Storable a => IsList (Array a) where
597-- or may not be correct? arrcmp is 40% faster compared to stream equality.
597-- or may not be correct? arrcmp is 40% faster compared to stream equality.
598instance (Storable a, Eq a) => Eq (Array a) where
598instance (Storable a, Eq a) => Eq (Array a) where
599 {-# INLINE (==) #-}
599 {-# INLINE (==) #-}
600− arr1 == arr2 = runIdentity $ D.eqBy (==) (toStreamD arr1) (toStreamD arr2)
600+ arr1 == arr2 = unsafeInlineIO $! unsafeThaw arr1 `MA.cmp` unsafeThaw arr2
602-- Since this is a Storable array we cannot have unevaluated data in it so
602-- Since this is a Storable array we cannot have unevaluated data in it so
603-- this is just a no op.
603-- this is just a no op.