Document UniqFM and add listToUFM_C
[ghc-hetmet.git] / compiler / utils / Binary.hs
index 076ae16..80d10cb 100644 (file)
@@ -1,4 +1,8 @@
 {-# OPTIONS -cpp #-}
+{-# OPTIONS_GHC -O -funbox-strict-fields #-}
+-- We always optimise this, otherwise performance of a non-optimised
+-- compiler is severely affected
+
 --
 -- (c) The University of Glasgow 2002-2006
 --
@@ -62,7 +66,6 @@ import FastString
 import Panic
 import UniqFM
 import FastMutInt
-import Util
 import Fingerprint
 
 import Foreign
@@ -80,17 +83,7 @@ import GHC.Real                 ( Ratio(..) )
 import GHC.Exts
 import GHC.IOBase               ( IO(..) )
 import GHC.Word                 ( Word8(..) )
-#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 601
--- openFileEx is available from the lang package, but we want to
--- be independent of hslibs libraries.
-import GHC.Handle               ( openFileEx, IOModeEx(..) )
-#else
 import System.IO                ( openBinaryFile )
-#endif
-
-#if defined(__GLASGOW_HASKELL__) && __GLASGOW_HASKELL__ < 601
-openBinaryFile f mode = openFileEx f (BinaryMode mode)
-#endif
 
 type BinArray = ForeignPtr Word8
 
@@ -257,7 +250,7 @@ expandBin (BinMem _ _ sz_r arr_r) off = do
        copyBytes new old sz 
    writeFastMutInt sz_r sz'
    writeIORef arr_r arr'
-   when debugIsOn $
+   when False $ -- disabled
       hPutStrLn stderr ("Binary: expanding to size: " ++ show sz')
    return ()
 expandBin (BinIO _ _ _) _ = return ()