Does GHC still support x87 floating point math?

Simon Marlow marlowsd at
Thu Dec 6 22:28:44 CET 2012

On 06/12/12 11:01, Herbert Valerio Riedel wrote:
> Ben Lippmeier <benl at> writes:
>> On 06/12/2012, at 12:12 , Johan Tibell wrote:
>>> I'm currently trying to implement word2Double#. Other such primops
>>> support both x87 and sse floating point math. Do we still support x87
>>> fp math? Which compiler flag enables it?
>> It's on by default unless you use the -sse2 flag. The x87 support is
>> horribly slow though. I don't think anyone would notice if you deleted
>> the x87 code and made SSE the default, especially now that we have the
>> LLVM code generator. SSE has been the way to go for over 10 years now.
> btw, iirc GHC uses SSE2 for x86-64 code generation by default, and that
> the -msse2 option has only an effect when generating x86(-32) code

Yes, because all x86_64 CPUs support SSE2.  Chips older than P4 don't 
support it.  I imagine there aren't too many of those around that people 
want to run GHC on, and as Ben says, there's always -fllvm.


More information about the Glasgow-haskell-users mailing list