[GHC] #11668: SPEC has a runtime cost
GHC
ghc-devs at haskell.org
Wed Mar 2 19:37:22 UTC 2016
#11668: SPEC has a runtime cost
-------------------------------------+-------------------------------------
Reporter: bgamari | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.10.3
Keywords: | Operating System: Unknown/Multiple
Architecture: | Type of failure: Runtime
Unknown/Multiple | performance bug
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
As far as I know, `SPEC` is merely intended to help the compiler identify
calls for which constructor specialization may be help. Yet it's not
erased! In fact, it has a runtime representation which we need to
construct and pass around to so-marked calls. This likely isn't killing
the performance of anyone's programs but surely we can do better than
this.
Really, the whole scheme of marking functions with `SPEC` (which as far as
I know isn't even properly documented) seems quite odd. What is stopping
us from simply attaching pragmas to equations?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11668>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list