Changes between Version 30 and Version 31 of Internships/JanStolarek


Ignore:
Timestamp:
Jul 17, 2013 12:59:20 PM (2 years ago)
Author:
jstolarek
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Internships/JanStolarek

    v30 v31  
    2323  * Does it make sense to create a separate flag for every Cmm optimisation I add? After all they are designed to work together
    2424  * I need to remember to cerfully choose at which optimization levels my Cmm passes are enabled
     25=== Let-no-escape notes ===
     26  * Code generation for let-no-escape: `cgLneBinds` in `codeGen/StgCmmExpr.hs`
     27  * Heap checking in let-no-escape: see `Note [Heap checks]` in `codeGen/StgCmmHeap.hs`
     28  * From `codeGen/StgCmmMonad.hs`:
     29{{{
     30data CgLoc
     31  = CmmLoc CmmExpr        -- A stable CmmExpr; that is, one not mentioning
     32                        -- Hp, so that it remains valid across calls
     33
     34  | LneLoc BlockId [LocalReg]             -- A join point
     35        -- A join point (= let-no-escape) should only.
     36        -- be tail-called, and in a saturated way.
     37        -- To tail-call it, assign to these locals,.
     38        -- and branch to the block id
     39}}}
    2540
    2641== Some interesting tickets ==