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


Ignore:
Timestamp:
Feb 1, 2014 6:26:02 PM (19 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.