#5539: GHC panic - Simplifier ticks exhausted
---------------------------------+------------------------------------------
Reporter: hvr | Owner: simonpj
Type: bug | Status: new
Priority: high | Milestone: 7.4.1
Component: Compiler | Version: 7.3
Resolution: | Keywords:
Os: Linux | Architecture: x86_64 (amd64)
Failure: Compile-time crash | Difficulty: Unknown
Testcase: | Blockedby:
Blocking: | Related:
---------------------------------+------------------------------------------
Comment(by rl):
Simon, I took a closer looks at the the unfoldings generated for various
`vector` modules and it seems that the rule you describe above isn't
applied consistently. Let's take `Data.Vector.Generic` as an example. In
simple functions like `unsafeIndex`, both `not` and `(||)` seem to be
inlined into the unfolding and the dead bounds checking code
(`UNSAFE_CHECK` in this case) is completely eliminated. But in more
complex functions like `unsafeBackpermute` which uses the exact same
`UNSAFE_CHECK`, this inlining doesn't happen, as you say. So it seems that
the unfolding of `unsafeIndex` is optimised too aggressively?
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5539#comment:33>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs