[GHC] #11443: SPECIALIZE pragma does not work + compilation times regression in GHC 8.0-rc1
GHC
ghc-devs at haskell.org
Wed May 4 09:40:43 UTC 2016
#11443: SPECIALIZE pragma does not work + compilation times regression in GHC
8.0-rc1
-------------------------------------+-------------------------------------
Reporter: danilo2 | Owner: bgamari
Type: bug | Status: new
Priority: highest | Milestone: 8.0.2
Component: Compiler | Version: 8.0.1-rc1
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by bgamari):
Looking at the `verbose-core2core` output from `Test2` it seems quite
clear that the specialisation rules are firing as expected: While the
`dump-ds` output contains an application of `perfc1' @Int ...` as
expected, this is rewritten to `A.$sperfc3 ...` in the first simplifier
phase (where `$sperfc3` is indeed the expected `Int`-specialised binding).
So, the question is: why are things slowing down despite this? I know that
Richard did make some changes in how type families are reduced (see
3f5d1a13f112f34d992f6b74656d64d95a3f506d and
3e1b8824c849d063c7354dbdf63ae2910cf0fdfc). Perhaps the next place to look
is the tc-trace output.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11443#comment:15>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list