[commit: ghc] wip/parse-errors, wip/unexpected-test: Don't wrap the entry map for LiveInfo in Maybe. (bcaba30)

git at git.haskell.org git at git.haskell.org
Sat Feb 16 10:33:22 UTC 2019


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

On branches: wip/parse-errors,wip/unexpected-test
Link       : http://ghc.haskell.org/trac/ghc/changeset/bcaba30a9602d7c5899c9754096a4460191dc667/ghc

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

commit bcaba30a9602d7c5899c9754096a4460191dc667
Author: klebinger.andreas at gmx.at <klebinger.andreas at gmx.at>
Date:   Thu Feb 14 19:23:19 2019 +0100

    Don't wrap the entry map for LiveInfo in Maybe.
    
    It never really encoded a invariant.
    
    * The linear register allocator just did partial pattern matches
    * The graph allocator just set it to (Just mapEmpty) for Nothing
    
    So I changed LiveInfo to directly contain the map.
    
    Further natCmmTopToLive which filled in Nothing is no longer exported.
    Instead we know call cmmTopLiveness which changes the type AND fills
    in the map.


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

bcaba30a9602d7c5899c9754096a4460191dc667
 compiler/nativeGen/AsmCodeGen.hs               |  4 +---
 compiler/nativeGen/RegAlloc/Graph/Main.hs      |  5 ++--
 compiler/nativeGen/RegAlloc/Graph/Spill.hs     |  8 ++-----
 compiler/nativeGen/RegAlloc/Graph/SpillCost.hs |  2 +-
 compiler/nativeGen/RegAlloc/Linear/Main.hs     |  2 +-
 compiler/nativeGen/RegAlloc/Liveness.hs        | 32 +++++++++++++++-----------
 6 files changed, 27 insertions(+), 26 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 bcaba30a9602d7c5899c9754096a4460191dc667


More information about the ghc-commits mailing list