[commit: ghc] master: Default to infinite stack size (#8189) (d85044f)
git at git.haskell.org
git at git.haskell.org
Sun Sep 8 10:56:44 CEST 2013
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/d85044f6b201eae0a9e453b89c0433608e0778f0/ghc
>---------------------------------------------------------------
commit d85044f6b201eae0a9e453b89c0433608e0778f0
Author: Austin Seipp <aseipp at pobox.com>
Date: Sun Sep 8 02:08:45 2013 -0500
Default to infinite stack size (#8189)
When servicing a stack overflows, only throw an exception to the given
thread if the user explicitly set a max stack size, using +RTS -K.
Otherwise just service it normally and grow the stack.
In case we actually run out of *heap* (stack chuncks are allocated on
the heap), then we need to bail by calling the stackOverflow() hook and
exit immediately.
Authored-by: Ben Gamari <bgamari.foss at gmail.com>
Signed-off-by: Austin Seipp <aseipp at pobox.com>
>---------------------------------------------------------------
d85044f6b201eae0a9e453b89c0433608e0778f0
docs/users_guide/runtime_control.xml | 11 +++++---
includes/Rts.h | 3 ++-
includes/rts/Constants.h | 2 +-
includes/rts/storage/GC.h | 13 ++++++---
rts/RtsFlags.c | 4 +--
rts/RtsUtils.c | 6 ++---
rts/Schedule.c | 2 +-
rts/Threads.c | 10 +++++--
rts/sm/Storage.c | 49 +++++++++++++++++++++++++---------
9 files changed, 70 insertions(+), 30 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 d85044f6b201eae0a9e453b89c0433608e0778f0
More information about the ghc-commits
mailing list