ghc-7.0.3: The GHC API

CgCallConv

Synopsis

- mkArgDescr :: Name -> [Id] -> FCode ArgDescr
- argDescrType :: ArgDescr -> StgHalfWord
- isBigLiveness :: Liveness -> Bool
- mkRegLiveness :: [(Id, GlobalReg)] -> Int -> Int -> StgWord
- smallLiveness :: Int -> StgWord -> Liveness
- mkLivenessCLit :: Liveness -> CmmLit
- assignCallRegs :: [(CgRep, a)] -> ([(a, GlobalReg)], [(CgRep, a)])
- assignReturnRegs :: [(CgRep, a)] -> ([(a, GlobalReg)], [(CgRep, a)])
- assignPrimOpCallRegs :: [(CgRep, a)] -> ([(a, GlobalReg)], [(CgRep, a)])
- constructSlowCall :: [(CgRep, CmmExpr)] -> (CLabel, [(CgRep, CmmExpr)], [(CgRep, CmmExpr)])
- slowArgs :: [(CgRep, CmmExpr)] -> [(CgRep, CmmExpr)]
- slowCallPattern :: [CgRep] -> (FastString, Int)
- dataReturnConvPrim :: CgRep -> CmmReg
- getSequelAmode :: FCode CmmExpr

# Documentation

mkArgDescr :: Name -> [Id] -> FCode ArgDescr Source

argDescrType :: ArgDescr -> StgHalfWord Source

isBigLiveness :: Liveness -> Bool Source

mkRegLiveness :: [(Id, GlobalReg)] -> Int -> Int -> StgWord Source

smallLiveness :: Int -> StgWord -> Liveness Source

mkLivenessCLit :: Liveness -> CmmLit Source

assignCallRegs :: [(CgRep, a)] -> ([(a, GlobalReg)], [(CgRep, a)])Source

assignReturnRegs :: [(CgRep, a)] -> ([(a, GlobalReg)], [(CgRep, a)])Source

assignPrimOpCallRegs :: [(CgRep, a)] -> ([(a, GlobalReg)], [(CgRep, a)])Source

constructSlowCall :: [(CgRep, CmmExpr)] -> (CLabel, [(CgRep, CmmExpr)], [(CgRep, CmmExpr)])Source

slowArgs :: [(CgRep, CmmExpr)] -> [(CgRep, CmmExpr)]Source

`slowArgs` takes a list of function arguments and prepares them for pushing on the stack for extra arguments to a function which requires fewer arguments than we currently have.

slowCallPattern :: [CgRep] -> (FastString, Int)Source

dataReturnConvPrim :: CgRep -> CmmReg Source

getSequelAmode :: FCode CmmExpr Source