Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- getVirtHp :: FCode VirtualHpOffset
- setVirtHp :: VirtualHpOffset -> FCode ()
- setRealHp :: VirtualHpOffset -> FCode ()
- getHpRelOffset :: VirtualHpOffset -> FCode CmmExpr
- entryHeapCheck :: ClosureInfo -> Maybe LocalReg -> Int -> [LocalReg] -> FCode () -> FCode ()
- altHeapCheck :: [LocalReg] -> FCode a -> FCode a
- noEscapeHeapCheck :: [LocalReg] -> FCode a -> FCode a
- altHeapCheckReturnsTo :: [LocalReg] -> Label -> ByteOff -> FCode a -> FCode a
- heapStackCheckGen :: Maybe CmmExpr -> Maybe CmmExpr -> FCode ()
- entryHeapCheck' :: Bool -> CmmExpr -> Int -> [LocalReg] -> FCode () -> FCode ()
- mkStaticClosureFields :: Profile -> CmmInfoTable -> CostCentreStack -> CafInfo -> [CmmLit] -> [CmmLit]
- mkStaticClosure :: Profile -> CLabel -> CostCentreStack -> [CmmLit] -> [CmmLit] -> [CmmLit] -> [CmmLit] -> [CmmLit]
- allocDynClosure :: Maybe Id -> CmmInfoTable -> LambdaFormInfo -> CmmExpr -> CmmExpr -> [(NonVoid StgArg, VirtualHpOffset)] -> FCode CmmExpr
- allocDynClosureCmm :: Maybe Id -> CmmInfoTable -> LambdaFormInfo -> CmmExpr -> CmmExpr -> [(CmmExpr, ByteOff)] -> FCode CmmExpr
- allocHeapClosure :: SMRep -> CmmExpr -> CmmExpr -> [(CmmExpr, ByteOff)] -> FCode CmmExpr
- emitSetDynHdr :: CmmExpr -> CmmExpr -> CmmExpr -> FCode ()
Documentation
setVirtHp :: VirtualHpOffset -> FCode () Source #
setRealHp :: VirtualHpOffset -> FCode () Source #
getHpRelOffset :: VirtualHpOffset -> FCode CmmExpr Source #
entryHeapCheck :: ClosureInfo -> Maybe LocalReg -> Int -> [LocalReg] -> FCode () -> FCode () Source #
altHeapCheck :: [LocalReg] -> FCode a -> FCode a Source #
noEscapeHeapCheck :: [LocalReg] -> FCode a -> FCode a Source #
altHeapCheckReturnsTo :: [LocalReg] -> Label -> ByteOff -> FCode a -> FCode a Source #
entryHeapCheck' :: Bool -> CmmExpr -> Int -> [LocalReg] -> FCode () -> FCode () Source #
lower-level version for GHC.Cmm.Parser
mkStaticClosureFields :: Profile -> CmmInfoTable -> CostCentreStack -> CafInfo -> [CmmLit] -> [CmmLit] Source #
mkStaticClosure :: Profile -> CLabel -> CostCentreStack -> [CmmLit] -> [CmmLit] -> [CmmLit] -> [CmmLit] -> [CmmLit] Source #
allocDynClosure :: Maybe Id -> CmmInfoTable -> LambdaFormInfo -> CmmExpr -> CmmExpr -> [(NonVoid StgArg, VirtualHpOffset)] -> FCode CmmExpr Source #
allocDynClosureCmm :: Maybe Id -> CmmInfoTable -> LambdaFormInfo -> CmmExpr -> CmmExpr -> [(CmmExpr, ByteOff)] -> FCode CmmExpr Source #
:: SMRep | representation of the object |
-> CmmExpr | info pointer |
-> CmmExpr | cost centre |
-> [(CmmExpr, ByteOff)] | payload |
-> FCode CmmExpr | returns the address of the object |
Low-level heap object allocation.
emitSetDynHdr :: CmmExpr -> CmmExpr -> CmmExpr -> FCode () Source #