Rename CmmCPS to CmmPipeline.
authorEdward Z. Yang <ezyang@mit.edu>
Tue, 14 Jun 2011 11:33:37 +0000 (12:33 +0100)
committerEdward Z. Yang <ezyang@mit.edu>
Tue, 14 Jun 2011 12:12:49 +0000 (13:12 +0100)
Signed-off-by: Edward Z. Yang <ezyang@mit.edu>

compiler/cmm/CmmPipeline.hs [moved from compiler/cmm/CmmCPS.hs with 99% similarity]
compiler/cmm/cmm-notes
compiler/ghc.cabal.in
compiler/main/HscMain.lhs

similarity index 99%
rename from compiler/cmm/CmmCPS.hs
rename to compiler/cmm/CmmPipeline.hs
index c29e5f6..a90d6b4 100644 (file)
@@ -2,7 +2,7 @@
 -- Norman likes local bindings
 -- If this module lives on I'd like to get rid of this flag in due course
 
-module CmmCPS (
+module CmmPipeline (
   -- | Converts C-- with an implicit stack and native C-- calls into
   -- optimized, CPS converted and native-call-less C--.  The latter
   -- C-- can be used to generate assembly.
index 5f26edd..4a87911 100644 (file)
@@ -8,8 +8,6 @@ More notes (June 11)
 \r
   or parameterise FCode over its envt; the CgState part seem useful for both\r
 \r
-* Rename CmmCPS\r
-\r
 * "Remove redundant reloads" in CmmSpillReload should be redundant; since\r
   insertLateReloads is now gone, every reload is reloading a live variable.\r
   Test and nuke.\r
@@ -250,7 +248,7 @@ CmmCvt.hs      Conversion between old and new Cmm reps
 CmmOpt.hs      Hopefully-redundant optimiser\r
 \r
 -------- Stuff to keep ------------\r
-CmmCPS.hs                 Driver for new pipeline\r
+CmmPipeline.hs            Driver for new pipeline\r
 \r
 CmmLive.hs                Liveness analysis, dead code elim\r
 CmmProcPoint.hs           Identifying and splitting out proc-points\r
@@ -297,24 +295,24 @@ BlockId.hs          BlockId, BlockEnv, BlockSet
       type RawCmm = GenCmm CmmStatic [CmmStatic] (ListGraph CmmStmt)\r
 \r
 * HscMain.tryNewCodeGen\r
-    - STG->Cmm:    StgCmm.codeGen (new codegen)\r
-    - Optimise:    CmmContFlowOpt (simple optimisations, very self contained)\r
-    - Cps convert: CmmCPS.protoCmmCPS \r
-    - Optimise:    CmmContFlowOpt again\r
-    - Convert:     CmmCvt.cmmOfZgraph (convert to old rep) very self contained\r
+    - STG->Cmm:         StgCmm.codeGen (new codegen)\r
+    - Optimize and CPS: CmmPipeline.cmmPipeline\r
+    - Convert:          CmmCvt.cmmOfZgraph (convert to old rep) very self contained\r
 \r
 * StgCmm.hs  The new STG -> Cmm conversion code generator\r
   Lots of modules StgCmmXXX\r
 \r
 \r
 ----------------------------------------------------\r
-      CmmCPS.protoCmmCPS   The new pipeline\r
+      CmmPipeline.cmmPipeline   The new pipeline\r
 ----------------------------------------------------\r
 \r
-CmmCPS.protoCmmCPS:\r
-   1. Do cpsTop for each procedures separately\r
-   2. Build SRT representation; this spans multiple procedures\r
-       (unless split-objs)\r
+CmmPipeline.cmmPipeline:\r
+   1. Do control flow optimization\r
+   2. Do cpsTop for each procedures separately\r
+   3. Build SRT representation; this spans multiple procedures\r
+        (unless split-objs)\r
+   4. Do control flow optimization on all resulting procedures\r
 \r
 cpsTop:\r
   * CmmCommonBlockElim.elimCommonBlocks:\r
@@ -452,7 +450,7 @@ a dominator analysis, using the Dataflow Engine.
   f's keep-alive refs to include h1.\r
 \r
 * The SRT info is the C_SRT field of Cmm.ClosureTypeInfo in a\r
-  CmmInfoTable attached to each CmmProc.  CmmCPS.toTops actually does\r
+  CmmInfoTable attached to each CmmProc.  CmmPipeline.toTops actually does\r
   the attaching, right at the end of the pipeline.  The C_SRT part\r
   gives offsets within a single, shared table of closure pointers.\r
 \r
index b3d9f0c..a6c74f7 100644 (file)
@@ -182,7 +182,7 @@ Library
         CLabel
         Cmm
         CmmBuildInfoTables
-        CmmCPS
+        CmmPipeline
         CmmCallConv
         CmmCommonBlockElim
         CmmContFlowOpt
index 217a0c4..a120926 100644 (file)
@@ -118,7 +118,7 @@ import OldCmm           ( Cmm )
 import PprCmm          ( pprCmms )
 import CmmParse                ( parseCmmFile )
 import CmmBuildInfoTables
-import CmmCPS
+import CmmPipeline
 import CmmInfo
 import OptimizationFuel ( initOptFuelState )
 import CmmCvt