| ||||||||||||||||||||
| ||||||||||||||||||||
| Documentation | ||||||||||||||||||||
| type Code = FCode () | ||||||||||||||||||||
| data FCode a | ||||||||||||||||||||
| ||||||||||||||||||||
| initC :: DynFlags -> Module -> FCode a -> IO a | ||||||||||||||||||||
| thenC :: Code -> FCode a -> FCode a | ||||||||||||||||||||
| thenFC :: FCode a -> (a -> FCode c) -> FCode c | ||||||||||||||||||||
| listCs :: [Code] -> Code | ||||||||||||||||||||
| listFCs :: [FCode a] -> FCode [a] | ||||||||||||||||||||
| mapCs :: (a -> Code) -> [a] -> Code | ||||||||||||||||||||
| mapFCs :: (a -> FCode b) -> [a] -> FCode [b] | ||||||||||||||||||||
| returnFC :: a -> FCode a | ||||||||||||||||||||
| fixC :: (a -> FCode a) -> FCode a | ||||||||||||||||||||
| fixC_ :: (a -> FCode a) -> FCode () | ||||||||||||||||||||
| checkedAbsC :: CmmStmt -> Code | ||||||||||||||||||||
| stmtC :: CmmStmt -> Code | ||||||||||||||||||||
| stmtsC :: [CmmStmt] -> Code | ||||||||||||||||||||
| labelC :: BlockId -> Code | ||||||||||||||||||||
| emitStmts :: CmmStmts -> Code | ||||||||||||||||||||
| nopC :: Code | ||||||||||||||||||||
| whenC :: Bool -> Code -> Code | ||||||||||||||||||||
| newLabelC :: FCode BlockId | ||||||||||||||||||||
| newUnique :: FCode Unique | ||||||||||||||||||||
| newUniqSupply :: FCode UniqSupply | ||||||||||||||||||||
| type CgStmts = OrdList CgStmt | ||||||||||||||||||||
| emitCgStmts :: CgStmts -> Code | ||||||||||||||||||||
| forkCgStmts :: CgStmts -> FCode BlockId | ||||||||||||||||||||
| cgStmtsToBlocks :: CgStmts -> FCode [CmmBasicBlock] | ||||||||||||||||||||
| getCgStmts' :: FCode a -> FCode (a, CgStmts) | ||||||||||||||||||||
| getCgStmts :: FCode a -> FCode CgStmts | ||||||||||||||||||||
| noCgStmts :: CgStmts | ||||||||||||||||||||
| oneCgStmt :: CmmStmt -> CgStmts | ||||||||||||||||||||
| consCgStmt :: CmmStmt -> CgStmts -> CgStmts | ||||||||||||||||||||
| getCmm :: Code -> FCode Cmm | ||||||||||||||||||||
| emitData :: Section -> [CmmStatic] -> Code | ||||||||||||||||||||
| emitProc :: CmmInfo -> CLabel -> CmmFormals -> [CmmBasicBlock] -> Code | ||||||||||||||||||||
| emitSimpleProc :: CLabel -> Code -> Code | ||||||||||||||||||||
| forkLabelledCode :: Code -> FCode BlockId | ||||||||||||||||||||
| forkClosureBody :: Code -> Code | ||||||||||||||||||||
| forkStatics :: FCode a -> FCode a | ||||||||||||||||||||
| forkAlts :: [FCode a] -> FCode [a] | ||||||||||||||||||||
| forkEval :: EndOfBlockInfo -> Code -> FCode Sequel -> FCode EndOfBlockInfo | ||||||||||||||||||||
| forkEvalHelp :: EndOfBlockInfo -> Code -> FCode a -> FCode (VirtualSpOffset, a) | ||||||||||||||||||||
| forkProc :: Code -> FCode CgStmts | ||||||||||||||||||||
| codeOnly :: Code -> Code | ||||||||||||||||||||
| type SemiTaggingStuff = Maybe ([(ConTagZ, CmmLit)], CmmLit) | ||||||||||||||||||||
| type ConTagZ = Int | ||||||||||||||||||||
| data EndOfBlockInfo | ||||||||||||||||||||
| ||||||||||||||||||||
| setEndOfBlockInfo :: EndOfBlockInfo -> Code -> Code | ||||||||||||||||||||
| getEndOfBlockInfo :: FCode EndOfBlockInfo | ||||||||||||||||||||
| setSRT :: SRT -> FCode a -> FCode a | ||||||||||||||||||||
| getSRT :: FCode SRT | ||||||||||||||||||||
| setSRTLabel :: CLabel -> FCode a -> FCode a | ||||||||||||||||||||
| getSRTLabel :: FCode CLabel | ||||||||||||||||||||
| setTickyCtrLabel :: CLabel -> Code -> Code | ||||||||||||||||||||
| getTickyCtrLabel :: FCode CLabel | ||||||||||||||||||||
| data StackUsage | ||||||||||||||||||||
| ||||||||||||||||||||
| data HeapUsage | ||||||||||||||||||||
| ||||||||||||||||||||
| type VirtualSpOffset = WordOff | ||||||||||||||||||||
| type VirtualHpOffset = WordOff | ||||||||||||||||||||
| initStkUsage :: StackUsage | ||||||||||||||||||||
| initHpUsage :: HeapUsage | ||||||||||||||||||||
| getHpUsage :: FCode HeapUsage | ||||||||||||||||||||
| setHpUsage :: HeapUsage -> Code | ||||||||||||||||||||
| heapHWM :: HeapUsage -> VirtualHpOffset | ||||||||||||||||||||
| getModuleName :: FCode Module | ||||||||||||||||||||
| data Sequel | ||||||||||||||||||||
| ||||||||||||||||||||
| getState :: FCode CgState | ||||||||||||||||||||
| setState :: CgState -> FCode () | ||||||||||||||||||||
| getInfoDown :: FCode CgInfoDownwards | ||||||||||||||||||||
| getDynFlags :: FCode DynFlags | ||||||||||||||||||||
| getThisPackage :: FCode PackageId | ||||||||||||||||||||
| getStkUsage :: FCode StackUsage | ||||||||||||||||||||
| setStkUsage :: StackUsage -> Code | ||||||||||||||||||||
| getBinds :: FCode CgBindings | ||||||||||||||||||||
| setBinds :: CgBindings -> FCode () | ||||||||||||||||||||
| getStaticBinds :: FCode CgBindings | ||||||||||||||||||||
| data CgInfoDownwards | ||||||||||||||||||||
| ||||||||||||||||||||
| data CgState | ||||||||||||||||||||
| ||||||||||||||||||||
| Produced by Haddock version 2.7.2 | ||||||||||||||||||||