[commit: ghc] master: Annotate CmmBranch with an optional likely target (939a7d6)

git at git.haskell.org git at git.haskell.org
Wed Sep 23 13:05:38 UTC 2015


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

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

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

commit 939a7d6367501d43be73f4e41db7395af1194989
Author: Simon Marlow <marlowsd at gmail.com>
Date:   Mon Sep 21 09:14:33 2015 +0100

    Annotate CmmBranch with an optional likely target
    
    Summary:
    This allows the code generator to give hints to later code generation
    steps about which branch is most likely to be taken.  Right now it
    is only taken into account in one place: a special case in
    CmmContFlowOpt that swapped branches over to maximise the chance of
    fallthrough, which is now disabled when there is a likelihood setting.
    
    Test Plan: validate
    
    Reviewers: austin, simonpj, bgamari, ezyang, tibbe
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D1273


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

939a7d6367501d43be73f4e41db7395af1194989
 compiler/cmm/CmmCommonBlockElim.hs      |  6 +++---
 compiler/cmm/CmmContFlowOpt.hs          | 29 ++++++++++++++++++-----------
 compiler/cmm/CmmImplementSwitchPlans.hs |  4 ++--
 compiler/cmm/CmmLayoutStack.hs          |  2 +-
 compiler/cmm/CmmLint.hs                 |  2 +-
 compiler/cmm/CmmNode.hs                 | 20 +++++++++++---------
 compiler/cmm/CmmParse.y                 |  2 +-
 compiler/cmm/CmmProcPoint.hs            |  4 ++--
 compiler/cmm/MkGraph.hs                 |  7 ++++---
 compiler/cmm/PprC.hs                    |  4 ++--
 compiler/cmm/PprCmm.hs                  |  5 ++++-
 compiler/codeGen/StgCmmExpr.hs          |  3 ++-
 compiler/codeGen/StgCmmLayout.hs        |  5 +++--
 compiler/codeGen/StgCmmMonad.hs         |  6 +++---
 compiler/codeGen/StgCmmUtils.hs         |  2 +-
 compiler/llvmGen/LlvmCodeGen/CodeGen.hs |  2 +-
 compiler/nativeGen/AsmCodeGen.hs        |  4 ++--
 compiler/nativeGen/PPC/CodeGen.hs       |  7 ++++---
 compiler/nativeGen/SPARC/CodeGen.hs     |  7 ++++---
 compiler/nativeGen/X86/CodeGen.hs       |  7 ++++---
 20 files changed, 73 insertions(+), 55 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 939a7d6367501d43be73f4e41db7395af1194989


More information about the ghc-commits mailing list