[commit: ghc] master: Fix #15038 (b2ff5dd)

git at git.haskell.org git at git.haskell.org
Thu May 10 08:54:03 UTC 2018


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

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

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

commit b2ff5dde399cd012218578945ada1d9ff68daa35
Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
Date:   Thu May 10 11:13:37 2018 +0300

    Fix #15038
    
    We introduce a new Id for unused pointer values in unboxed sums that is
    not CAFFY. Because the Id is not CAFFY it doesn't make non-CAFFY
    definitions CAFFY, fixing #15038.
    
    To make sure anything referenced by the new id will be retained we get a
    stable pointer to in on RTS startup.
    
    Test Plan: Passes validate
    
    Reviewers: simonmar, simonpj, hvr, bgamari, erikd
    
    Reviewed By: simonmar
    
    Subscribers: rwbarton, thomie, carter
    
    GHC Trac Issues: #15038
    
    Differential Revision: https://phabricator.haskell.org/D4680


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

b2ff5dde399cd012218578945ada1d9ff68daa35
 compiler/coreSyn/MkCore.hs                         |  36 ++++-
 compiler/prelude/PrelNames.hs                      |   7 +-
 compiler/simplStg/UnariseStg.hs                    |   5 +-
 libraries/base/Control/Exception/Base.hs           |   6 +-
 rts/Prelude.h                                      |   2 +
 rts/RtsStartup.c                                   |   7 +
 testsuite/tests/codeGen/should_run/T15038/Makefile |   9 ++
 testsuite/tests/codeGen/should_run/T15038/all.T    |   4 +
 .../should_run/T15038/common/Data/Trie/Naive.hs    |  80 ++++++++++
 .../codeGen/should_run/T15038/src/Packed/Bytes.hs  |  80 ++++++++++
 .../should_run/T15038/src/Packed/Bytes/Parser.hs   | 165 +++++++++++++++++++++
 .../T15038/src/Packed/Bytes/Stream/ST.hs           |  61 ++++++++
 .../tests/codeGen/should_run/T15038/test/Main.hs   |   4 +
 .../tests/codeGen/should_run/T15038/test/Parser.hs |  61 ++++++++
 14 files changed, 518 insertions(+), 9 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 b2ff5dde399cd012218578945ada1d9ff68daa35


More information about the ghc-commits mailing list