[GHC] #5363: optimized profiled version of a program incorectly compiles $!

GHC cvs-ghc at haskell.org
Wed Dec 7 17:54:27 CET 2011


#5363: optimized profiled version of a program incorectly compiles $!
-------------------------------------------------+--------------------------
    Reporter:  phercek                           |       Owner:  simonmar                   
        Type:  bug                               |      Status:  new                        
    Priority:  normal                            |   Milestone:  7.4.1                      
   Component:  Profiling                         |     Version:  7.0.3                      
    Keywords:  optimization profiling stricness  |          Os:  Linux                      
Architecture:  x86_64 (amd64)                    |     Failure:  Incorrect result at runtime
  Difficulty:                                    |    Testcase:                             
   Blockedby:                                    |    Blocking:                             
-------------------------------------------------+--------------------------

Comment(by marlowsd@…):

 commit eea40328004e3cad1fdd31004337e10e6ae5fc52
 {{{
 Author: Simon Marlow <marlowsd at gmail.com>
 Date:   Wed Dec 7 15:23:28 2011 +0000

     Improve optimisation in the presence of SCCs (fixes #5363)

     We had some special cases to handle things like

       case (scc c (case E of alts)) of alts'

     but it only worked when there was a single scc in the way.  This
     generalises the optimisation to handle multiple sccs and ticks, so
     that we can catch most case-of-case optimisations that would normally
     apply in the absence of profiling.

     This fixes the example in #5363, and nofib results (with -prof
     -fprof-auto) show that allocation universally goes down or stays the
     same.

  compiler/simplCore/Simplify.lhs |   35
 +++++++++++++++++++++++++----------
  1 files changed, 25 insertions(+), 10 deletions(-)
 }}}

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5363#comment:6>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the Glasgow-haskell-bugs mailing list