[GHC] #9796: Implement amap/coerce rule for `Array`

GHC ghc-devs at haskell.org
Wed Nov 12 20:46:24 UTC 2014


#9796: Implement amap/coerce rule for `Array`
-------------------------------------+-------------------------------------
              Reporter:  dfeuer      |            Owner:  dfeuer
                  Type:  task        |           Status:  patch
              Priority:  normal      |        Milestone:  7.10.1
             Component:  Core        |          Version:  7.9
  Libraries                          |         Keywords:
            Resolution:              |     Architecture:  Unknown/Multiple
      Operating System:              |       Difficulty:  Easy (less than 1
  Unknown/Multiple                   |  hour)
       Type of failure:  Runtime     |       Blocked By:
  performance bug                    |  Related Tickets:
             Test Case:              |
              Blocking:              |
Differential Revisions:  Phab:D471   |
-------------------------------------+-------------------------------------
Changes (by dfeuer):

 * status:  new => patch
 * differential:   => Phab:D471


Comment:

 Doing this required me to delay inlining `amap` until phase 1, which
 required me to rewrite it to avoid relying on list fusion. This has a nice
 side benefit: the compiled code ends up smaller because it avoids a
 redundant test relating to `enumFromTo` and redundant array freezing code
 that went with it.

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


More information about the ghc-tickets mailing list