[GHC] #8072: Optimizations change result of div for Word
GHC
ghc-devs at haskell.org
Thu Jul 18 15:12:51 CEST 2013
#8072: Optimizations change result of div for Word
-----------------------------+-------------------------------------
Reporter: Khudyakov | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.6.3
Keywords: | Operating System: Unknown/Multiple
Architecture: x86 | Type of failure: None/Unknown
Difficulty: Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: |
-----------------------------+-------------------------------------
Here is test case
{{{
import Data.Word
main :: IO ()
main = do
print $ (maxBound :: Word) `div` 101
}}}
And result of execution
{{{
$ ghc -fforce-recomp -O2 --make reduce.hs && ./reduce
[1 of 1] Compiling Main ( reduce.hs, reduce.o )
Linking reduce ...
2891661149
@{debian:0}~/qqq/mwc $ ghc -fforce-recomp --make reduce.hs && ./reduce
[1 of 1] Compiling Main ( reduce.hs, reduce.o )
Linking reduce ...
42524428
}}}
Bug is only present on 32-bit systems. It goes away if rewrite rules are
disable with -fno-enable-rewrite-rules or anything but maxBound is used
as first argument or second argument is forced to be a funcion argument.
So it could be bug in constant folding.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8072>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list