[GHC] #8326: Place heap checks common in case alternatives before the case

GHC ghc-devs at haskell.org
Fri Oct 17 14:07:35 UTC 2014


#8326: Place heap checks common in case alternatives before the case
-------------------------------------+-------------------------------------
              Reporter:  jstolarek   |            Owner:  jstolarek
                  Type:  task        |           Status:  new
              Priority:  normal      |        Milestone:
             Component:  Compiler    |          Version:  7.7
            Resolution:              |         Keywords:
      Operating System:              |     Architecture:  Unknown/Multiple
  Unknown/Multiple                   |       Difficulty:  Unknown
       Type of failure:              |       Blocked By:
  None/Unknown                       |  Related Tickets:  #1498
             Test Case:              |
              Blocking:  8317        |
Differential Revisions:  Phab:D343   |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 Well, of course the plumbing would need to change a bit.  `cgAlts` would
 have to return something saying which branches allocated.  The difficulty
 is that at the moment the `gc_plan` flag is passed ''into'' `cgAlts`
 whereas now we are proposing that the plan will depend on something
 ''returned'' by `cgAlts`. That might be ok, if we tied a recursive knot,
 provided `cgAlts` was sufficiently lazy in its "plan" parameter.

 More than that I cannot say without looking a lot harder at the code,
 something you can do just as well as I, perhaps better.

 Simon

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


More information about the ghc-tickets mailing list