[project @ 2001-12-04 09:45:49 by sof]
[ghc-hetmet.git] / ghc / compiler / simplStg / SimplStg.lhs
index e0c71bb..cc918b7 100644 (file)
@@ -10,33 +10,28 @@ module SimplStg ( stg2stg ) where
 
 import StgSyn
 
-import CostCentre       ( CostCentre, CostCentreStack )
+import CostCentre       ( CollectedCCs )
 import SCCfinal                ( stgMassageForProfiling )
 import StgLint         ( lintStgBindings )
 import StgStats                ( showStgStats )
 import SRT             ( computeSRTs )
 
 import CmdLineOpts     ( DynFlags, DynFlag(..), dopt, 
-                         opt_StgDoLetNoEscapes,
                          StgToDo(..), dopt_StgToDo
                        )
 import Id              ( Id )
 import Module          ( Module )
 import ErrUtils                ( doIfSet_dyn, dumpIfSet_dyn, showPass )
-import UniqSupply      ( mkSplitUniqSupply, splitUniqSupply, UniqSupply )
-import IO              ( hPutStr, stdout )
+import UniqSupply      ( mkSplitUniqSupply, splitUniqSupply )
 import Outputable
 \end{code}
 
 \begin{code}
-stg2stg :: DynFlags            -- includes spec of what stg-to-stg passes to do
-       -> Module               -- module name (profiling only)
-       -> [StgBinding]         -- input...
-       -> IO
-           ([(StgBinding,[Id])],  -- output program...
-            ([CostCentre],        -- local cost-centres that need to be decl'd
-             [CostCentre],        -- "extern" cost-centres
-             [CostCentreStack]))  -- pre-defined "singleton" cost centre stacks
+stg2stg :: DynFlags                 -- includes spec of what stg-to-stg passes to do
+       -> Module                    -- module name (profiling only)
+       -> [StgBinding]              -- input...
+       -> IO ( [(StgBinding,[Id])]  -- output program...
+             , CollectedCCs)        -- cost centre information (declared and used)
 
 stg2stg dflags module_name binds
   = do { showPass dflags "Stg2Stg"