Okay, I can confirm the bug is fixed. It's insane this bug did not cause any more problems. Every call into every C function that uses floating point could have been affected (OpenGL, BLAS, etc)
On Fri, Apr 3, 2009 at 10:47 PM, Peter Verswyvelen <bugf...@gmail.com>wrote: > Ouch, what a waste of time on my side :-( > This bugfix is not mentioned in the "notable bug fixes" > here<http://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 <ig...@earth.li> wrote: > >> 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 <marlo...@gmail.com> >> * 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 >> >> >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe