CmmType

ghc-8.6.3: The GHC API

Safe Haskell | None
Language | Haskell2010

CmmType

# Documentation

data CmmType #

Instances

Outputable CmmType # |
Instance details Defined in CmmType Methods ppr :: CmmType -> SDoc # pprPrec :: Rational -> CmmType -> SDoc #

b8 :: CmmType #

b16 :: CmmType #

b32 :: CmmType #

b64 :: CmmType #

b128 :: CmmType #

b256 :: CmmType #

b512 :: CmmType #

f32 :: CmmType #

f64 :: CmmType #

bWord :: DynFlags -> CmmType #

bHalfWord :: DynFlags -> CmmType #

gcWord :: DynFlags -> CmmType #

cInt :: DynFlags -> CmmType #

cmmBits :: Width -> CmmType #

cmmFloat :: Width -> CmmType #

typeWidth :: CmmType -> Width #

cmmEqType :: CmmType -> CmmType -> Bool #

cmmEqType_ignoring_ptrhood :: CmmType -> CmmType -> Bool #

isFloatType :: CmmType -> Bool #

isGcPtrType :: CmmType -> Bool #

isWord32 :: CmmType -> Bool #

isWord64 :: CmmType -> Bool #

isFloat64 :: CmmType -> Bool #

isFloat32 :: CmmType -> Bool #

data Width #

Constructors

W8 |
W16 |
W32 |
W64 |
W80 |
W128 |
W256 |
W512 |

Instances

Eq Width # |
Instance details Defined in CmmType Methods (==) :: Width -> Width -> Bool # (/=) :: Width -> Width -> Bool #
Ord Width # |
Instance details Defined in CmmType Methods compare :: Width -> Width -> Ordering # (<) :: Width -> Width -> Bool # (<=) :: Width -> Width -> Bool # (>) :: Width -> Width -> Bool # (>=) :: Width -> Width -> Bool # max :: Width -> Width -> Width # min :: Width -> Width -> Width #
Show Width # |
Instance details Defined in CmmType Methods showsPrec :: Int -> Width -> ShowS Source # show :: Width -> String Source # showList :: [Width] -> ShowS Source #
Outputable Width # |
Instance details Defined in CmmType Methods ppr :: Width -> SDoc # pprPrec :: Rational -> Width -> SDoc #

widthInBits :: Width -> Int #

widthInBytes :: Width -> Int #

widthInLog :: Width -> Int #

widthFromBytes :: Int -> Width #

wordWidth :: DynFlags -> Width #

halfWordWidth :: DynFlags -> Width #

cIntWidth :: DynFlags -> Width #

halfWordMask :: DynFlags -> Integer #

narrowU :: Width -> Integer -> Integer #

narrowS :: Width -> Integer -> Integer #

rEP_CostCentreStack_mem_alloc :: DynFlags -> CmmType #

rEP_CostCentreStack_scc_count :: DynFlags -> CmmType #

rEP_StgEntCounter_allocs :: DynFlags -> CmmType #

rEP_StgEntCounter_allocd :: DynFlags -> CmmType #

data ForeignHint #

Constructors

NoHint |
AddrHint |
SignedHint |

Instances

Eq ForeignHint # |
Instance details Defined in CmmType Methods (==) :: ForeignHint -> ForeignHint -> Bool # (/=) :: ForeignHint -> ForeignHint -> Bool #
Outputable ForeignHint # |
Instance details Defined in PprCmmDecl Methods ppr :: ForeignHint -> SDoc # pprPrec :: Rational -> ForeignHint -> SDoc #

type Length = Int #

vec :: Length -> CmmType -> CmmType #

vec2 :: CmmType -> CmmType #

vec4 :: CmmType -> CmmType #

vec8 :: CmmType -> CmmType #

vec16 :: CmmType -> CmmType #

vec2f64 :: CmmType #

vec2b64 :: CmmType #

vec4f32 :: CmmType #

vec4b32 :: CmmType #

vec8b16 :: CmmType #

vec16b8 :: CmmType #

cmmVec :: Int -> CmmType -> CmmType #

vecLength :: CmmType -> Length #

vecElemType :: CmmType -> CmmType #

isVecType :: CmmType -> Bool #