[GHC] #5129: "evaluate" optimized away

GHC cvs-ghc at haskell.org
Sat Apr 30 18:06:51 CEST 2011


#5129: "evaluate" optimized away
---------------------------------+------------------------------------------
    Reporter:  dons              |        Owner:                             
        Type:  bug               |       Status:  new                        
    Priority:  normal            |    Milestone:                             
   Component:  Compiler          |      Version:  7.0.3                      
    Keywords:  seq, evaluate     |     Testcase:                             
   Blockedby:                    |   Difficulty:                             
          Os:  Unknown/Multiple  |     Blocking:                             
Architecture:  Unknown/Multiple  |      Failure:  Incorrect result at runtime
---------------------------------+------------------------------------------

Comment(by ezyang):

 It seems to me that we ought to be able to inline evaluate; if we emitted
 something directly like:

 {{{
 case (# touch s, poss_err #) of (# s1, _ #) -> assertFailure "blah" s1
 }}}

 where `touch` is some primitive that eventually becomes a no-op but
 enforces ordering (maybe we don’t even need it as it stands?). In this
 case the case wouldn't be dropped. NOINLINE works, but it seems a little
 wrong to me to add the overhead of a function application.

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



More information about the Glasgow-haskell-bugs mailing list