tweak the totally-bogus arbitrary stack-squeezing heuristic to fix #2797
authorSimon Marlow <marlowsd@gmail.com>
Thu, 28 Jan 2010 12:44:54 +0000 (12:44 +0000)
committerSimon Marlow <marlowsd@gmail.com>
Thu, 28 Jan 2010 12:44:54 +0000 (12:44 +0000)
commit990171bf9ee314fff0a72f8f875f0a62f6e494b7
treea5c694811b40c428cf6017c12511472cd92fa625
parenta8a47739b957a51da50677cb9bce4364963ada39
tweak the totally-bogus arbitrary stack-squeezing heuristic to fix #2797
In #2797, a program that ran in constant stack space when compiled
needed linear stack space when interpreted.  It turned out to be
nothing more than stack-squeezing not happening.  We have a heuristic
to avoid stack-squeezing when it would be too expensive (shuffling a
large amount of memory to save a few words), but in some cases even
expensive stack-squeezing is necessary to avoid linear stack usage.
One day we should implement stack chunks, which would make this less
expensive.
rts/ThreadPaused.c