[commit: ghc] master: Improve the Occurrence Analyzer’s handling of one-shot functions (a1980ec)

git at git.haskell.org git at git.haskell.org
Sun Feb 12 01:08:44 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/a1980ecb5626ec85fc14fbd217e2d16c7d50a120/ghc

>---------------------------------------------------------------

commit a1980ecb5626ec85fc14fbd217e2d16c7d50a120
Author: Joachim Breitner <mail at joachim-breitner.de>
Date:   Sat Feb 11 19:20:24 2017 -0500

    Improve the Occurrence Analyzer’s handling of one-shot functions
    
    When determining whether an expression is used saturatedly, count the
    number of value arguments that the occurrence analyser sees, and add
    the number of one-shot arguments that we know (from the strictness
    analyser) are passed from the context.
    
    perf results suggest no noticable change in allocations, reduction of
    code sizes, and performance regression possibliy due to loss of join
    points.
    
    Test Plan: perf.haskell.org
    
    Reviewers: simonpj, austin, bgamari
    
    Reviewed By: bgamari
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D3089


>---------------------------------------------------------------

a1980ecb5626ec85fc14fbd217e2d16c7d50a120
 compiler/simplCore/OccurAnal.hs    | 80 +++++++++++++++++++++++---------
 testsuite/tests/perf/haddock/all.T | 93 ++++++++++++++++++++------------------
 2 files changed, 107 insertions(+), 66 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc a1980ecb5626ec85fc14fbd217e2d16c7d50a120


More information about the ghc-commits mailing list