[commit: ghc] wip/spj-early-inline4: Improve SetLevels for join points (2ff7aa7)

git at git.haskell.org git at git.haskell.org
Sun Feb 26 18:06:07 UTC 2017


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

On branch  : wip/spj-early-inline4
Link       : http://ghc.haskell.org/trac/ghc/changeset/2ff7aa78ba76a142cc115f31587c8d8cc5f1ab58/ghc

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

commit 2ff7aa78ba76a142cc115f31587c8d8cc5f1ab58
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Fri Feb 17 16:17:16 2017 +0000

    Improve SetLevels for join points
    
    C.f. Trac #13286, #13236
    
    * Never destroy a join point unless it goes to top level
      See Note [Floating join point bindings]
    
    * Never float a MFE if it has a free join variable
      Note [Free join points]
    
    * Stop treating nullary join points specially
    
    * Enforce the invariant that le_join_ceil >= le_ctxt_lvl
      (Needs more thought...)


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

2ff7aa78ba76a142cc115f31587c8d8cc5f1ab58
 compiler/simplCore/SetLevels.hs | 301 +++++++++++++++++++---------------------
 1 file changed, 144 insertions(+), 157 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 2ff7aa78ba76a142cc115f31587c8d8cc5f1ab58


More information about the ghc-commits mailing list