[GHC] #13479: Core Lint issues during slowtest

GHC ghc-devs at haskell.org
Fri Apr 7 16:07:32 UTC 2017


#13479: Core Lint issues during slowtest
-------------------------------------+-------------------------------------
        Reporter:  bgamari           |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  high              |            Milestone:  8.2.1
       Component:  Compiler          |              Version:  8.1
      Resolution:                    |             Keywords:  JoinPoints
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  crash or panic                     |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #10181            |  Differential Rev(s):  Phab:D3390
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by nomeata):

 > But it's simpler and more direct simply to propagate the "apply to 1
 arg" info that we apply to the body of g directly into the RHS of j.
 Completely ignore the occurrences of j, don't compute their join arity.

 I thought about it a bit. This should yield precisely the same analysis
 result, right? (In particular, when analyzing a join point `j`, then the
 incoming arity of `j` should always be the incoming arity of the whole
 `join j = … in …`, plus the arity of `j` itself, so once we are past the
 lambdas on the RHS of the `j`, we have – as you say – the same informatin.
 Furthermore, the join point is called once.). So adding this code would
 (potentially) cut some corners, but it adds complexity to the code without
 any gain in precision. So unless this there is a compiler performance
 bottle neck to be fixed, that does not seem to really be a good trade off,
 does it?

 (We could omit setting the call arity on join points, or – as now –
 ignoring it in the simplifier. Doesn’t seem to make a big difference
 either way.)

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


More information about the ghc-tickets mailing list