[GHC] #14688: Note [Lone variables] leads to missing a case-of-case opportunity

GHC ghc-devs at haskell.org
Thu Jan 25 17:20:32 UTC 2018


#14688: Note [Lone variables] leads to missing a case-of-case opportunity
-------------------------------------+-------------------------------------
        Reporter:  mpickering        |                Owner:  (none)
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.2.2
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by Simon Peyton Jones <simonpj@…>):

 In [changeset:"06366890ba77c20198d7fccc870083b0bbfb1b11/ghc" 0636689/ghc]:
 {{{
 #!CommitTicketReference repository="ghc"
 revision="06366890ba77c20198d7fccc870083b0bbfb1b11"
 Fix the lone-variable case in callSiteInline

 See Note [Lone variables] in CoreUnfold and
 Note [exprIsExpandable] in CoreUtils.

 Helpfully pointed out by Matthew Pickering in Trac #14688

 Nofib results are good:

 --------------------------------------------------------------------------------
         Program           Size    Allocs   Runtime   Elapsed  TotalMem
 --------------------------------------------------------------------------------
            anna          +0.1%     +0.3%     0.151     0.151      0.0%
          awards          +0.0%     -0.2%     0.001     0.001      0.0%
       compress2          +0.6%     -0.7%     -4.8%     -5.0%     -4.0%
           eliza          +0.0%     -2.4%     0.001     0.001      0.0%
          fulsom          +0.4%    -13.3%     -7.6%     -7.6%   +190.0%
          gamteb          +0.0%     -0.6%     0.062     0.062      0.0%
              gg          +0.1%     -0.4%     0.016     0.016      0.0%
             ida          +0.1%     +0.3%     0.110     0.110      0.0%
           kahan          +0.0%     -0.7%     -0.9%     -0.9%      0.0%
            mate          +0.1%     -5.2%     -4.9%     -4.9%      0.0%
          n-body          +0.0%     -0.2%     -0.3%     -3.0%      0.0%
          pretty          +0.0%     -2.8%     0.000     0.000      0.0%
             scs          +0.0%     -0.2%     +1.6%     +2.4%      0.0%
          simple          +0.4%     -0.2%     -2.3%     -2.3%     -3.4%
         veritas          +0.4%     -1.0%     0.003     0.003      0.0%
            wang          +0.0%     -1.6%     0.165     0.165      0.0%
 --------------------------------------------------------------------------------
             Min          -0.0%    -13.3%    -16.2%    -18.8%     -4.0%
             Max          +0.6%     +0.3%     +4.9%     +4.9%   +190.0%
  Geometric Mean          +0.1%     -0.3%     -1.7%     -2.4%     +0.9%
 }}}

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


More information about the ghc-tickets mailing list