| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
System.CPUFeatures.Arm.TypeBool
Description
This module provides the type-level interface to detect CPU features.
You can mark your function with <FEATURE NAME> ~ True => to indicate that
it requires a specific CPU feature.
You can detect the availability and get the constraint <FEATURE NAME> ~ True
by pattern-matching on the variable s<FEATURE NAME>.
Example:
-- This function requires FEAT_PMULL
someFunction :: FEAT_PMULL ~ True => ...
case sFEAT_PMULL of
STrue -> {- In this branch, FEAT_PMULL is True -} someFunction
SFalse -> {- In this branch, FEAT_PMULL is False -} error "FEAT_PMULL not available"Documentation
type family FEAT_DotProd :: Bool Source #
type family FEAT_FlagM :: Bool Source #
type family FEAT_FlagM2 :: Bool Source #
type family FEAT_FRINTTS :: Bool Source #
type family FEAT_JSCVT :: Bool Source #
type family FEAT_LRCPC :: Bool Source #
type family FEAT_LRCPC2 :: Bool Source #
type family FEAT_PAuth :: Bool Source #
type family FEAT_PAuth2 :: Bool Source #
type family FEAT_PMULL :: Bool Source #
type family FEAT_RPRES :: Bool Source #
type family FEAT_SHA256 :: Bool Source #
type family FEAT_SHA512 :: Bool Source #
type family FEAT_SME_F64F64 :: Bool Source #
type family FEAT_SME_I16I64 :: Bool Source #
type family FEAT_SPECRES :: Bool Source #