[GHC] #9304: Floating point woes; Different behavior on Mac vs Linux
GHC
ghc-devs at haskell.org
Sun Jul 13 22:25:17 UTC 2014
#9304: Floating point woes; Different behavior on Mac vs Linux
-------------------------------------+------------------------------------
Reporter: lerkok | Owner:
Type: bug | Status: new
Priority: high | Milestone:
Component: Compiler | Version: 7.8.3
Resolution: | Keywords: floating point
Operating System: Unknown/Multiple | Architecture: Unknown/Multiple
Type of failure: None/Unknown | Difficulty: Unknown
Test Case: | Blocked By: 9276
Blocking: | Related Tickets:
-------------------------------------+------------------------------------
Comment (by lerkok):
Sure.. Here you go:
{{{
[ubuntu-VirtualBox]~/precision/magichash>cat main.hs
{-# LANGUAGE MagicHash #-}
module Main where
import GHC.Types
import GHC.Prim
main = do
x <- return ((-4.4)::Double)
y <- return ((2.4999999999999956):: Double)
putStrLn $ show $ decodeFloat (myTimes x y)
{-# NOINLINE myTimes #-}
myTimes (D# a) (D# b) = D# res
where
res = a *## b
[ubuntu-VirtualBox]~/precision/magichash>rm main.hi; rm main.o; ghc
main.hs -o main; ./main
[1 of 1] Compiling Main ( main.hs, main.o )
Linking main ...
(-6192449487634422,-49)
[ubuntu-VirtualBox]~/precision/magichash>rm main.hi; rm main.o; ghc
main.hs -msse2 -o main; ./main
[1 of 1] Compiling Main ( main.hs, main.o )
Linking main ...
(-6192449487634421,-49)
[ubuntu-VirtualBox]~/precision/magichash>rm main.hi; rm main.o; ghc
main.hs -fexcess-precision -o main; ./main
[1 of 1] Compiling Main ( main.hs, main.o )
Linking main ...
(-6192449487634422,-49)
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9304#comment:21>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list