Changes between Version 39 and Version 40 of Commentary/Compiler/NewCodeGenPipeline


Ignore:
Timestamp:
Jun 17, 2011 5:34:27 PM (3 years ago)
Author:
ezyang
Comment:

machop folding

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Compiler/NewCodeGenPipeline

    v39 v40  
    4848   * Convert graph to annotated graph whose nodes are `CmmRewriteAssignments.WithRegUsage`.  Specifically, `CmmAssign` is decorated with a flag `RegUsage` saying whether it is used once or many times. 
    4949   * Sink or inline assignments nearer their use points 
     50   * Do constant mach-op folding. This is done in this phase, because folded mach-ops can be inlined, and inlining exposes opportunities for mach-op folding. 
    5051 
    5152 * '''Remove dead assignments and stores''', implemented in `CmmLive`, removes assignments to dead variables and things like ``a = a`` or ``I32[Hp] = I32[Hp]``. The latter may more appropriately be done in a general optimization pass, as it doesn't take advantage of liveness information.