
Ouch, what a waste of time on my side :-(
This bugfix is not mentioned in the "notable bug fixes"
herehttp://haskell.org/ghc/docs/6.10.2/html/users_guide/release-6-10-2.html
Since this is such a severe bug, I would recommend listing it :)
Anyway, I have a very small repro test case now. Will certainly test this
with GHC 6.10.2.
On Fri, Apr 3, 2009 at 10:35 PM, Ian Lynagh
On Fri, Apr 03, 2009 at 10:10:17PM +0200, Peter Verswyvelen wrote:
I tried both precise and fast, but that did not help. Compiling to SSE2 fixed it, since that does not use a floating point stack I guess.
You didn't say what version of GHC you are using, but it sounds like this might already be fixed in 6.10.2 by:
Tue Nov 11 12:56:19 GMT 2008 Simon Marlow
* Fix to i386_insert_ffrees (#2724, #1944) The i386 native code generator has to arrange that the FPU stack is clear on exit from any function that uses the FPU. Unfortunately it was getting this wrong (and has been ever since this code was written, I think): it was looking for basic blocks that used the FPU and adding the code to clear the FPU stack on any non-local exit from the block. In fact it should be doing this on a whole-function basis, rather than individual basic blocks. Thanks Ian