
#9276: audit ghc floating point support for IEEE (non)compliance -------------------------------------+------------------------------------ Reporter: carter | Owner: carter Type: task | Status: new Priority: high | Milestone: 7.10.1 Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Unknown/Multiple Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: 9304 | Related Tickets: -------------------------------------+------------------------------------ Comment (by carter): Yeah, improving optimization requires a pretty precise soft float model of the target hardware's floating point semantics, with roughly three modes 1. IEEE / machine model -- same result as if run as a normal program 2. fast math model -- assume associativity, assume NaNs never happen 3. excess precision -- use extra precision in the intermediate computation to provide as many bits of precision as possible adding that sort of machinery to ghc is a bit out of scope for just an audit (and any induced patched to provide added missing operations), but becomes possible once such an audit is done. (Also a LOT of work) I want to get this done for 7.10, adding optimization on top can be on the table later though! :) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/9276#comment:6 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler