Changes between Version 24 and Version 25 of Status/May13


Ignore:
Timestamp:
Apr 30, 2013 3:03:36 PM (12 months ago)
Author:
simonpj
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Status/May13

    v24 v25  
    5353}}} 
    5454 
    55 Details can be found in the wiki page [2]. 
     55Details can be found in the wiki page [1]. 
    5656 
    5757== Back end and code generation == 
    5858 
    59   * '''The new code generator.''' [entry copied from Oct 2012 status report] Several years since this project was started, the new code generator is finally working  [1], and is now switched on by default in `master`.  It will be in GHC 7.8.1.  From a user's perspective there should be very little difference, though some programs will be faster. 
     59  * '''The new code generator.''' [entry copied from Oct 2012 status report] Several years since this project was started, the new code generator is finally working  [2], and is now switched on by default in `master`.  It will be in GHC 7.8.1.  From a user's perspective there should be very little difference, though some programs will be faster. 
    6060 
    6161 There are three important improvements in the generated code.  One is that `let-no-escape` functions are now compiled much more efficiently: a recursive `let-no-escape` now turns into a real loop in C--.  The second improvement is that global registers (R1, R2, etc.) are now available for the register allocator to use within a function, provided they aren't in use for argument passing.  This means that there are more registers available for complex code sequences.  The third improvement is that we have a new sinking pass that replaces the old "mini-inliner" from the native code generator, and is capable of optimisations that the old pass couldn't do. 
     
    8383 
    8484[1] Overlapping type family instances:  http://hackage.haskell.org/trac/ghc/wiki/NewAxioms  
     85[[br]] 
    8586[2] The new codegen is nearly ready to go live [http://hackage.haskell.org/trac/ghc/blog/newcg-update] [[BR]]