CmmType

ghc-8.2.1.20171108: The GHC API

Safe Haskell | None
Language | Haskell2010

CmmType

# Documentation

data CmmType Source #

Instances

Outputable CmmType # |
Methods ppr :: CmmType -> SDoc Source # pprPrec :: Rational -> CmmType -> SDoc Source #

b8 :: CmmType Source #

b16 :: CmmType Source #

b32 :: CmmType Source #

b64 :: CmmType Source #

b128 :: CmmType Source #

b256 :: CmmType Source #

b512 :: CmmType Source #

f32 :: CmmType Source #

f64 :: CmmType Source #

bWord :: DynFlags -> CmmType Source #

bHalfWord :: DynFlags -> CmmType Source #

gcWord :: DynFlags -> CmmType Source #

cInt :: DynFlags -> CmmType Source #

cmmBits :: Width -> CmmType Source #

cmmFloat :: Width -> CmmType Source #

typeWidth :: CmmType -> Width Source #

cmmEqType :: CmmType -> CmmType -> Bool Source #

cmmEqType_ignoring_ptrhood :: CmmType -> CmmType -> Bool Source #

isFloatType :: CmmType -> Bool Source #

isGcPtrType :: CmmType -> Bool Source #

isWord32 :: CmmType -> Bool Source #

isWord64 :: CmmType -> Bool Source #

isFloat64 :: CmmType -> Bool Source #

isFloat32 :: CmmType -> Bool Source #

data Width Source #

Constructors

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

Instances

Eq Width # |
Methods (==) :: Width -> Width -> Bool # (/=) :: Width -> Width -> Bool #
Ord Width # |
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 # |
Methods showsPrec :: Int -> Width -> ShowS Source # show :: Width -> String Source # showList :: [Width] -> ShowS Source #
Outputable Width # |
Methods ppr :: Width -> SDoc Source # pprPrec :: Rational -> Width -> SDoc Source #

widthInBits :: Width -> Int Source #

widthInBytes :: Width -> Int Source #

widthInLog :: Width -> Int Source #

widthFromBytes :: Int -> Width Source #

wordWidth :: DynFlags -> Width Source #

halfWordWidth :: DynFlags -> Width Source #

cIntWidth :: DynFlags -> Width Source #

halfWordMask :: DynFlags -> Integer Source #

narrowU :: Width -> Integer -> Integer Source #

narrowS :: Width -> Integer -> Integer Source #

rEP_CostCentreStack_mem_alloc :: DynFlags -> CmmType Source #

rEP_CostCentreStack_scc_count :: DynFlags -> CmmType Source #

rEP_StgEntCounter_allocs :: DynFlags -> CmmType Source #

rEP_StgEntCounter_allocd :: DynFlags -> CmmType Source #

data ForeignHint Source #

Constructors

NoHint |
AddrHint |
SignedHint |

Instances

Eq ForeignHint # |
Methods (==) :: ForeignHint -> ForeignHint -> Bool # (/=) :: ForeignHint -> ForeignHint -> Bool #

type Length = Int Source #

vec :: Length -> CmmType -> CmmType Source #

vec2 :: CmmType -> CmmType Source #

vec4 :: CmmType -> CmmType Source #

vec8 :: CmmType -> CmmType Source #

vec16 :: CmmType -> CmmType Source #

vec2f64 :: CmmType Source #

vec2b64 :: CmmType Source #

vec4f32 :: CmmType Source #

vec4b32 :: CmmType Source #

vec8b16 :: CmmType Source #

vec16b8 :: CmmType Source #

cmmVec :: Int -> CmmType -> CmmType Source #

vecLength :: CmmType -> Length Source #

vecElemType :: CmmType -> CmmType Source #

isVecType :: CmmType -> Bool Source #