Changes between Version 26 and Version 27 of Commentary/Compiler/CodeGen


Ignore:
Timestamp:
Feb 1, 2014 6:26:02 PM (17 months ago)
Author:
jstolarek
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Compiler/CodeGen

    v26 v27  
    5353   * adding adjustments to `Sp`. 
    5454  
     55 * '''Sinking assignments''', implemented in `CmmSink`, performs these optimizations: 
     56   * moves assignments closer to their uses, to reduce register pressure 
     57   * pushes assignments into a single branch of a conditional if possible 
     58   * inlines assignments to registers that are mentioned only once 
     59   * discards dead assignments 
     60 
     61  It currently does not eliminate dead code in loops (#8327) and has some other minor deficiencies (eg. #8336). 
     62 
     63  * '''CAF analysis''', implemented in `CmmBuildInfoTables`. Computed CAF information is returned from `cmmPipeline` and used to create Static Reference Tables (SRT). See [wiki:Commentary/Rts/Storage/GC/CAFs here] for some more detail on CAFs and SRTs. 
     64 
    5565 * '''Split into multiple !CmmProcs''', implemented in `CmmProcPointZ`.  At this point we build an info-table for each of the !CmmProcs, including SRTs.  Done on the basis of the live local variables (by now mapped to stack slots) and live CAF statics. 
    5666   * `LastCall` and `LastReturn` nodes are replaced by `Jump`s.