import CoreTidy ( tidyExpr )
import CorePrep ( corePrepExpr )
import Flattening ( flattenExpr )
-import Vectorise ( vectorise )
import Desugar ( deSugarExpr )
import SimplCore ( simplifyExpr )
import TcRnDriver ( tcRnStmt, tcRnExpr, tcRnType )
import MkIface ( checkOldIface, mkIface, writeIfaceFile )
import Desugar ( deSugar )
import Flattening ( flatten )
-import Vectorise ( vectorise )
import SimplCore ( core2core )
import TidyPgm ( tidyProgram, mkBootModDetails )
import CorePrep ( corePrepPgm )
hscSimplify ds_result
= do hsc_env <- gets compHscEnv
liftIO $ do
- vect_result <- {-# SCC "Vectorisation" #-}
- vectorise hsc_env ds_result
-------------------
-- SIMPLIFY
-------------------
simpl_result <- {-# SCC "Core2Core" #-}
- core2core hsc_env vect_result
+ core2core hsc_env ds_result
return simpl_result
--------------------------------------------------------------
foreign_stubs dir_imps cost_centre_info
stg_binds hpc_info
------------------ Convert to CPS --------------------
- --continuationC <- cmmCPS dflags abstractC
+ --continuationC <- cmmCPS dflags abstractC >>= cmmToRawCmm
continuationC <- cmmToRawCmm abstractC
------------------ Code output -----------------------
(stub_h_exists,stub_c_exists)
md_rules = [panic "no rules"],
-- Rules are CoreRules, not the
-- RuleDecls we get out of the typechecker
- md_vect_info =
- panic "HscMain.hscFileCheck: no VectInfo"
+ md_vect_info = noVectInfo
-- VectInfo is added by the Core
-- vectorisation pass
}
case maybe_cmm of
Nothing -> return False
Just cmm -> do
- --continuationC <- cmmCPS dflags [cmm]
+ --continuationC <- cmmCPS dflags [cmm] >>= cmmToRawCmm
continuationC <- cmmToRawCmm [cmm]
codeOutput dflags no_mod no_loc NoStubs [] continuationC
return True