Add NOINLINE pragma to hPutStr'
authorMatthew Pickering <matthewtpickering@gmail.com>
Mon, 11 Dec 2017 17:54:18 +0000 (12:54 -0500)
committerBen Gamari <ben@smart-cactus.org>
Mon, 11 Dec 2017 17:54:38 +0000 (12:54 -0500)
There appears to be no benefit in inlining this function.
If you turn up the unfolding threshold a lot then it eventually
inlines which produces a bit unoptimisable program.

Reviewers: hvr, bgamari

Reviewed By: bgamari

Subscribers: rwbarton, thomie, carter

Differential Revision: https://phabricator.haskell.org/D4246

libraries/base/GHC/IO/Handle/Text.hs

index 57b9534..f15c627 100644 (file)
@@ -537,6 +537,7 @@ hPutStrLn handle str = hPutStr' handle str True
   -- overhead of a single putChar '\n', which is quite high now that we
   -- have to encode eagerly.
 
+{-# NOINLINE hPutStr' #-}
 hPutStr' :: Handle -> String -> Bool -> IO ()
 hPutStr' handle str add_nl =
   do