Changes between Version 37 and Version 38 of Commentary/Compiler/NewCodeGenPipeline


Ignore:
Timestamp:
Jun 16, 2011 11:38:47 AM (3 years ago)
Author:
ezyang
Comment:

extra stage

Legend:

Unmodified
Added
Removed
Modified
  • Commentary/Compiler/NewCodeGenPipeline

    v37 v38  
    4444   At this point, no (`LocalReg`) variables are live across a call. 
    4545   * TODO: avoid  `f();g()` turning into `spill x; f(); reload x; spill x; g(); reload x`. 
    46    * (TODO: delete the "Remove redundant reloads") 
    4746 
    4847 * '''Rewrite assignments''' (assignments to local regs, that is, not stores).  
    4948   * 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. 
    5049   * Sink or inline assignments nearer their use points 
     50 
     51 * '''Remove redundant and dead assignments and stores''', implemented in `CmmSpillReload`, removes assignments to dead variables and things like ``a = a`` or ``I32[Hp] = I32[Hp]``. 
    5152 
    5253 * '''Figure out the stack layout''', implemented in `CmmStackLayout`.