GHC.Driver.CodeOutput

ghc-9.2.1: The GHC API

Safe Haskell | Safe-Inferred
Language | Haskell2010

GHC.Driver.CodeOutput

Synopsis

- codeOutput :: Logger -> TmpFs -> DynFlags -> UnitState -> Module -> FilePath -> ModLocation -> (a -> ForeignStubs) -> [(ForeignSrcLang, FilePath)] -> [UnitId] -> Stream IO RawCmmGroup a -> IO (FilePath, (Bool, Maybe FilePath), [(ForeignSrcLang, FilePath)], a)
- outputForeignStubs :: Logger -> TmpFs -> DynFlags -> UnitState -> Module -> ModLocation -> ForeignStubs -> IO (Bool, Maybe FilePath)
- profilingInitCode :: Platform -> Module -> CollectedCCs -> CStub
- ipInitCode :: DynFlags -> Module -> [InfoProvEnt] -> CStub

# Documentation

codeOutput Source #

Arguments

:: Logger |
-> TmpFs |
-> DynFlags |
-> UnitState |
-> Module |
-> FilePath |
-> ModLocation |
-> (a -> ForeignStubs) |
-> [(ForeignSrcLang, FilePath)] | additional files to be compiled with the C compiler
-> [UnitId] |
-> Stream IO RawCmmGroup a |
-> IO (FilePath, (Bool, Maybe FilePath), [(ForeignSrcLang, FilePath)], a) |

outputForeignStubs :: Logger -> TmpFs -> DynFlags -> UnitState -> Module -> ModLocation -> ForeignStubs -> IO (Bool, Maybe FilePath) Source #

profilingInitCode :: Platform -> Module -> CollectedCCs -> CStub Source #

Generate code to initialise cost centres

ipInitCode :: DynFlags -> Module -> [InfoProvEnt] -> CStub Source #

Generate code to initialise info pointer origin See note [Mapping Info Tables to Source Positions]