[commit: ghc] ghc-8.2: Report heap overflow in the same way as stack overflow (3a20ebe)

git at git.haskell.org git at git.haskell.org
Mon Apr 3 02:38:16 UTC 2017


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

On branch  : ghc-8.2
Link       : http://ghc.haskell.org/trac/ghc/changeset/3a20ebe05acf2ca30a620ca0bedbbe62b13c1843/ghc

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

commit 3a20ebe05acf2ca30a620ca0bedbbe62b13c1843
Author: Simon Marlow <marlowsd at gmail.com>
Date:   Sat Apr 1 19:52:40 2017 -0400

    Report heap overflow in the same way as stack overflow
    
    Now that we throw an exception for heap overflow, we should only print
    the heap overflow message in the main thread when the HeapOverflow
    exception is caught, rather than as a side effect in the GC.
    
    Stack overflows were already done this way, I just made heap overflow
    consistent with stack overflow, and did some related cleanup.
    
    Fixes broken T2592(profasm) which was reporting the heap overflow
    message twice (you would only notice when building with profiling
    libs enabled).
    
    Test Plan: validate
    
    Reviewers: bgamari, niteria, austin, DemiMarie, hvr, erikd
    
    Reviewed By: bgamari
    
    Subscribers: rwbarton, thomie
    
    Differential Revision: https://phabricator.haskell.org/D3394
    
    (cherry picked from commit 61ba4518a48727f8cd7b821bd41631da82d37425)


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

3a20ebe05acf2ca30a620ca0bedbbe62b13c1843
 includes/Rts.h                         |  3 ++-
 libraries/base/GHC/Conc.hs             |  2 +-
 libraries/base/GHC/Conc/Sync.hs        | 11 +++++++----
 libraries/base/GHC/TopHandler.hs       |  5 +++--
 rts/RtsSymbols.c                       |  3 ++-
 rts/RtsUtils.c                         | 20 ++++++--------------
 rts/RtsUtils.h                         |  2 --
 rts/sm/CNF.c                           |  4 ++--
 rts/sm/GC.c                            | 11 +++++++++++
 rts/sm/Storage.c                       |  2 +-
 testsuite/tests/rts/T1791/T1791.stderr |  3 ---
 11 files changed, 35 insertions(+), 31 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 3a20ebe05acf2ca30a620ca0bedbbe62b13c1843


More information about the ghc-commits mailing list