[GHC] #8275: Loopification breaks profiling

GHC ghc-devs at haskell.org
Sun Dec 1 22:49:19 UTC 2013


#8275: Loopification breaks profiling
----------------------------------------+----------------------------------
        Reporter:  jstolarek            |            Owner:
            Type:  bug                  |           Status:  new
        Priority:  high                 |        Milestone:  7.8.1
       Component:  Profiling            |          Version:  7.7
      Resolution:                       |         Keywords:
Operating System:  Unknown/Multiple     |     Architecture:
 Type of failure:  Building GHC failed  |  Unknown/Multiple
       Test Case:                       |       Difficulty:  Unknown
        Blocking:                       |       Blocked By:  8456
                                        |  Related Tickets:
----------------------------------------+----------------------------------

Comment (by parcs):

 Replying to [comment:40 simonmar]:
 > The fix looks right to me, thanks. (we should never be referring to
 global regs explicity except during copy-in or copy-out, so it was just a
 bug before.)
 >
 > > I don't know whether it's necessary to re-run the LDV code after
 looping. Not doing so certainly does not cause a segfault, anyway.
 >
 > Yes, it is necessary to do this.  Remember that looping should behave in
 exactly the same way as making a recursive call to the function.  Could
 someone look into this please?

 Okay, I optimistically pushed a pair of commits to make the LDV coderun
 after looping. It involved eliminating another explicit use of `nodeReg`
 and then moving the LDV code below the self-loop label. Is this fine?

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


More information about the ghc-tickets mailing list