[GHC] #14637: Simplifier Ticks Exhausted when compiling with profiling

GHC ghc-devs at haskell.org
Wed Jan 24 13:09:01 UTC 2018


#14637: Simplifier Ticks Exhausted when compiling with profiling
-------------------------------------+-------------------------------------
        Reporter:  cfhammill         |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.2.2
      Resolution:                    |             Keywords:
Operating System:  Linux             |         Architecture:  x86_64
 Type of failure:  Compile-time      |  (amd64)
  crash or panic                     |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by niteria):

 I was able to reproduce it with 8.0.2 and HEAD.
 I was able to reduce the reproduction case to the `bug2.hs` file and a 4
 files from the `vinyl` library.

 To reproduce first download `bug2.hs`, `Core.hs`, `Functor.hs`,
 `TypeLevel.hs` and then:
 {{{
 $ inplace/bin/ghc-stage2 bug2.hs -fforce-recomp -O -prof -fprof-auto-top
 -fprof-auto '-fsimpl-tick-factor=100'
 [1 of 5] Compiling Functor          ( Functor.hs, Functor.o )
 [2 of 5] Compiling TypeLevel        ( TypeLevel.hs, TypeLevel.o )
 [3 of 5] Compiling Core             ( Core.hs, Core.o )
 [4 of 5] Compiling Lens             ( Lens.hs, Lens.o )
 WARNING: file compiler/simplCore/SimplCore.hs, line 712
   Simplifier bailing out after 4 iterations [166, 4, 4, 4]
     Size = {terms: 620, types: 2,587, coercions: 662, joins: 0/13}
 WARNING: file compiler/simplCore/SimplCore.hs, line 712
   Simplifier bailing out after 4 iterations [4, 4, 4, 4]
     Size = {terms: 620, types: 2,587, coercions: 662, joins: 0/13}
 [5 of 5] Compiling Main             ( bug.hs, bug.o )
 Simplifier ticks exhausted
   When trying RuleFired Class op rlens
   To increase the limit, use -fsimpl-tick-factor=N (default 100).

   If you need to increase the limit substantially, please file a
   bug report and indicate the factor you needed.

   If GHC was unable to complete compilation even with a very large factor
   (a thousand or more), please consult the "Known bugs or infelicities"
   section in the Users Guide before filing a report. There are a
   few situations unlikely to occur in practical programs for which
   simplifier non-termination has been judged acceptable.

   To see detailed counts use -ddump-simpl-stats
   Total ticks: 111521
 }}}

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


More information about the ghc-tickets mailing list