diff options
Diffstat (limited to 'libraries/base/GHC/Base.hs')
-rw-r--r-- | libraries/base/GHC/Base.hs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libraries/base/GHC/Base.hs b/libraries/base/GHC/Base.hs index 77662bad91..89c421713c 100644 --- a/libraries/base/GHC/Base.hs +++ b/libraries/base/GHC/Base.hs @@ -1278,6 +1278,17 @@ minInt = I# (-0x8000000000000000#) maxInt = I# 0x7FFFFFFFFFFFFFFF# #endif +maxWord :: Word +-- use unboxed literals for maxBound, because GHC doesn't optimise +-- (fromInteger 0xffffffff :: Word). +#if WORD_SIZE_IN_BITS == 32 +maxWord = W# (int2Word# 0xFFFFFFFF#) +#elif WORD_SIZE_IN_BITS == 64 +maxWord = W# (int2Word# 0xFFFFFFFFFFFFFFFF#) +#else +#error Unhandled value for WORD_SIZE_IN_BITS +#endif + ---------------------------------------------- -- The function type ---------------------------------------------- |