[GHC] #13873: Adding a SPECIALIZE at a callsite in Main.hs is causing a regression
GHC
ghc-devs at haskell.org
Sun Jun 25 00:00:28 UTC 2017
#13873: Adding a SPECIALIZE at a callsite in Main.hs is causing a regression
-------------------------------------+-------------------------------------
Reporter: jberryman | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 8.2.1-rc2
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: None/Unknown
Unknown/Multiple |
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
Github user jmoy documents an issue with lack of specialization happening
for INLINABLE functions in GHC 8.0 here: https://github.com/jmoy/testing-
specialize . Testing on 8.2.1 it seems that specialization happened
(although I didn't verify this in the core) as the result was 10x faster.
But the odd thing to me was uncommenting the `SPECIALIZE` pragma at the
callsite actually resulted in a significant regression:
https://github.com/jmoy/testing-specialize/issues/1#issuecomment-310868360
Maybe GHC is choosing the worse manual partial specialization for some
reason. I'm sorry I can't produce a better ticket for this at the moment.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/13873>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list