{-# LANGUAGE CPP #-} module HaskellWorks.Data.Simd.Capabilities where requireAvx2 :: a -> a requireAvx2 :: forall a. a -> a requireAvx2 a a = if Bool avx2Enabled then a a else forall a. HasCallStack => [Char] -> a error [Char] "AVX2 not enabled" {-# INLINE requireAvx2 #-} avx2Enabled :: Bool #if defined(AVX2_ENABLED) avx2Enabled = True #else avx2Enabled :: Bool avx2Enabled = Bool False #endif {-# INLINE avx2Enabled #-}